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

Issue 2003353003: cc: Ensure members needed on task completion get called on valid thread. (Closed)

Created:
4 years, 6 months ago by prashant.n
Modified:
4 years, 6 months ago
Reviewers:
reveman, vmpstr, ericrk
CC:
cc-bugs_chromium.org, chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@remove_task_new_state_in_dtor
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

cc: Ensure members needed on task completion get called on valid thread. Few members needed for task completion are not thread safe. e.g. Tile. They should not be called on worker thread. To ensure these are called on valid thread, always access them with thread_checker. BUG=613812 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Committed: https://crrev.com/7c2861c68d1a70d00b07adb28ee27d87b71110d5 Cr-Commit-Position: refs/heads/master@{#396637}

Patch Set 1 #

Total comments: 7

Patch Set 2 : another approach, feedback #

Total comments: 2

Patch Set 3 : feedback #

Total comments: 11

Patch Set 4 : feedback #

Patch Set 5 : rebase #

Patch Set 6 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+32 lines, -26 lines) Patch
M cc/tiles/tile_manager.cc View 1 2 3 4 6 chunks +32 lines, -26 lines 0 comments Download

Depends on Patchset:

Messages

Total messages: 39 (15 generated)
prashant.n
ptal.
4 years, 6 months ago (2016-05-24 13:18:29 UTC) #3
prashant.n
https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc#newcode46 cc/tiles/tile_manager.cc:46: // OnTaskCompleted() in RasterTaskImpl. crbug.com/613812. I'll remove this comment.
4 years, 6 months ago (2016-05-24 15:46:09 UTC) #4
prashant.n
pls. review approach. https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc#newcode53 cc/tiles/tile_manager.cc:53: }; Another approach - 1. Have ...
4 years, 6 months ago (2016-05-25 03:48:04 UTC) #5
reveman
https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc#newcode49 cc/tiles/tile_manager.cc:49: struct CompletionData { not sure moving it to a ...
4 years, 6 months ago (2016-05-25 04:19:44 UTC) #6
prashant.n
https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/1/cc/tiles/tile_manager.cc#newcode49 cc/tiles/tile_manager.cc:49: struct CompletionData { On 2016/05/25 04:19:44, reveman wrote: > ...
4 years, 6 months ago (2016-05-25 04:25:06 UTC) #7
prashant.n
> Yes for logging it is used (frame_viewer_instrumentation::ScopedRasterTask). > I'll check on this if tile_id ...
4 years, 6 months ago (2016-05-25 14:17:22 UTC) #9
prashant.n
reveman@, can you pls. take a look at this? https://codereview.chromium.org/2003353003/diff/20001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/20001/cc/tiles/tile_manager.cc#newcode103 cc/tiles/tile_manager.cc:103: ...
4 years, 6 months ago (2016-05-26 13:43:22 UTC) #10
reveman
I think a thread checker and good comments explaining that these members can't be used ...
4 years, 6 months ago (2016-05-26 14:49:03 UTC) #11
prashant.n
> the thread checker is alleady a noop in non-debug builds. Yes. I unnoticed it. ...
4 years, 6 months ago (2016-05-26 15:22:26 UTC) #12
prashant.n
ptal.
4 years, 6 months ago (2016-05-26 15:52:05 UTC) #14
reveman
https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode135 cc/tiles/tile_manager.cc:135: void* tile_ptr_; Can you change this to a Tile::Id? ...
4 years, 6 months ago (2016-05-26 19:21:58 UTC) #16
vmpstr
https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode47 cc/tiles/tile_manager.cc:47: RasterTaskImpl(TileManager* tile_manager, Quite a few of these variables are ...
4 years, 6 months ago (2016-05-26 19:37:45 UTC) #17
reveman
https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode135 cc/tiles/tile_manager.cc:135: void* tile_ptr_; On 2016/05/26 at 19:37:45, vmpstr wrote: > ...
4 years, 6 months ago (2016-05-26 19:45:04 UTC) #18
prashant.n
https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode47 cc/tiles/tile_manager.cc:47: RasterTaskImpl(TileManager* tile_manager, I'll check and modify. https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode117 cc/tiles/tile_manager.cc:117: base::ThreadChecker ...
4 years, 6 months ago (2016-05-26 22:02:18 UTC) #19
prashant.n
https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc File cc/tiles/tile_manager.cc (right): https://codereview.chromium.org/2003353003/diff/40001/cc/tiles/tile_manager.cc#newcode122 cc/tiles/tile_manager.cc:122: TileManager* tile_manager_; I'll keep with comments now. Later if ...
4 years, 6 months ago (2016-05-27 05:05:08 UTC) #20
prashant.n
ptal.
4 years, 6 months ago (2016-05-27 06:40:27 UTC) #21
reveman
lgtm
4 years, 6 months ago (2016-05-27 13:06:10 UTC) #22
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2003353003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2003353003/60001
4 years, 6 months ago (2016-05-27 13:18:24 UTC) #24
commit-bot: I haz the power
Try jobs failed on following builders: ios-simulator on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/12615) ios-simulator-gn on tryserver.chromium.mac (JOB_FAILED, ...
4 years, 6 months ago (2016-05-27 13:20:47 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2003353003/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2003353003/80001
4 years, 6 months ago (2016-05-27 15:09:07 UTC) #30
commit-bot: I haz the power
Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_android_rel_ng/builds/77936)
4 years, 6 months ago (2016-05-27 17:16:57 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/2003353003/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/2003353003/100001
4 years, 6 months ago (2016-05-28 06:49:05 UTC) #35
commit-bot: I haz the power
Committed patchset #6 (id:100001)
4 years, 6 months ago (2016-05-28 08:53:39 UTC) #37
commit-bot: I haz the power
4 years, 6 months ago (2016-05-28 08:55:04 UTC) #39
Message was sent while issue was closed.
Patchset 6 (id:??) landed as
https://crrev.com/7c2861c68d1a70d00b07adb28ee27d87b71110d5
Cr-Commit-Position: refs/heads/master@{#396637}

Powered by Google App Engine
This is Rietveld 408576698