Re: [PATCH] [RFC] making uapi/linux/elfcore.h useful again
flat view
From: Ingo Molnar <mingo@kernel.org>
Date: 2018-09-14 17:45:35
Also in:
linux-arch, lkml
* Arnd Bergmann [off-list ref] wrote:
After finding a bug in glibc the question came up how linux/elfcore.h is supposed to be used from user space. As far as I can tell, it's not possible, as it references data types that are simply unavailable there. The #ifndef __KERNEL__ section in that header dates back to when the file was introduced in linux-1.3.5, and presumably was meant to provide the structures for the libc sys/procfs.h implementation. However, this was never portable to architectures other than x86-32, and has been broken on that architecture at a later point. These are the steps that I needed to make it possible to include the header file, e.g. for libc self-testing in order to make sure the structures are compatible with its own: - drop the #ifndef __KERNEL__ section that are obviously useless and get in the way - change the pid_t references to __kernel_pid_t - Move required data from the private x86 asm/elf.h file into a new uapi/asm/elf.h. Some other architectures already do that, but most of them do not. Before applying the patch, we have to do this for all architectures - Change ELF_NGREG to an integer literal constant instead of a sizeof operation based on a private type. Cc: Joseph Myers <redacted> Cc: David Howells <dhowells@redhat.com> Cc: libc-alpha@sourceware.org Link: https://patchwork.ozlabs.org/patch/969540/ Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- arch/x86/include/asm/elf.h | 24 +----------------------- arch/x86/include/uapi/asm/elf.h | 30 ++++++++++++++++++++++++++++++ arch/x86/include/uapi/asm/signal.h | 2 +- include/uapi/linux/elf.h | 1 + include/uapi/linux/elfcore.h | 26 +++++--------------------- 5 files changed, 38 insertions(+), 45 deletions(-) create mode 100644 arch/x86/include/uapi/asm/elf.h
Acked-by: Ingo Molnar <mingo@kernel.org> I suspect this wants to go through -mm, or do you want to carry it? Thanks, Ingo