Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 106332 - glibc 2.3.5 borks on nptl when compiling with an older kernel for a new system
Summary: glibc 2.3.5 borks on nptl when compiling with an older kernel for a new system
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-09-17 20:48 UTC by Navid Zamani
Modified: 2005-09-18 07:00 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Navid Zamani 2005-09-17 20:48:54 UTC
I am compiling a fresh system for a headless box where i only have ssh-access.
To do this i run the installation on a crippled debian-like emergency-console
with an not that new kernel. Now everything until the "emerge -e system" went
fine. Here i got the following error..



Reproducible: Always
Steps to Reproduce:
1. follow the normal handbook but use the hardened stage and my make.conf
2. stop after "emerge -e system" and look for the output.
Actual Results:  
[---snip---]
 * Warning! Gentoo's GLIBC with NPTL enabled now behaves like the
 * glibc from almost every other distribution out there. This means
 * that glibc is compiled -twice-, once with linuxthreads and once
 * with nptl. The NPTL version is installed to lib/tls and is still
 * used by default. If you do not need nor want the linuxthreads
 * fallback, you can disable this behavior by adding nptlonly to
 * USE to save yourself some compile time.
>>> Unpacking source...

 * Checking gcc for __thread support ... yes
 * Checking kernel version (>=2.6.6) ... no

 * You need a kernel of at least version 2.6.6
 * for NPTL support!
[---snip---]

Expected Results:  
Proper compilation, because the installed system will use the newest stable
hardened kernel (2.6.11 i guess) wich is above 2.6.6

[this "emerge --info" was made *before* the bootstrap and "emerge -e system" !!]

Portage 2.0.51.22-r2 (hardened/x86/2.6, gcc-3.3.5-20050130,
glibc-2.3.4.20041102-r1, 2.4.27 i686)
=================================================================
System uname: 2.4.27 i686 AMD Athlon(tm) XP 2400+
Gentoo Base System version 1.6.12
dev-lang/python:     2.3.5
sys-apps/sandbox:    1.2.11
sys-devel/autoconf:  [Not Present]
sys-devel/automake:  [Not Present]
sys-devel/binutils:  2.15.92.0.2-r10
sys-devel/libtool:   [Not Present]
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer -pipe -falign-functions=4"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config
/usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-O2 -march=athlon-xp -fomit-frame-pointer -pipe -falign-functions=4"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig candy ccache distlocks sandbox sfperms strict userpriv
usersandbox"
GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/
http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/
http://mir.zyrianes.net/gentoo/ http://www.gigaload.org/gentoo.org/"
LANG="de_DE.utf8"
LINGUAS="de"
MAKEOPTS="-j2"
PKGDIR="/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage/"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="3dnow aalib acl acpi apache2 bash-completion berkdb bzip2 clamav clamd
cluster crypt curl curlwrappers dbm dedicated dio dlloader doc examples exif
fastcgi fftw flac flash flatfile ftp gd gif hardened hardenedphp idn imagemagick
imap inifile innodb ithreads java javascript jikes jpeg junit justify libcaca
lm_sensors maildir matroska memlimit milter mime ming mmap mmx mng mysql mysqli
nagios-dns nagios-game nagios-ntp nagios-ping nagios-ssh ncurses nhc98 nls nocd
nptl ocaml offensive ogg pam pcre pdflib pear perl php pic png posix postgres
prelude python qmail readline ruby sdl sensord session sharedmem snmp soap
sockets spamassassin spell spl sse ssl subject-rewrite svg tcpd threads tidy
tiff tokenizer truetype unicode userlocales utf8 vhosts vim-pager virus-scan
vorbis x86 xml2 xsl zip zlib linguas_de userland_GNU kernel_linux elibc_glibc"
Unset:  ASFLAGS, CTARGET, LC_ALL, LDFLAGS

[hey... why does this use-list not nhow my negative uses (like -X)???]
Comment 1 Chris White (RETIRED) gentoo-dev 2005-09-17 20:53:55 UTC
System uname: 2.4.27 i686 AMD Athlon(tm) XP 2400+  
  
2.4.27 is your current kernel, THAT'S what needs to be 2.6.x.  
  
-X won't show because.. well, it's disabled, so portage isn't going to show it.  
Comment 2 Ryan Hill (RETIRED) gentoo-dev 2005-09-17 21:04:09 UTC
you might be able to get away with installing a version of linux-headers later
than 2.6.6.  this is assuming you'll be installing a 2.6 kernel later.  if
you're sticking with 2.4 then you won't be able to have nptl support.
Comment 3 Navid Zamani 2005-09-18 06:58:40 UTC
(In reply to comment #1)
> 2.4.27 is your current kernel, THAT'S what needs to be 2.6.x.  

Sorry but i guess if you read my description completely you would know that this
is the kernel of the poor recue system and not the kernel of the system that i'm
installing. So glibc could compile nptl-support in, creating binaries that don't
work on the rescue system but will work fine on the resulting system that's
running after the final reboot.

(But i see the problem here too: Maybe the installation uses those nptl-binaries
already before the reboot wich would not work on the 2.4 kernel. But how do i
circumvent this?)
Comment 4 Navid Zamani 2005-09-18 07:00:19 UTC
(In reply to comment #2)
> you might be able to get away with installing a version of linux-headers later
> than 2.6.6.  this is assuming you'll be installing a 2.6 kernel later.

The kernel-headers that were installt at that moment of the error were 2.6.11 as
seen here:
> virtual/os-headers:  2.6.11-r2

Or am i missing something? ;)