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

Issue 2114993003: Access FileTracing::g_provider atomically to prevent data races (Closed)

Created:
4 years, 5 months ago by Dan Beam
Modified:
4 years, 5 months ago
CC:
chromium-reviews, nduca_chromium.rg, Lei Zhang, oystein (OOO til 10th of July)
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Access FileTracing::g_provider atomically to prevent data races R=danakj@chromium.org BUG=522018 Committed: https://crrev.com/00dd6010cdda17cecd624c0f274aeb630f31fb83 Cr-Commit-Position: refs/heads/master@{#405907}

Patch Set 1 #

Total comments: 5

Patch Set 2 : danakj@ review #

Patch Set 3 : load and store #

Total comments: 2

Patch Set 4 : glider@/groby@ review #

Total comments: 2

Patch Set 5 : silly quirks are silly #

Unified diffs Side-by-side diffs Delta from patch set Stats (+25 lines, -10 lines) Patch
M base/files/file_tracing.cc View 1 2 3 4 2 chunks +25 lines, -10 lines 0 comments Download

Messages

Total messages: 32 (13 generated)
Dan Beam
/cc thestig@, oysteine@, and nduca@ for any input so a while ago, I added file-level ...
4 years, 5 months ago (2016-07-01 18:06:32 UTC) #2
Dan Beam
ping
4 years, 5 months ago (2016-07-06 23:06:40 UTC) #4
danakj
https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc#newcode10 base/files/file_tracing.cc:10: using base::subtle::AtomicWord; nit: you could put this in the ...
4 years, 5 months ago (2016-07-07 22:40:36 UTC) #5
Dan Beam
https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc#newcode10 base/files/file_tracing.cc:10: using base::subtle::AtomicWord; On 2016/07/07 22:40:36, danakj wrote: > nit: ...
4 years, 5 months ago (2016-07-07 23:13:48 UTC) #6
danakj
https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/1/base/files/file_tracing.cc#newcode25 base/files/file_tracing.cc:25: base::subtle::NoBarrier_Store(reinterpret_cast<AtomicWord*>(&g_provider), On 2016/07/07 23:13:48, Dan Beam wrote: > On ...
4 years, 5 months ago (2016-07-07 23:21:04 UTC) #7
Alexander Potapenko
https://codereview.chromium.org/2114993003/diff/40001/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/40001/base/files/file_tracing.cc#newcode19 base/files/file_tracing.cc:19: AtomicWord provider = base::subtle::NoBarrier_Load(&g_provider); You'll need Acquire_Load and Release_Store ...
4 years, 5 months ago (2016-07-09 10:32:04 UTC) #9
groby-ooo-7-16
The NoBarrier_Load approach I suggest in the comment feels disturbingly "clever". Vet _very_ carefully if ...
4 years, 5 months ago (2016-07-13 20:05:04 UTC) #11
Alexander Potapenko
On 2016/07/13 20:05:04, groby wrote: > The NoBarrier_Load approach I suggest in the comment feels ...
4 years, 5 months ago (2016-07-14 10:03:35 UTC) #12
Alexander Potapenko
Rachel is actually right that Acquire_Load is not strictly necessary here. What we need instead ...
4 years, 5 months ago (2016-07-14 10:15:20 UTC) #13
Dan Beam
switched to Acuire/Release and tested with --trace-startup=disabled-by-default-file --trace-startup-file=/tmp/startup-trace.json as well as just running a "Record" ...
4 years, 5 months ago (2016-07-14 17:49:30 UTC) #14
Dan Beam
On 2016/07/14 17:49:30, Dan Beam wrote: > switched to Acuire/Release and tested with *Acquire of ...
4 years, 5 months ago (2016-07-14 17:49:45 UTC) #15
Alexander Potapenko
On 2016/07/14 17:49:30, Dan Beam wrote: > switched to Acuire/Release and tested with > --trace-startup=disabled-by-default-file ...
4 years, 5 months ago (2016-07-14 18:02:08 UTC) #16
danakj
LGTM https://codereview.chromium.org/2114993003/diff/60001/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/60001/base/files/file_tracing.cc#newcode15 base/files/file_tracing.cc:15: AtomicWord g_provider = reinterpret_cast<AtomicWord>(nullptr); as a global, it ...
4 years, 5 months ago (2016-07-15 22:29:51 UTC) #22
Dan Beam
https://codereview.chromium.org/2114993003/diff/60001/base/files/file_tracing.cc File base/files/file_tracing.cc (right): https://codereview.chromium.org/2114993003/diff/60001/base/files/file_tracing.cc#newcode15 base/files/file_tracing.cc:15: AtomicWord g_provider = reinterpret_cast<AtomicWord>(nullptr); On 2016/07/15 22:29:50, danakj wrote: ...
4 years, 5 months ago (2016-07-15 23:01:41 UTC) #23
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/2114993003/80001
4 years, 5 months ago (2016-07-15 23:02:35 UTC) #26
groby-ooo-7-16
On 2016/07/14 10:15:20, Alexander Potapenko wrote: > Rachel is actually right that Acquire_Load is not ...
4 years, 5 months ago (2016-07-15 23:31:45 UTC) #27
commit-bot: I haz the power
Committed patchset #5 (id:80001)
4 years, 5 months ago (2016-07-16 00:14:06 UTC) #29
commit-bot: I haz the power
CQ bit was unchecked.
4 years, 5 months ago (2016-07-16 00:14:12 UTC) #30
commit-bot: I haz the power
4 years, 5 months ago (2016-07-16 00:15:13 UTC) #32
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/00dd6010cdda17cecd624c0f274aeb630f31fb83
Cr-Commit-Position: refs/heads/master@{#405907}

Powered by Google App Engine
This is Rietveld 408576698