Linode Forum
Linode Community Forums
 FAQFAQ    SearchSearch    MembersMembers      Register Register 
 LoginLogin [ Anonymous ] 
Post new topic  Reply to topic
Author Message
PostPosted: Thu Dec 28, 2006 6:36 pm 
Offline
Junior Member

Joined: Wed Jan 26, 2005 7:20 pm
Posts: 34
I'm confused. This post ( http://www.linode.com/forums/viewtopic.php?t=2193 ) says NPTL support is enabled in the kernel and this post ( http://www.linode.com/forums/viewtopic.php?t=2314 ) says it's not and I have to use the no-nptl profile (for gentoo).

Can anyone tell me definitively what's up?

When I try to update glibc with the 2006.1 profile (I'm using Gentoo, btw) I get errors about how glibc needs NPTL. If I use the no-nptl profile glibc seems to compile all right, but I'm pretty sure I'm limited in what I can install, and what flags I am able to use.


Top
   
 Post subject:
PostPosted: Thu Dec 28, 2006 11:02 pm 
Offline
Linode Staff
User avatar

Joined: Tue Apr 15, 2003 6:24 pm
Posts: 3090
Website: http://www.linode.com/
Location: Galloway, NJ
All of our 2.6 kernels that have a build number of -linode18 or later have a working NPTL/TLS/[get|set]_thread_area implementation.

What kernel are you running?

-Chris


Top
   
 Post subject:
PostPosted: Fri Dec 29, 2006 1:57 pm 
Offline
Junior Member

Joined: Wed Jan 26, 2005 7:20 pm
Posts: 34
localhost ~ # uname -a
Linux localhost 2.6.19-linode26 #1 Thu Dec 7 17:38:04 EST 2006 i686 UML User Mode Linux GNU/Linux

When I use the 2006.1 profile I get the following:

* glibc-2.4 is nptl-only!
* NPTL requires a CHOST of i486 or better

Which, once I actually took the time to read explains the problem a little better.

You have as a default

CHOST="i386-pc-linux-gnu"

This is a *BIG* no-no, but I changed the CHOST line to i686 and tried to compile glibc. It seems to be going ok. I'll let you know.

However, it's looking for i686 libraries and not finding them, so it's falling back to i386, which means the code will be unnecessarily "dumbed down", so to speak.

At a guess it looks like you took the lowest common denominator instead of compiling (or otherwise setting up) for the hardware you are using.

I'm not faulting or criticizing you. I really appreciate you even providing Gentoo as an option. I also am guessing that Gentoo is not your usual platform.

I'm also unfamiliar with the details of a UML driven setup so I have no idea if you can even use a 686 setup. I hope this gives you some more info you can use to continue improving the Gentoo image.


Top
   
 Post subject:
PostPosted: Fri Dec 29, 2006 2:12 pm 
Offline
Linode Staff
User avatar

Joined: Tue Apr 15, 2003 6:24 pm
Posts: 3090
Website: http://www.linode.com/
Location: Galloway, NJ
Dog me all you want - I'm a Gentoo newb.

Where is that setting? /etc/make.conf, I presume? I'll see what I can do about getting that fixed.

Thanks for letting me know!
-Chris


Top
   
 Post subject:
PostPosted: Fri Dec 29, 2006 4:09 pm 
Offline
Junior Member

Joined: Wed Jan 26, 2005 7:20 pm
Posts: 34
I'll try not to be too dogged. :>

The CHOST setting is in /etc/make.conf, but that's not the only thing that needs to be changed. As a matter of fact, if I'm right then it really should be left as is, at least until the stage used is the correct one.

If you installed the stage3-x86-2006.1 tarball then CHOST was set correctly and shouldn't be modified (like I did).

Assuming from the fact that the mtune option in CFLAGS is set to i686 that you can use a 686 architecture then the stage that should be installed is stage3-i686-2006.1.

Err ... that's assuming you installed from a stage3 (if not, the equivalent exists for stage2 and I'm guessing if you did things from stage1 things would be slightly different).

If you *did* install the stage?-i686 then the CHOST value just needs to be changed. Otherwise, until you can take the time to redo the Gentoo image you'll need to point the /etc/make.profile to /usr/portage/profiles/default-linux/x86/no-nptl

I've just rebooted after changing the CHOST to i686 and compiling glibc to the latest, it seems to be ok.


Top
   
 Post subject:
PostPosted: Sat Dec 30, 2006 5:37 pm 
Offline
Junior Member

Joined: Wed Jan 26, 2005 7:20 pm
Posts: 34
Ok. I freely admit it. I'm an idiot. The uname -a result *says* that the kernel was compiled as a 686 platform ... and I don't know what I was thinking about ix86 specific libraries. Too little sleep I guess.

So, unless I hear otherwise, it appears that just changing the CHOST line in /etc/make.conf should fix the problem.


Top
   
 Post subject: Actually...
PostPosted: Wed May 16, 2007 1:00 pm 
Offline
Senior Newbie

Joined: Wed May 16, 2007 11:19 am
Posts: 5
Website: http://trick.vanstaveren.us
Location: Chicago, IL
...not to throw a wrench at the monkey...

Changing the CHOST isn't as simple as changing /etc/make.conf. If you do that, part of your system has been built for i386 and then part will be for i686. I'm not an expert so I don't know how bad this is, but it's bad, so don't do it :)

I've just purchased my first Linode (which rocks!) and am currently upgrading it to the i686 CHOST. It's not hard, but takes a few steps and some compilation time.

You can read the full blown instructions at:
http://www.gentoo.org/doc/en/change-chost.xml

From a fresh 2006.1 Gentoo/Linode image...
* Don't `emerge --sync` yet!
* Mask off newer versions of glibc and gcc using /etc/portage/package.mask to ensure that no upgrades to the system are available
* Follow the Gentoo guide above (upgrade binutils/gcc/glibc, clean out the system, remerge libtool & fix that, remerge world)
* Then emerge --sync, wipe out the entries in /etc/portage/package.mask, and then you can go ahead and drop in the new glibc 2.4, and whatever else you like :)

Since Gentoo 2007.0 is out now, I bet the Linode folks will work up a new image soon and it'll require CHOST to be i686 anyway. If you Linode folks are looking for someone to test/help with a 2007.0 image, find me :)


Top
   
 Post subject:
PostPosted: Fri May 18, 2007 5:38 am 
Offline
Junior Member

Joined: Wed Jan 26, 2005 7:20 pm
Posts: 34
Thank you for this ... it explains some wierd errors I've been getting. I was getting tired of reinstalling everything.

If you haven't already seen my GentooSetup article on the wiki, would you be willing to make some editorial comments in the discussion page?

And I'd like to offer my linode as a test bed for the 2007.0 profile as well, Caker.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic


Who is online

Users browsing this forum: apkehoe and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
RSS

Powered by phpBB® Forum Software © phpBB Group