diff --git a/patches.suse/kbuild-Add-skip_encoding_btf_enum64-option-to-pahole.patch b/patches.suse/kbuild-Add-skip_encoding_btf_enum64-option-to-pahole.patch index c17b469..482c452 100644 --- a/patches.suse/kbuild-Add-skip_encoding_btf_enum64-option-to-pahole.patch +++ b/patches.suse/kbuild-Add-skip_encoding_btf_enum64-option-to-pahole.patch @@ -29,23 +29,19 @@ Signed-off-by: Martin Rodriguez Reboredo Signed-off-by: Jiri Olsa Signed-off-by: Greg Kroah-Hartman Signed-off-by: Michal Suchanek +Signed-off-by: Shung-Hsi Yu --- - scripts/link-vmlinux.sh | 3 +++ + scripts/pahole-flags.sh | 3 +++ 1 file changed, 3 insertions(+) -diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh ---- a/scripts/link-vmlinux.sh -+++ b/scripts/link-vmlinux.sh -@@ -125,6 +125,9 @@ gen_btf() - if [ "${pahole_ver}" -ge "121" ]; then - extra_paholeopt="${extra_paholeopt} --btf_gen_floats" - fi -+ if [ "${pahole_ver}" -ge "124" ]; then -+ extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_enum64" -+ fi +--- a/scripts/pahole-flags.sh ++++ b/scripts/pahole-flags.sh +@@ -16,5 +16,8 @@ fi + if [ "${pahole_ver}" -ge "121" ]; then + extra_paholeopt="${extra_paholeopt} --btf_gen_floats" + fi ++if [ "${pahole_ver}" -ge "124" ]; then ++ extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_enum64" ++fi - info "BTF" ${2} - LLVM_OBJCOPY="${OBJCOPY}" ${PAHOLE} -J ${extra_paholeopt} ${1} --- -2.35.3 - + echo ${extra_paholeopt} diff --git a/patches.suse/kbuild-Unify-options-for-BTF-generation-for-vmlinux-.patch b/patches.suse/kbuild-Unify-options-for-BTF-generation-for-vmlinux-.patch new file mode 100644 index 0000000..c641da8 --- /dev/null +++ b/patches.suse/kbuild-Unify-options-for-BTF-generation-for-vmlinux-.patch @@ -0,0 +1,118 @@ +From: Jiri Olsa +Date: Fri, 29 Oct 2021 14:57:29 +0200 +Subject: kbuild: Unify options for BTF generation for vmlinux and modules +Patch-mainline: v5.16-rc1 +Git-commit: 9741e07ece7c247dd65e1aa01e16b683f01c05a8 +References: bsc#1204693 + +Using new PAHOLE_FLAGS variable to pass extra arguments to +pahole for both vmlinux and modules BTF data generation. + +Adding new scripts/pahole-flags.sh script that detect and +prints pahole options. + +[ fixed issues found by kernel test robot ] + +Signed-off-by: Jiri Olsa +Signed-off-by: Andrii Nakryiko +Acked-by: Andrii Nakryiko +Link: https://lore.kernel.org/bpf/20211029125729.70002-1-jolsa@kernel.org +Acked-by: Shung-Hsi Yu +--- + Makefile | 3 +++ + scripts/Makefile.modfinal | 2 +- + scripts/link-vmlinux.sh | 11 +---------- + scripts/pahole-flags.sh | 20 ++++++++++++++++++++ + 4 files changed, 25 insertions(+), 11 deletions(-) + create mode 100755 scripts/pahole-flags.sh + +diff --git a/Makefile b/Makefile +index 437ccc66a1c2..8f24bceec62d 100644 +--- a/Makefile ++++ b/Makefile +@@ -481,6 +481,8 @@ LZ4 = lz4c + XZ = xz + ZSTD = zstd + ++PAHOLE_FLAGS = $(shell PAHOLE=$(PAHOLE) $(srctree)/scripts/pahole-flags.sh) ++ + CHECKFLAGS := -D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ \ + -Wbitwise -Wno-return-void -Wno-unknown-attribute $(CF) + NOSTDINC_FLAGS := +@@ -535,6 +537,7 @@ export KBUILD_CFLAGS CFLAGS_KERNEL CFLAG + export KBUILD_AFLAGS AFLAGS_KERNEL AFLAGS_MODULE + export KBUILD_AFLAGS_MODULE KBUILD_CFLAGS_MODULE KBUILD_LDFLAGS_MODULE + export KBUILD_AFLAGS_KERNEL KBUILD_CFLAGS_KERNEL ++export PAHOLE_FLAGS + + # Files to ignore in find ... statements + +diff --git a/scripts/Makefile.modfinal b/scripts/Makefile.modfinal +index 1fb45b011e4b..7f39599e9fae 100644 +--- a/scripts/Makefile.modfinal ++++ b/scripts/Makefile.modfinal +@@ -57,7 +57,7 @@ quiet_cmd_ld_ko_o = LD [M] $@ + quiet_cmd_btf_ko = BTF [M] $@ + cmd_btf_ko = \ + if [ -f vmlinux ]; then \ +- LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J --btf_base vmlinux $@; \ ++ LLVM_OBJCOPY="$(OBJCOPY)" $(PAHOLE) -J $(PAHOLE_FLAGS) --btf_base vmlinux $@; \ + else \ + printf "Skipping BTF generation for %s due to unavailability of vmlinux\n" $@ 1>&2; \ + fi; +diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh +index d74cee5c4326..3ea7cece7c97 100755 +--- a/scripts/link-vmlinux.sh ++++ b/scripts/link-vmlinux.sh +@@ -218,7 +218,6 @@ vmlinux_link() + gen_btf() + { + local pahole_ver +- local extra_paholeopt= + + if ! [ -x "$(command -v ${PAHOLE})" ]; then + echo >&2 "BTF: ${1}: pahole (${PAHOLE}) is not available" +@@ -233,16 +232,8 @@ gen_btf() + + vmlinux_link ${1} + +- if [ "${pahole_ver}" -ge "118" ] && [ "${pahole_ver}" -le "121" ]; then +- # pahole 1.18 through 1.21 can't handle zero-sized per-CPU vars +- extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_vars" +- fi +- if [ "${pahole_ver}" -ge "121" ]; then +- extra_paholeopt="${extra_paholeopt} --btf_gen_floats" +- fi +- + info "BTF" ${2} +- LLVM_OBJCOPY="${OBJCOPY}" ${PAHOLE} -J ${extra_paholeopt} ${1} ++ LLVM_OBJCOPY="${OBJCOPY}" ${PAHOLE} -J ${PAHOLE_FLAGS} ${1} + + # Create ${2} which contains just .BTF section but no symbols. Add + # SHF_ALLOC because .BTF will be part of the vmlinux image. --strip-all +diff --git a/scripts/pahole-flags.sh b/scripts/pahole-flags.sh +new file mode 100755 +index 000000000000..2b99fc77019c +--- /dev/null ++++ b/scripts/pahole-flags.sh +@@ -0,0 +1,20 @@ ++#!/bin/sh ++# SPDX-License-Identifier: GPL-2.0 ++ ++extra_paholeopt= ++ ++if ! [ -x "$(command -v ${PAHOLE})" ]; then ++ return ++fi ++ ++pahole_ver=$(${PAHOLE} --version | sed -E 's/v([0-9]+)\.([0-9]+)/\1\2/') ++ ++if [ "${pahole_ver}" -ge "118" ] && [ "${pahole_ver}" -le "121" ]; then ++ # pahole 1.18 through 1.21 can't handle zero-sized per-CPU vars ++ extra_paholeopt="${extra_paholeopt} --skip_encoding_btf_vars" ++fi ++if [ "${pahole_ver}" -ge "121" ]; then ++ extra_paholeopt="${extra_paholeopt} --btf_gen_floats" ++fi ++ ++echo ${extra_paholeopt} diff --git a/series.conf b/series.conf index d2de3df..35e07d1 100644 --- a/series.conf +++ b/series.conf @@ -5818,6 +5818,7 @@ patches.suse/selftests-bpf-Fix-also-no-alu32-strobemeta-selftest.patch patches.suse/bpf-Fix-propagation-of-bounds-from-64-bit-min-max-in.patch patches.suse/bpf-Fix-propagation-of-signed-bounds-from-64-bit-min.patch + patches.suse/kbuild-Unify-options-for-BTF-generation-for-vmlinux-.patch patches.suse/sctp-allow-IP-fragmentation-when-PLPMTUD-enters-Erro.patch patches.suse/sctp-reset-probe_timer-in-sctp_transport_pl_update.patch patches.suse/sctp-subtract-sctphdr-len-in-sctp_transport_pl_hlen.patch