From email@example.com Sat Feb 5 20:40:41 2000
Subject: Re: Perl Problem is CRITICAL now
In-reply-to: Your message of "Sat, 05 Feb 2000 16:27:37 PST."
Date: Sat, 05 Feb 2000 20:40:37 -0800
From: Michael Helm <firstname.lastname@example.org>
Michael Helm writes:
Threading broke somewhere (but inconsistently) in the past few months on
solaris 2.5.1/perl5005. It had run for months on dir2
I think I know what's happened. Around 1 Feb a new solaris
kernel patch was released for 251
dir2% uname -a
SunOS dir2 5.5.1 Generic_103640-32 sun4u
dir2% ls -l /usr/lib/libthread.so.1
-rwxr-xr-x 1 bin bin 127044 Feb 3 01:31 /usr/lib/libthread.so.1
(There have been a lot of threads bug id's in recent kernel patches, not
just this one)
This library change has killed threaded perl on 251.
There must also be a kernel component, because it looks like
just changing to this library isn't sufficient to kill threaded
perl, a reboot is required. So, hosts that power cycled
last Mon-Tues AND had installed this patch are affected.
However, replacing this shared lib with the previous edition
is sufficient to restore threaded perl to life:
detected a multithreaded program
(dbx) run -v
Running: perl -v
(process id 5497)
Reading symbolic information for libthread.so.1
This is perl, version 5.005_03 built for sun4-solaris-thread
Copyright 1987-1999, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5.0 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using `man perl' or `perldoc perl'. If you have access to the
Internet, point your browser at http://www.perl.com/, the Perl Home Page.
execution completed, exit code is 0
ssh:dir2# ls -l /usr/lib/libthread.so*
lrwxrwxrwx 1 root root 16 Jan 28 1997 /usr/lib/libthread.so -> ./libthread.so.1
-rwxr-xr-x 1 root other 120976 Dec 13 01:31 /usr/lib/libthread.so.1
-rwxr-xr-x 1 bin bin 127044 Feb 3 01:31 /usr/lib/libthread.so.1.new
Seems like a good possibility that patch 103640-32 has a problem.
It may be that threaded perl is the bad guy, but this has worked
for a long time, even if it is experimental, & shouldn't blow
up like this on start up. If there's a problem with threading here,
there may be problems with other programs. Threaded code isn't that
common in this older solaris, but syslogd uses it, openwindows,
netscape servers &c.