[Pkg-xen-devel] Re: libc6-xen not used on AMD Geode LX system
Jérôme
jerome.bertorelle at free.fr
Tue Jan 9 22:40:00 CET 2007
Aurelien Jarno wrote:
> Jérôme a écrit :
>
>> Hi,
>>
>> I'm trying to install xen+Debian Etch on a Geode LX system. Xen
>> boots fine, but although the package "libc6-xen" is installed I have a
>> large number of such errors:
>> 4gb seg fixup, process syslogd (pid 1878), cs:ip 73:b7f24610
>>
>> All processes triggers it, and from what I've found on the web it's
>> a sign that libc6-xen is not recognized. Indeed:
>> minimo:~:2# ldd /bin/echo
>> linux-gate.so.1 => (0xffffe000)
>> libc.so.6 => /lib/tls/libc.so.6 (0xb7e48000)
>> /lib/ld-linux.so.2 (0xb7f82000)
>>
>> It's /lib/tls and not /lib/tls/i686/cmov.
>>
>> I have found on the web references to this issue for FC6, with a fix
>> ("hwcap 0 nosegneg" in a file in /etc/ld.so.conf.d, and put the libs in
>> /lib/tls/i686/cmov/nosegneg, ldconfig) but this does not help here. So
>> it may be a capability issue?
>>
>> When I look at the hardware capabilities needed with "ldconfig -Nv |
>> grep '^/'" I get:
>> lib/tls: (hwcap: 0x8000000000000000)
>> /usr/lib/i486: (hwcap: 0x2000000000000)
>> /usr/lib/i686: (hwcap: 0x8000000000000)
>> /usr/lib/i586: (hwcap: 0x4000000000000)
>> /lib/tls/i686: (hwcap: 0x8008000000000000)
>> /usr/lib/i686/cmov: (hwcap: 0x8000000008000)
>> /lib/tls/i686/cmov: (hwcap: 0x8008000000008000)
>>
>> 0x8000 is CMOV support, which is present on the Geode LX. Here's the
>> whole CPU info:
>> minimo:~:3# cat /proc/cpuinfo
>> processor : 0
>> vendor_id : AuthenticAMD
>> cpu family : 5
>> model : 10
>> model name : Geode(TM) Integrated Processor by AMD PCS
>> stepping : 2
>> cpu MHz : 499.919
>> cache size : 128 KB
>> fdiv_bug : no
>> hlt_bug : no
>> f00f_bug : no
>> coma_bug : no
>> fpu : yes
>> fpu_exception : yes
>> cpuid level : 1
>> wp : yes
>> flags : fpu de pse tsc msr cx8 sep pge cmov clflush mmx
>> mmxext 3dnowext 3dnow up
>> bogomips : 1001.25
>>
>> The upper bit is required for TLS, so it's not the problem as TLS is
>> supported. So it should be the middle bit 0x8000000000000 that is not
>> supported. I found a reference to "MP support" but that seems weird ---
>> why would MP support be required here?
>>
>
> This bit means than you need a 686 CPU. This seems to be the case as you
> are using a -686 kernel, but it seems it is not correctly detected by
> the kernel. You can try to move the files from /lib/tls/i686/cmov into
> /lib/tls/i586/cmov, then run ldconfig and try again. Be aware that it
> can crash your system if your CPU really doesn't support 686 instructions.
>
Thanks, that worked perfectly: the Xen libs are found, and after a
reboot the virtual machines works perfectly. According to its data book
the Geode LX is i686 compatible, see the Pentium Pro reference below:
"The instruction set supported by the core is a combination
of Intel’s Pentium, the AMD-K6 microprocessor and the
Athlon FPU, and the AMD Geode LX processor specific
instructions. Specifically, it supports the Pentium, Pentium
Pro, 3DNow! technology for the AMD-K6 and Athlon processors,
and MMX instructions for the Athlon processor."
So it seems to be a bug in the capability handling of ldconfig.
Thanks again,
Jérôme
More information about the Pkg-xen-devel
mailing list