diff options
-rw-r--r-- | 0000_README | 2 | ||||
-rw-r--r-- | 2990_libbpf-v2-workaround-Wmaybe-uninitialized-false-pos.patch (renamed from 2990_libbpf-workaround-Wmaybe-uninitialized-false-pos.patch) | 47 |
2 files changed, 40 insertions, 9 deletions
diff --git a/0000_README b/0000_README index b57442d8..98cffb80 100644 --- a/0000_README +++ b/0000_README @@ -283,7 +283,7 @@ Patch: 2950_jump-label-fix.patch From: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/ Desc: jump_label: Fix a regression -Patch: 2990_libbpf-workaround-Wmaybe-uninitialized-false-pos.patch +Patch: 2990_libbpf-v2-workaround-Wmaybe-uninitialized-false-pos.patch From: https://lore.kernel.org/bpf/3ebbe7a4e93a5ddc3a26e2e11d329801d7c8de6b.1723217044.git.sam@gentoo.org/ Desc: libbpf: workaround -Wmaybe-uninitialized false positive diff --git a/2990_libbpf-workaround-Wmaybe-uninitialized-false-pos.patch b/2990_libbpf-v2-workaround-Wmaybe-uninitialized-false-pos.patch index 86de18d7..af5e117f 100644 --- a/2990_libbpf-workaround-Wmaybe-uninitialized-false-pos.patch +++ b/2990_libbpf-v2-workaround-Wmaybe-uninitialized-false-pos.patch @@ -1,8 +1,8 @@ From git@z Thu Jan 1 00:00:00 1970 -Subject: [PATCH] libbpf: workaround -Wmaybe-uninitialized false positive +Subject: [PATCH v2] libbpf: workaround -Wmaybe-uninitialized false positive From: Sam James <sam@gentoo.org> -Date: Fri, 09 Aug 2024 16:24:04 +0100 -Message-Id: <3ebbe7a4e93a5ddc3a26e2e11d329801d7c8de6b.1723217044.git.sam@gentoo.org> +Date: Fri, 09 Aug 2024 18:26:41 +0100 +Message-Id: <8f5c3b173e4cb216322ae19ade2766940c6fbebb.1723224401.git.sam@gentoo.org> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit @@ -37,28 +37,59 @@ here (see linked GCC bug). Suppress -Wmaybe-uninitialized accordingly. Link: https://gcc.gnu.org/PR114952 Signed-off-by: Sam James <sam@gentoo.org> --- - tools/lib/bpf/elf.c | 4 ++++ - 1 file changed, 4 insertions(+) +v2: Fix Clang build. + +Range-diff against v1: +1: 3ebbe7a4e93a ! 1: 8f5c3b173e4c libbpf: workaround -Wmaybe-uninitialized false positive + @@ tools/lib/bpf/elf.c: long elf_find_func_offset(Elf *elf, const char *binary_path + return ret; + } + + ++#if !defined(__clang__) + +#pragma GCC diagnostic push + +/* https://gcc.gnu.org/PR114952 */ + +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" + ++#endif + /* Find offset of function name in ELF object specified by path. "name" matches + * symbol name or name@@LIB for library functions. + */ + @@ tools/lib/bpf/elf.c: long elf_find_func_offset_from_file(const char *binary_path + elf_close(&elf_fd); + return ret; + } + ++#if !defined(__clang__) + +#pragma GCC diagnostic pop + ++#endif + + struct symbol { + const char *name; + + tools/lib/bpf/elf.c | 8 ++++++++ + 1 file changed, 8 insertions(+) diff --git a/tools/lib/bpf/elf.c b/tools/lib/bpf/elf.c -index c92e02394159e..ee226bb8e1af0 100644 +index c92e02394159..7058425ca85b 100644 --- a/tools/lib/bpf/elf.c +++ b/tools/lib/bpf/elf.c -@@ -369,6 +369,9 @@ long elf_find_func_offset(Elf *elf, const char *binary_path, const char *name) +@@ -369,6 +369,11 @@ long elf_find_func_offset(Elf *elf, const char *binary_path, const char *name) return ret; } ++#if !defined(__clang__) +#pragma GCC diagnostic push +/* https://gcc.gnu.org/PR114952 */ +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" ++#endif /* Find offset of function name in ELF object specified by path. "name" matches * symbol name or name@@LIB for library functions. */ -@@ -384,6 +387,7 @@ long elf_find_func_offset_from_file(const char *binary_path, const char *name) +@@ -384,6 +389,9 @@ long elf_find_func_offset_from_file(const char *binary_path, const char *name) elf_close(&elf_fd); return ret; } ++#if !defined(__clang__) +#pragma GCC diagnostic pop ++#endif struct symbol { const char *name; |