I'm using Sun WorkShop 5.0 sometimes, and these builds result in
executables like httpd referencing libthread but not libpthread.
We pass cc the -mt switch, but at least with this version that switch
isn't enough to pull in libpthread. Can anybody confirm that with a
more recent Sun compiler APR apps are getting libpthread?
This apparently results in apr_proc_create() forking more than just the
calling thread, and you can get anoying stuff like this when running
Apache's mod_ext_filter with the worker MPM:
[Mon Mar 31 13:52:20 2003] [error] (9)Bad file number: apr_accept:
(client socket)
(By the time the fork()-ed child of the calling thread got around to
exec()-ing the external filter program, the copy of the listener thread
in the forked() child reached the accept() call.)
There was other undiagnosed havoc going on, including a child process
exiting with a fatal error code which led to the parent bailing out with
a large number of children left to clean up manually. This was probably
the neatest failure:
ibthread panic: fault in libthread critical section : dumping core (PID:
4894 LWP 12)
stacktrace:
ff0faaa8
ff0fa8fc
ff103498
ff0ff8f0
ff105558
ff2d2bac
36964
ff2d29bc
ff10b728
ff2d2978
Cool, huh?
I haven't gotten to the point of teaching APR to pull in libpthread in
this situation and rebuilding Apache's httpd and retesting, but I
thought I'd put this out there to see if somebody with a newer compiler
is getting better results.
- Re: anybody using Sun's compiler and getting libthread r... Jeff Trawick
- Re: anybody using Sun's compiler and getting libthr... Spinka, Kristofer
- Re: anybody using Sun's compiler and getting libthr... Pier Fumagalli
- Re: anybody using Sun's compiler and getting libthr... Justin Erenkrantz
- Re: anybody using Sun's compiler and getting li... Jeff Trawick
