[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <nycvar.YSQ.7.77.849.2006301141110.1785@knanqh.ubzr>
Date: Tue, 30 Jun 2020 11:45:55 -0400 (EDT)
From: Nicolas Pitre <nico@...xnic.net>
To: Al Viro <viro@...iv.linux.org.uk>
cc: Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org,
"Eric W. Biederman" <ebiederm@...ssion.com>,
David Howells <dhowells@...hat.com>
Subject: Re: [RFC][PATCHES] converting FDPIC coredumps to regsets
On Tue, 30 Jun 2020, Al Viro wrote:
> The obvious solution is to introduce struct elf_prstatus_fdpic
> and use that in binfmt_elf_fdpic.c, taking these fields out of the
> normal struct elf_prstatus. Unfortunately, the damn thing is defined in
> include/uapi/linux/elfcore.h, so nominally it's a part of userland ABI.
> However, not a single userland program actually includes linux/elfcore.h.
> The reason is that the definition in there uses elf_gregset_t as a member,
> and _that_ is not defined anywhere in the exported headers. It is defined
> in (libc) sys/procfs.h, but the same file defines struct elf_prstatus
> as well. So if you try to include linux/elfcore.h without having already
> pulled sys/procfs.h, it'll break on incomplete type of a member. And if
> you have pulled sys/procfs.h, it'll break on redefining a structure.
> IOW, it's not usable and it never had been; as the matter of fact,
> that's the reason sys/procfs.h had been introduced back in 1996.
Huh! That's convenient alright.
Acked-by: Nicolas Pitre <nico@...xnic.net>
Nicolas
Powered by blists - more mailing lists