asm/user.h gone AWOL?

Jan Kratochvil jan.kratochvil at redhat.com
Tue Apr 22 11:29:11 UTC 2008


On Tue, 22 Apr 2008 12:06:57 +0200, David Woodhouse wrote:
> On Mon, 2008-04-21 at 14:47 +0100, Paul F. Johnson wrote:
> > Hi,
> > 
> > I'm trying to rebuild mono-debugger but it's failing due
> > to /usr/include/asm/user.h being missing. I have both the kernel-headers
> > and glibc-devel packages installed (looking around, it appears the file
> > belongs in one of these two packages), but nothing.
> > 
> > Any ideas where it lives now?
> 
> It doesn't:
> http://git.kernel.org/?p=linux/kernel/git/dwmw2/kernel-headers.git;a=commitdiff;h=a9128be8657fa436a2e4379b63853964bb56daf3
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=c1445db9f72db0537c43a2eab6e1b0f6741162f5
> 
> What do you need it for? Are you trying to interpret A.OUT core dumps?
> 
> Having said that, I'm not sure we _should_ have removed it from the
> upstream kernel. Although Fedora no longer builds a.out support,
> upstream still supports a.out -- and so should probably continue to
> provide <asm/user.h> -- doesn't this define the Linux-specific header on
> our a.out core dumps?
> 
> Jan, how does gdb cope with a.out core dumps? (or doesn't it?)

It handles it transparently through libbfd although sure I did not try it
recently.  I still do not understand how is a.out related to <asm/user.h>,
`struct user' was from its offset 0, wasn't it?

<sys/user.h> contains the same info as <asm/user.h> before - the registers
layout presented by kernel to the userland.  You need to rename some segment
registers `cs'->`xcs' and some underscore differenteces are there.

It is used for ptrace(2) and the core dumps.  ELF cores contain note
NT_PRSTATUS (show by eu-readelf -n COREFILE) where `struct elf_prstatus.pr_reg'
contains `struct user_regs_struct' defined in that <sys/user.h> (<asm/user.h).


Regards,
Jan




More information about the fedora-devel-list mailing list