Closed Bug 1252246 Opened 8 years ago Closed 8 years ago

Enable the CrossProcessMutex code on more Unices

Categories

(Core :: IPC, defect)

Unspecified
FreeBSD
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla47
Tracking Status
firefox47 --- fixed

People

(Reporter: jbeich, Assigned: jbeich)

References

Details

(Whiteboard: [npotb] btpp-active)

Attachments

(1 file, 2 obsolete files)

+++ This bug was initially created as a clone of Bug #1072093 +++

The CrossProcessMutex is used in the APZ/tiling code for implementing progressive painting. On Desktop platforms layers.async-pan-zoom.enabled;true since bug 1178298 while layers.enable-tiles;true is limited to OS X. Let's prepare for layers.progressive-paint;true in advance by always building _posix.cpp where pthread_mutexattr_setpshared() is supported. If PTHREAD_PROCESS_SHARED doesn't work yet it'd only trade NS_RUNTIMEABORT() with MOZ_CRASH().

https://dxr.mozilla.org/mozilla-central/search?q=CrossProcessMutex
https://svnweb.freebsd.org/changeset/base/296162 DragonFly may want to adopt
bug 1072093 comment 16 (simple test program)
Partially backs out bug 1098607. According to ipc/chromium/chromium-config.mozbuild anything non-Windows is OS_POSIX, so it can be omitted thus avoiding ugliness in moz.build.

https://treeherder.mozilla.org/#/jobs?repo=try&revision=0715f6d11c4e
Attachment #8724975 - Flags: review?(mh+mozilla)
Attachment #8724975 - Flags: review?(bugmail.mozilla)
Depends on: 1098607
Oops, forgot to sort OS_ARCH values in moz.build.
Attachment #8724975 - Attachment is obsolete: true
Attachment #8724975 - Flags: review?(mh+mozilla)
Attachment #8724975 - Flags: review?(bugmail.mozilla)
Attachment #8724976 - Flags: review?(mh+mozilla)
Attachment #8724976 - Flags: review?(bugmail.mozilla)
Comment on attachment 8724976 [details] [diff] [review]
v1: Solaris, GNU/kFreeBSD, FreeBSD, DragonFly, etc

Review of attachment 8724976 [details] [diff] [review]:
-----------------------------------------------------------------

I have no objections to this, but I'll defer to glandium.

::: ipc/glue/CrossProcessMutex.h
@@ +8,5 @@
>  
>  #include "base/process.h"
>  #include "mozilla/Mutex.h"
>  
> +#if (!defined(OS_NETBSD) && !defined(OS_OPENBSD))

This one needs a !defined(OS_WIN) as well since there's no #if branch for windows like in the other sites.
Attachment #8724976 - Flags: review?(bugmail.mozilla) → feedback+
Carrying over f=kats after adding missing !defined(OS_WIN) per comment 3. Also, dropped unnecessary parentheses when stacking negation:

  !defined(OS_WIN) && !defined(OS_NETBSD) && !defined(OS_OPENBSD) 

vs.

  defined(OS_POSIX) && (!defined(OS_NETBSD) && !defined(OS_OPENBSD))

https://treeherder.mozilla.org/#/jobs?repo=try&revision=de279a712c9d
Attachment #8724976 - Attachment is obsolete: true
Attachment #8724976 - Flags: review?(mh+mozilla)
Attachment #8724995 - Flags: review?(mh+mozilla)
Assignee: nobody → jbeich
Whiteboard: [npotb] → [npotb] btpp-active
Attachment #8724995 - Flags: review?(mh+mozilla) → review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/ee9285c872a5
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla47
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: