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?
All this with GLIBC packages 2.3.6.ds1-8 and linux-image-2.6-xen-686
2.6.18+5.
I can't find more information I can use on hwcap, and I'm not sure
the little I found is relevant here. So it's time to ask the experts ;)
Is there a limitation in the Geode that prevents it supporting libc6-xen
or is it a configuration glitch? Any idea on how to solve this if
possible? If you need more input just ask!
Please CC me in answers as I'm not in the lists.
Thanks,
Jerome
Aurelien Jarno
2007-Jan-08 23:44 UTC
[Pkg-xen-devel] Re: libc6-xen not used on AMD Geode LX system
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. -- .''`. Aurelien Jarno | GPG: 1024D/F1BCDB73 : :' : Debian developer | Electrical Engineer `. `' aurel32@debian.org | aurelien@aurel32.net `- people.debian.org/~aurel32 | www.aurel32.net