Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Issue 2178503003: Add PTHREAD_PRIO_INHERIT Locks for Mac (Closed)

Created:
4 years, 5 months ago by robliao
Modified:
4 years, 4 months ago
Reviewers:
danakj, gab, fdoray
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add PTHREAD_PRIO_INHERIT Locks for Mac The Browser Task Scheduler will be using thread priorities. PTHREAD_PRIO_INHERIT will help avoid priority inversion with the use of thread priorities on Mac. Linux currently cannot use them due to security concerns in the kernel priority inheritance futex. BUG=611856 Committed: https://crrev.com/206071838287c145e6a71f57744fd47bf24d614b Cr-Commit-Position: refs/heads/master@{#409052}

Patch Set 1 #

Total comments: 6

Patch Set 2 : CR Feedback #

Total comments: 16

Patch Set 3 : CR Feedback #

Total comments: 2

Patch Set 4 : Adjust Macro Location #

Unified diffs Side-by-side diffs Delta from patch set Stats (+60 lines, -6 lines) Patch
M base/synchronization/lock.h View 1 2 3 1 chunk +8 lines, -0 lines 0 comments Download
M base/synchronization/lock_impl.h View 1 chunk +5 lines, -0 lines 0 comments Download
M base/synchronization/lock_impl_posix.cc View 1 2 3 2 chunks +47 lines, -6 lines 0 comments Download

Messages

