Closed Bug 145560 Opened 23 years ago Closed 23 years ago

USE_NSPR_THREADS is not being honored if pthreads is present

Categories

(NSPR :: NSPR, defect)

x86
OpenBSD
defect
Not set
critical

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: netscape, Assigned: netscape)

Details

Attachments

(1 file)

So after spending most of the night wondering why OpenBSD builds were flaky (opt vs debug inconsistencies), I noticed that OpenBSD was always being built with pthreads (which don't appear to work) even though USE_NSPR_THREADS is being set. Death by typo. This bug affects any platform that we expect to use NSPR threads by default but has system support for pthreads.
Comment on attachment 85390 [details] [diff] [review] Fix typo r=wtc. Thanks for the patch, Chris. You are sure that the pthreads library on OpenBSD doesn't work, right? In general we should use pthreads if they are available.
Attachment #85390 - Flags: review+
It didn't work for me but I wasn't trying to make pthreads support work. The opt builds appeared to pass most of the tests but the debug builds were PR_Assert'ing in almost every test. I didn't look into exactly why it was failing. Also, I noticed that the box also had the GNU pthread library (http://www.gnu.org/softare/pth/), installed even though libc_r appeared to have pthread support. It may be that the default pthread support isn't standards compliant and we should be using pth instead.
The patch has been checked in on the misnamed pre-4.2 client branch and the nspr trunk. Checking in nsprpub/configure; /cvsroot/mozilla/nsprpub/configure,v <-- configure new revision: 1.78.2.24; previous revision: 1.78.2.23 done Checking in nsprpub/configure.in; /cvsroot/mozilla/nsprpub/configure.in,v <-- configure.in new revision: 1.83.2.24; previous revision: 1.83.2.23 done Checking in nsprpub/configure; /cvsroot/mozilla/nsprpub/configure,v <-- configure new revision: 1.105; previous revision: 1.104 done Checking in nsprpub/configure.in; /cvsroot/mozilla/nsprpub/configure.in,v <-- configure.in new revision: 1.110; previous revision: 1.109 done
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
AFIK, OpenBSD should use -pthread (or -pthreads?) rather than linking against libc_r for the standard pthread support.
Right. We have a check for -pthread after confirming that one of libc, libc_r or libpthread actually contains pthread_create.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: