bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: 64bit startup


From: Samuel Thibault
Subject: Re: 64bit startup
Date: Fri, 26 May 2023 13:37:11 +0200
User-agent: NeoMutt/20170609 (1.8.3)

Luca, le ven. 26 mai 2023 13:18:08 +0200, a ecrit:
> Il 26/05/23 12:56, Samuel Thibault ha scritto:
> > Luca, le ven. 26 mai 2023 12:55:32 +0200, a ecrit:
> > > read_exec() it seems that there is something wrong with the elf parsing, 
> > > as
> > > the size parameters look like kernel addresses:
> > > 
> > > (gdb) p/x file_size
> > > $1 = 0xffffffff8106f4d3
> > 
> > Perhaps a spurious signedness bit extension?
> 
> Could be, the elf header seems ok when calling read_exec:
> 
> (gdb) frame 1
> #1  0xffffffff8107a712 in exec_load (read=0xffffffff8106f45c <boot_read>,
> read_exec=0xffffffff8106f4e5 <read_exec>, handle=0xffffffffbd8faea0,
> out_info=0xffffffffbd8f0f70)
>     at ../kern/elf-load.c:87
> 87                            result = (*read_exec)(handle,
> (gdb) p/x *ph
> $9 = {
>   p_type = 0x1,
>   p_flags = 0x5,
>   p_offset = 0x0,
>   p_vaddr = 0x400000,
>   p_paddr = 0x400000,
>   p_filesz = 0x1cfd58,
>   p_memsz = 0x1cfd58,
>   p_align = 0x1000
> }
> 
> but I can't explain why I don't see the same issue with my build. I 've now
> configured gnumach just with
> 
> ../configure --enable-silent-rules MIG=/path_to_my/mig --disable-user32
> --enable-kdb
> 
> and I'm building on Debian/Linux stable.

Indeed, when I use that configuration, I don't get the issue.

Heh, when I tell my students never to hide anything because you never
know what might be relevant...

CFLAGS="" MIG=/usr/bin/x86_64-gnu-mig ../configure --disable-user32  
--enable-kdb

does get the issue, while

CFLAGS="-O2" MIG=/usr/bin/x86_64-gnu-mig ../configure --disable-user32  
--enable-kdb

or equivalently,

MIG=/usr/bin/x86_64-gnu-mig ../configure --disable-user32  --enable-kdb

doesn't...

Samuel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]