Total messages: 51 (20 generated)
robliao
danakj: Please review this CL. This will supersede https://codereview.chromium.org/2028303005/ Thanks!
4 years, 5 months ago (2016-07-22 18:20:23 UTC) #4
gab
drive-by https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc File base/synchronization/lock_impl_posix.cc (right): https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc#newcode59 base/synchronization/lock_impl_posix.cc:59: bool LockImpl::PriorityInheritanceAvailable() { There's no longer anything run-time ...
4 years, 5 months ago (2016-07-22 20:07:31 UTC) #5
robliao
https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc File base/synchronization/lock_impl_posix.cc (right): https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc#newcode59 base/synchronization/lock_impl_posix.cc:59: bool LockImpl::PriorityInheritanceAvailable() { On 2016/07/22 20:07:31, gab wrote: > ...
4 years, 5 months ago (2016-07-25 20:53:20 UTC) #8
gab
lgtm https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc File base/synchronization/lock_impl_posix.cc (right): https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc#newcode59 base/synchronization/lock_impl_posix.cc:59: bool LockImpl::PriorityInheritanceAvailable() { On 2016/07/25 20:53:19, robliao wrote: ...
4 years, 4 months ago (2016-07-26 17:31:27 UTC) #10
gab
lgtm https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc File base/synchronization/lock_impl_posix.cc (right): https://codereview.chromium.org/2178503003/diff/1/base/synchronization/lock_impl_posix.cc#newcode59 base/synchronization/lock_impl_posix.cc:59: bool LockImpl::PriorityInheritanceAvailable() { On 2016/07/26 17:31:27, gab wrote: ...
4 years, 4 months ago (2016-07-26 17:32:12 UTC) #11
robliao
Ping for danakj. Thanks!
4 years, 4 months ago (2016-07-27 17:18:11 UTC) #16
danakj
https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h#newcode17 base/synchronization/lock.h:17: #if defined(OS_POSIX) Why is this behind OS_POSIX? I'd expect ...
4 years, 4 months ago (2016-07-27 22:47:53 UTC) #17
fdoray
https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h#newcode85 base/synchronization/lock.h:85: } Could this be available on all platforms and ...
4 years, 4 months ago (2016-07-28 14:38:36 UTC) #19
robliao
https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h#newcode17 base/synchronization/lock.h:17: #if defined(OS_POSIX) On 2016/07/27 22:47:53, danakj wrote: > Why ...
4 years, 4 months ago (2016-07-28 20:06:09 UTC) #20
danakj
https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h#newcode17 base/synchronization/lock.h:17: #if defined(OS_POSIX) On 2016/07/28 20:06:09, robliao wrote: > On ...
4 years, 4 months ago (2016-07-28 20:49:03 UTC) #21
robliao
https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h#newcode17 base/synchronization/lock.h:17: #if defined(OS_POSIX) On 2016/07/28 20:49:03, danakj wrote: > On ...
4 years, 4 months ago (2016-07-28 21:08:38 UTC) #22
danakj
On Thu, Jul 28, 2016 at 2:08 PM, <robliao@chromium.org> wrote: > > > https://codereview.chromium.org/2178503003/diff/20001/base/synchronization/lock.h > ...
4 years, 4 months ago (2016-07-28 21:14:27 UTC) #23
robliao
On 2016/07/28 21:14:27, danakj wrote: > On Thu, Jul 28, 2016 at 2:08 PM, <mailto:robliao@chromium.org> ...
4 years, 4 months ago (2016-07-28 21:52:27 UTC) #24
danakj
On Thu, Jul 28, 2016 at 2:52 PM, <robliao@chromium.org> wrote: > On 2016/07/28 21:14:27, danakj ...
4 years, 4 months ago (2016-07-28 23:31:47 UTC) #25
robliao
Yep. That is the required sandbox code change. The task scheduler will be checking for ...
4 years, 4 months ago (2016-07-28 23:37:39 UTC) #26
gab
FWIW (I didn't read every single word of your conversation but think the essence was ...
4 years, 4 months ago (2016-07-29 13:25:07 UTC) #27
fdoray
On 2016/07/29 13:25:07, gab wrote: > FWIW (I didn't read every single word of your ...
4 years, 4 months ago (2016-07-29 15:05:41 UTC) #28
robliao
On 2016/07/29 15:05:41, fdoray wrote: > On 2016/07/29 13:25:07, gab wrote: > > FWIW (I ...
4 years, 4 months ago (2016-07-29 18:17:37 UTC) #29
fdoray
On 2016/07/29 18:17:37, robliao wrote: > On 2016/07/29 15:05:41, fdoray wrote: > > On 2016/07/29 ...
4 years, 4 months ago (2016-07-29 18:34:27 UTC) #30
danakj
Another thought.. what if PriorityInheritanceAvailable() is constexpr. Would we need the macro then?
4 years, 4 months ago (2016-07-29 20:39:52 UTC) #31
robliao
On 2016/07/29 20:39:52, danakj wrote: > Another thought.. what if PriorityInheritanceAvailable() is constexpr. Would we ...
4 years, 4 months ago (2016-07-29 20:42:38 UTC) #32
robliao
On 2016/07/29 20:42:38, robliao wrote: > On 2016/07/29 20:39:52, danakj wrote: > > Another thought.. ...
4 years, 4 months ago (2016-07-29 20:46:27 UTC) #33
danakj
On Fri, Jul 29, 2016 at 1:42 PM, <robliao@chromium.org> wrote: > On 2016/07/29 20:39:52, danakj ...
4 years, 4 months ago (2016-07-29 20:54:55 UTC) #34
robliao
Agreed on the trickyness of templates without a compiler :-). The code in question does ...
4 years, 4 months ago (2016-07-29 21:01:30 UTC) #35
danakj
On Fri, Jul 29, 2016 at 2:01 PM, Robert Liao <robliao@chromium.org> wrote: > Agreed on ...
4 years, 4 months ago (2016-07-29 21:03:26 UTC) #36
danakj
https://codereview.chromium.org/2178503003/diff/40001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/40001/base/synchronization/lock.h#newcode19 base/synchronization/lock.h:19: // Determines which platforms can consider using priority inheritance ...
4 years, 4 months ago (2016-07-29 21:06:40 UTC) #37
robliao
https://codereview.chromium.org/2178503003/diff/40001/base/synchronization/lock.h File base/synchronization/lock.h (right): https://codereview.chromium.org/2178503003/diff/40001/base/synchronization/lock.h#newcode19 base/synchronization/lock.h:19: // Determines which platforms can consider using priority inheritance ...
4 years, 4 months ago (2016-07-29 21:22:53 UTC) #38
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2178503003/60001
4 years, 4 months ago (2016-07-29 21:23:29 UTC) #41
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2178503003/60001
4 years, 4 months ago (2016-08-01 17:17:50 UTC) #48
commit-bot: I haz the power
Committed patchset #4 (id:60001)
4 years, 4 months ago (2016-08-01 21:00:01 UTC) #49
commit-bot: I haz the power
4 years, 4 months ago (2016-08-01 21:03:13 UTC) #51
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/206071838287c145e6a71f57744fd47bf24d614b
Cr-Commit-Position: refs/heads/master@{#409052}

Powered by Google App Engine
This is Rietveld 408576698