Hi all...
Continuing with the glibc-2.3.1 saga, I have tested 2.4.21-pre2. It also
fails. glibc can not get a correct AT_PLATFORM when the kernel is run
on an hyperthreaded smp box.
I have run this on the box (dual [email protected]). Highmem does not matter. Just
HT matters. If I sun the SMP kernel with HT active, it glibc fails to detect
AT_PLATFORM. If I disable HT, from the bios or with 'noht' boot option, the
platform is correctly detected. Something does not follow the rules in
binfmt_elf.c when there are siblings (not real CPUs) in the game. Or there
is gcc-3.2.1 to blame.
Test script:
#!/bin/bash
#log=$(uname -r).txt
log=log.txt
exec > $log 2>&1
echo ===== uname -a
uname -a
echo
echo ===== uname -m
uname -m
echo
echo ===== ./ld.so
./ld.so
echo
echo ===== LD_LIBRARY_PATH="" LD_DEBUG=libs /bin/true
rm -f /etc/ld.so.cache
LD_LIBRARY_PATH="" LD_DEBUG=libs /bin/true
echo
ldconfig
ld.so is a modified one to print AT_PLATFORM, by Gwenole@mandrakesoft. The
loader used for the /bin/true test is the standard one.
Results for 2.4.21-pre2 are attached. All are smp kernels, 'ht' means ht active,
'noht-bios' is ht diabled in the bios and 'noht-soft' is ht disabled with 'noht'.
Any ideas ?
--
J.A. Magallon <[email protected]> \ Software is like sex:
werewolf.able.es \ It's better when it's free
Mandrake Linux release 9.1 (Cooker) for i586
Linux 2.4.21-pre2-jam1 (gcc 3.2.1 (Mandrake Linux 9.1 3.2.1-2mdk))
On 2002.12.26 J.A. Magall?n wrote:
> Hi all...
>
> Continuing with the glibc-2.3.1 saga, I have tested 2.4.21-pre2. It also
> fails. glibc can not get a correct AT_PLATFORM when the kernel is run
> on an hyperthreaded smp box.
>
[...]
>
> ld.so is a modified one to print AT_PLATFORM, by Gwenole@mandrakesoft. The
> loader used for the /bin/true test is the standard one.
>
Sorry, forgot to say that you can get similar results with:
werewolf:~> LD_SHOW_AUXV=1 /bin/true
AT_HWCAP: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr
AT_PAGESZ: 4096
AT_CLKTCK: 100
AT_PHDR: 0x8048034
AT_PHENT: 32
AT_PHNUM: 6
AT_BASE: 0x15556000
AT_FLAGS: 0x0
AT_ENTRY: 0x8048920
AT_UID: 3001
AT_EUID: 3001
AT_GID: 3000
AT_EGID: 3000
AT_PLATFORM: i686
--
J.A. Magallon <[email protected]> \ Software is like sex:
werewolf.able.es \ It's better when it's free
Mandrake Linux release 9.1 (Cooker) for i586
Linux 2.4.21-pre2-jam1 (gcc 3.2.1 (Mandrake Linux 9.1 3.2.1-2mdk))