pthread_condattr_init on darwin

RESOLVED FIXED in 4.8

Status

defect
RESOLVED FIXED
10 years ago
10 years ago

People

(Reporter: jeremyhu, Assigned: glenbeasley)

Tracking

other
x86
macOS

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment, 2 obsolete attachments)

Reporter

Description

10 years ago
pthread_condattr_init is available on 10.5 and later
Assignee

Comment 1

10 years ago
jeremy on a 10.5.6 Mac OS X I can "man pthread_condattr_init" and I see 
that it exists. 

I also read:
http://developer.apple.com/MacOsX/multithreadedprogramming.html

Where did you find that pthread_condattr_init is available on 10.5 and later
meaning not on 10.4 or 10.3?
Reporter

Comment 2

10 years ago
I didn't say it wasn't available earlier.  In fact, I didn't check.  Right now, the source is never using it at all on darwin.  This patch changes that.
Reporter

Comment 3

10 years ago
Posted patch patch-pthread.diff (obsolete) — Splinter Review
Reporter

Comment 4

10 years ago
Original reports are quite dated.  It looks like it was never reported upstream, so I'm just passing it along:

http://trac.macports.org/attachment/ticket/13150
http://trac.macports.org/attachment/ticket/13150/firefox-leopard.patch
Assignee

Comment 5

10 years ago
Comment on attachment 376499 [details] [diff] [review]
patch-pthread.diff

bug 153525 stated pthread_condattr_init and pthread_kill were not on Darwin in
patch https://bugzilla.mozilla.org/attachment.cgi?id=92470&action=diff

because Mac OS X 10.2 appeared to not have them. 
although according to 
http://developer.apple.com/technotes/tn2002/tn2071.html
pthread_kill was introduced in 10.2 man pthread_kill shows PTHREAD_KILL(2). 

bug 363092 allowed pthread_kill on Darwin.

I think we can assume  pthread_condattr_init(3) was introduced for MAC OS X 10.3?
Attachment #376499 - Flags: review?(wtc)
Reporter

Comment 6

10 years ago
That sounds plausible.  It's probably safe just to remove this check entirely and just use pthread_condattr_init unconditionally since 10.2 isn't really supported by anyone at this point...

Comment 7

10 years ago
Comment on attachment 376499 [details] [diff] [review]
patch-pthread.diff

If all the versions of Mac OS X that Firefox 3.0
supports have pthread_condattr_init, we don't need
any ifdef at all.

The "Firefox 3 System Requirements" page at
http://www.mozilla.com/en-US/firefox/system-requirements.html
says:

  Mac
  ---------------------------------

  Operating Systems
  * Mac OS X 10.4 and later
  Minimum Hardware
  * Macintosh computer with an Intel x86 or PowerPC
    G3, G4, or G5 processor
  * 128 MB RAM (Recommended: 256 MB RAM or greater)
  * 200 MB hard drive space

So I believe we can just delete #if defined(DARWIN).
Assignee

Comment 8

10 years ago
Attachment #376499 - Attachment is obsolete: true
Attachment #376514 - Flags: review?(wtc)
Attachment #376499 - Flags: review?(wtc)
Assignee

Comment 9

10 years ago
sorry forgot -dup
Attachment #376514 - Attachment is obsolete: true
Attachment #376515 - Flags: review?(wtc)
Attachment #376514 - Flags: review?(wtc)

Comment 10

10 years ago
Comment on attachment 376515 [details] [diff] [review]
 use pthread_condattr_init unconditionally2

r=wtc.
Attachment #376515 - Flags: review?(wtc) → review+
Assignee

Comment 11

10 years ago
cvs commit -m "492117 allow pthread_condattr_init on Mac OS X patch from jHuddleston r=wan-teh" _pth.h 
Checking in _pth.h;
/cvsroot/mozilla/nsprpub/pr/include/md/_pth.h,v  <--  _pth.h
new revision: 3.36; previous revision: 3.35
done
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → 4.8.1
Version: other → 4.8
Assignee

Comment 12

10 years ago
nspr version is 4.8 beta 1 changing target milestone to 4.8
Target Milestone: 4.8.1 → 4.8

Comment 13

10 years ago
Thanks, Jeremy and Glen.

It's actually NSPR 4.8 Beta 2 now.  I just tagged NSPR 4.8 Beta 1
this morning.
Assignee: wtc → glen.beasley
Version: 4.8 → other
You need to log in before you can comment on or make changes to this bug.