Question about building perl-5.8.5 multi-threaded on RedHat 9 Linux

From: Tom Williams (tomdkat_at_comcast.net)
Date: 07/22/04


Date: 22 Jul 2004 07:41:50 -0700

Hi! Ok, I haven't been able to build and test perl multi-threaded
successfully since 5.8.2. I need a multi-threaded perl interpreter
since I'm running Apache 2.0.49 (soon to upgrade to 2.0.50) with the
"worker" MPM, which is a multi-threaded MPM.

The wait.t test is the test that is failing:

Failed Test Stat Wstat Total Fail Failed List of
Failed
-------------------------------------------------------------------------------
../ext/threads/shared/t/wait.t 102 30 29.41% 27-41
76-90
24 tests and 488 subtests skipped.
Failed 1/881 test scripts, 99.89% okay. 30/86226 subtests failed,
99.97% okay.

When I run the wait.t test individually, I get these results:

[tom@linux t]$ ./perl -I../lib ../ext/threads/shared/t/wait.t
1..102
ok 1 - cond_wait() present
ok 2 - cond_wait() prototype '\[$@%];\[$@%]'
ok 3 - cond_timedwait() present
ok 4 - cond_timedwait() prototype '\[$@%]$;\[$@%]'
# testing my $var : shared
ok 5 - Shared synchronization tests preparation
ok 6 - cond_wait [simple]: obtained initial lock
ok 7 - cond_wait [simple]: child before lock
ok 8 - cond_wait [simple]: child obtained lock
ok 9 - cond_wait [simple]: child signalled condition
ok 10 - cond_wait [simple]: condition obtained
ok 11 - cond_wait [simple]: join completed
ok 12 - cond_wait [repeat]: obtained initial lock
ok 13 - cond_wait [repeat]: child before lock
ok 14 - cond_wait [repeat]: child obtained lock
ok 15 - cond_wait [repeat]: child signalled condition
ok 16 - cond_wait [repeat]: condition obtained
ok 17 - cond_wait [repeat]: join completed
ok 18 - cond_wait [twain]: obtained initial lock
ok 19 - cond_wait [twain]: child before lock
ok 20 - cond_wait [twain]: child obtained lock
ok 21 - cond_wait [twain]: child signalled condition
ok 22 - cond_wait [twain]: condition obtained
ok 23 - cond_wait [twain]: join completed
ok 24 - cond_timedwait [simple]: obtained initial lock
ok 25 - cond_timedwait [simple]: child before lock
ok 26 - cond_timedwait [simple]: child obtained lock
not ok 27 - child status 14
not ok 28 - child status 14
not ok 29 - child status 14
not ok 30 - child status 14
not ok 31 - child status 14
not ok 32 - child status 14
not ok 33 - child status 14
not ok 34 - child status 14
not ok 35 - child status 14
not ok 36 - child status 14
not ok 37 - child status 14
not ok 38 - child status 14
not ok 39 - child status 14
not ok 40 - child status 14
not ok 41 - child status 14
ok 42 - cond_timedwait pause, timeout [simple]: obtained initial lock
ok 43 - cond_timedwait pause, timeout [simple]: timeout
ok 44 - cond_timedwait pause, timeout [repeat]: obtained initial lock
ok 45 - cond_timedwait pause, timeout [repeat]: timeout
ok 46 - cond_timedwait pause, timeout [twain]: obtained initial lock
ok 47 - cond_timedwait pause, timeout [twain]: timeout
ok 48 - cond_timedwait instant timeout [simple]: obtained initial lock
ok 49 - cond_timedwait instant timeout [simple]: timeout
ok 50 - cond_timedwait instant timeout [repeat]: obtained initial lock
ok 51 - cond_timedwait instant timeout [repeat]: timeout
ok 52 - cond_timedwait instant timeout [twain]: obtained initial lock
ok 53 - cond_timedwait instant timeout [twain]: timeout
# testing reference to shared($var)
ok 54 - Synchronization reference tests preparation
ok 55 - cond_wait [simple]: obtained initial lock
ok 56 - cond_wait [simple]: child before lock
ok 57 - cond_wait [simple]: child obtained lock
ok 58 - cond_wait [simple]: child signalled condition
ok 59 - cond_wait [simple]: condition obtained
ok 60 - cond_wait [simple]: join completed
ok 61 - cond_wait [repeat]: obtained initial lock
ok 62 - cond_wait [repeat]: child before lock
ok 63 - cond_wait [repeat]: child obtained lock
ok 64 - cond_wait [repeat]: child signalled condition
ok 65 - cond_wait [repeat]: condition obtained
ok 66 - cond_wait [repeat]: join completed
ok 67 - cond_wait [twain]: obtained initial lock
ok 68 - cond_wait [twain]: child before lock
ok 69 - cond_wait [twain]: child obtained lock
ok 70 - cond_wait [twain]: child signalled condition
ok 71 - cond_wait [twain]: condition obtained
ok 72 - cond_wait [twain]: join completed
ok 73 - cond_timedwait [simple]: obtained initial lock
ok 74 - cond_timedwait [simple]: child before lock
ok 75 - cond_timedwait [simple]: child obtained lock
not ok 76 - child status 14
not ok 77 - child status 14
not ok 78 - child status 14
not ok 79 - child status 14
not ok 80 - child status 14
not ok 81 - child status 14
not ok 82 - child status 14
not ok 83 - child status 14
not ok 84 - child status 14
not ok 85 - child status 14
not ok 86 - child status 14
not ok 87 - child status 14
not ok 88 - child status 14
not ok 89 - child status 14
not ok 90 - child status 14
ok 91 - cond_timedwait pause, timeout [simple]: obtained initial lock
ok 92 - cond_timedwait pause, timeout [simple]: timeout
ok 93 - cond_timedwait pause, timeout [repeat]: obtained initial lock
ok 94 - cond_timedwait pause, timeout [repeat]: timeout
ok 95 - cond_timedwait pause, timeout [twain]: obtained initial lock
ok 96 - cond_timedwait pause, timeout [twain]: timeout
ok 97 - cond_timedwait instant timeout [simple]: obtained initial lock
ok 98 - cond_timedwait instant timeout [simple]: timeout
ok 99 - cond_timedwait instant timeout [repeat]: obtained initial lock
ok 100 - cond_timedwait instant timeout [repeat]: timeout
ok 101 - cond_timedwait instant timeout [twain]: obtained initial lock
ok 102 - cond_timedwait instant timeout [twain]: timeout
[tom@linux t]$

