Re: compile glibc + nptl fail

chen liwen <[email protected]>
Newsgroups gmane.comp.lib.phil
Message-ID <[email protected]>
Now I can test program with new glibc.
I use pingpong.c from sun and patch for linux to test
nptl. I met one error.  
 pp is compiled with nptl
 qq is compiled with redhat 8 glibc2 and linuxpthread
results as following:
 (1)./pp -v -i 10000 -n 120

PING-PONG CONFIGURATION:

                      target (-i) = 10000
                      ntables (-n) = 120
                      sleepms (-z) = 0
                      pthread_scope (-s) = 134517959
                      pthread_process (-p) = 134517944
                      concurrency (-c) = 0
                      stacksize (-S) = 0

240 threads initialised in 0s  31ms
120 games completed in 8s  586ms
 (2) ./qq -v -i 10000 -n 120

PING-PONG CONFIGURATION:

                      target (-i) = 10000
                      ntables (-n) = 120
                      sleepms (-z) = 0
                      pthread_scope (-s) = 134517895
                      pthread_process (-p) = 134517880
                      concurrency (-c) = 0
                      stacksize (-S) = 0

240 threads initialised in 0s  59ms
120 games completed in 12s  420ms
 (3) ./pp -v -i 10000 -n 150

PING-PONG CONFIGURATION:

                      target (-i) = 10000
                      ntables (-n) = 150
                      sleepms (-z) = 0
                      pthread_scope (-s) = 134517959
                      pthread_process (-p) = 134517944
                      concurrency (-c) = 0
                      stacksize (-S) = 0

pthread_create error, errno = 12!
 (4) ./qq -v -i 10000 -n 150

PING-PONG CONFIGURATION:

                      target (-i) = 10000
                      ntables (-n) = 150
                      sleepms (-z) = 0
                      pthread_scope (-s) = 134517895
                      pthread_process (-p) = 134517880
                      concurrency (-c) = 0
                      stacksize (-S) = 0

300 threads initialised in 0s  87ms
150 games completed in 15s  883ms
   Obviously, the max threads ping-pong with nptl can
create is limited to < 150
    ping-pong with linuxpthread has no such problem.
  
    chen

--- Dan Kegel <[email protected]> wrote:
> chen liwen wrote:
> > Yes, I have corrected the problem, and install
> glibc
> > under directory /usr/local/glibc2.  In order to
> use
> > the new glibc, I do the following:
> >  (1) export LD_LIBRARY_PATH=/usr/local/glibc2/lib
> >  (2) when I execute ls , there are errors
> occurred:
> >   ls: error while loading shared libraries:
> libc.so.6:
> > cannot handle TLS data
> >   then what should I do for this?
> 
> I've been setting up chroot jails to test with
> alternate glibc's
> etc.  Haven't tried it with NPTL yet, but maybe my
> procedure will
> help there.   It's basically:
> 
> first, grab a copy of the new glibc's shared
> libraries and the system passwd file:
> 
>    mkjail.sh /usr/local/glibc2 /etc/passwd
> 
> then create the jail:
> 
> $ su
> # cat jail.tar.gz | sh initjail.sh myjail
> 
> then test the jail:
> 
> # /usr/sbin/chroot `pwd`/myjail /bin/sh
> 
> The scripts are documented at
> 
>
http://www.kegel.com/crosstool/crosstool-0.11/doc/chroot-login-howto.html
> 
> All you need there is step 1; the rest is to allow
> remote login into
> the chroot jail.  You may need to adjust the scripts
> I wrote a bit,
> if nptl adds any shared libraries, you need to add
> them to the list
> in mkjail.sh.  And you'll need to either install
> /bin/ash, which is the shell my
> script copies instead of /bin/sh, or edit the
> script.
> - Dan
> 
> -- 
> Dan Kegel
> http://www.kegel.com
>
http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045
> 
> 
> -- 
> Phil-list mailing list
> [email protected]
> https://www.redhat.com/mailman/listinfo/phil-list


__________________________________
Do you Yahoo!?
SBC Yahoo! DSL - Now only $29.95 per month!
http://sbc.yahoo.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.