|
From: Tom H. <to...@co...> - 2005-11-02 19:09:11
|
In message <200...@ac...>
Julian Seward <js...@ac...> wrote:
> Tom, can you outline the background to this? Presumably you found a
> case where the interpreter-loading failed?
I posted about it last night - it was causing random failures on
my FC4 x86 boxes when the syscall page happened to be placed where
the interpreter wanted to go.
> What's happened is, this change causes the interpreter to get loaded at
> zero at least for SuSE10(x86) and whatever-Nick's-running(x86), because
> the interpreter specifies a load address of zero for its text segment:
>
> Program Headers:
> Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
> LOAD 0x000000 0x00000000 0x00000000 0x144f8 0x144f8 R E 0x1000
> LOAD 0x014cc0 0x00015cc0 0x00015cc0 0x0079c 0x00854 RW 0x1000
>
> and having any mapping at zero causes some of the regtests to fail
> (badjump2 for one) and doesn't seem a good idea in general.
Oh, just make it set MAny if interp_addr is zero. That's what the
routine it was calling before does. It's only when prelinking is on
that an address will be set.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|