Any idea on how I can find out why the above range of tests are
failing?

Thanks in advance!

Peace...

Tom



Relevant Pages

  • Re: Why Sony Will Die
    ... save for having used a codec and DRM which Microsoft developed. ... It's not the player that was the problem...it was the DRM system. ... I suppose when you buy a lock at the hardware store ... "Perfect for locking a child in a closet!" ...
    (alt.tv.tech.hdtv)
  • Re: TurboIMAGE: Timed lock request
    ... Since my previous posting I already tried this out and yes, the child gets ... Too bad junior can't give the lock to daddy. ... Subject: TurboIMAGE: Timed lock request ... To join/leave the list, search archives, change list settings, * ...
    (comp.sys.hp.mpe)
  • Re: New "timeout" api, to replace callout
    ... Timer expires on active session but source of timer was just ... time has expired and it is ready to run, once its lock gets freed. ... disable or cleanup the timeout. ...
    (freebsd-arch)
  • Re: TurboIMAGE: Timed lock request
    ... When a parent process is aborted, it issues an abort against it's child processas part of the parent's termination handling and waits for them to complete prior to the parent completing it's termination. ... When awoken thru the dispatch process, the processing checks this flag and if set, calls terminate. ... Too bad junior can't give the lock to daddy. ... Subject: TurboIMAGE: Timed lock request ...
    (comp.sys.hp.mpe)
  • Re: Why Sony Will Die
    ... It's not the player that was the problem...it was the DRM system. ... I suppose when you buy a lock at the hardware store ... "Perfect for locking a child in a closet!" ... How about the fact that they call it "Media Digital Rights ...
    (alt.tv.tech.hdtv)