From: Alejandro Colomar Date: Tue, 29 Aug 2023 18:51:22 +0000 (+0200) Subject: elf, uapi: Remove struct tag 'dynamic' X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ff7a65492c4c88010491ca0995a7e072d2c01879;p=linux.git elf, uapi: Remove struct tag 'dynamic' Such a generic struct tag shouldn't have been exposed in a public header. Since it's undocumented, we can assume it's a historical accident. And since no software (at least on Debian) relies on this tag, we can safely remove it. Here are the results of a Debian Code Search[1]: $ # packages that contain 'include [<"]linux/elf\.h[">]' $ curl -s https://codesearch.debian.net/results/e5e7c74dfcdae609/packages.txt > include $ # packages that contain '\bstruct dynamic\b' $ curl -s https://codesearch.debian.net/results/b23577e099048c6a/packages.txt > struct $ cat struct include | sort | uniq -d chromium hurd linux qemu qt6-webengine qtwebengine-opensource-src $ # chromium: Seems to hold a copy of the UAPI header. No uses of the tag. $ # hurd: Same thing as chromium. $ # linux: :) $ # qemu: Same thing as chromium. $ # qt6-webengine: Same thing as all. $ # qtwebengine-opensource-src: Yet another copy. Link: https://codesearch.debian.net/ [1] Link: https://lore.kernel.org/linux-mm/87wmxdokum.fsf@email.froward.int.ebiederm.org/T/ Cc: "Eric W. Biederman" Cc: Matthew Wilcox Cc: David Howells Cc: Rolf Eike Beer Cc: Arnd Bergmann Cc: Thomas Gleixner Cc: "Paul E. McKenney" Cc: Dave Jones Signed-off-by: Alejandro Colomar Signed-off-by: Kees Cook --- diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h index 9b731976ce2fd..9417309b7230e 100644 --- a/include/uapi/linux/elf.h +++ b/include/uapi/linux/elf.h @@ -140,7 +140,7 @@ typedef __s64 Elf64_Sxword; #define ELF64_ST_BIND(x) ELF_ST_BIND(x) #define ELF64_ST_TYPE(x) ELF_ST_TYPE(x) -typedef struct dynamic { +typedef struct { Elf32_Sword d_tag; union { Elf32_Sword d_val;