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

Issue 1988983003: [BlobStorage] Fix IPC race in sending IPC and posting to IO thread (Closed)

Created:
4 years, 7 months ago by jkarlin
Modified:
4 years, 6 months ago
Reviewers:
CC:
chromium-reviews, darin-cc_chromium.org, jam
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[BlobStorage] Fix IPC race in sending IPC and posting to IO thread BlobTransportController::InitiateBlobTransfer relied on IPC messages to be sent from the IO thread, but hopping to the IO thread is not part of the contract. Now that mojo channels are here, IPCs can be sent directly. InitiateBlobTransfer specifically required a PostTask event to run on the IO thread before two IPC messages were sent. This CL enforces that by moving the IPC message sends to the IO thread after the PostTask event has run. BUG=612358

Patch Set 1 #

Patch Set 2 : Fix one test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+32 lines, -15 lines) Patch
M content/child/blob_storage/blob_transport_controller.h View 1 chunk +7 lines, -0 lines 0 comments Download
M content/child/blob_storage/blob_transport_controller.cc View 2 chunks +23 lines, -13 lines 0 comments Download
M content/child/blob_storage/blob_transport_controller_unittest.cc View 1 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 3 (3 generated)
jkarlin
Patchset #2 (id:20001) has been deleted
4 years, 7 months ago (2016-05-18 17:08:50 UTC) #1
jkarlin
Patchset #3 (id:60001) has been deleted
4 years, 7 months ago (2016-05-18 19:19:48 UTC) #2
jkarlin
4 years, 6 months ago (2016-06-14 11:02:31 UTC) #3
Description was changed from

==========
[BlobStorage] Fix IPC race in sending IPC and posting to IO thread

BlobTransportController::InitiateBlobTransfer relied on IPC messages to be sent
from the IO thread, but hopping to the IO thread is not part of the contract.
Now that mojo channels are here, IPCs can be sent directly.

InitiateBlobTransfer specifically required a PostTask event to run on the IO
thread before two IPC messages were sent. This CL enforces that by moving the
IPC message sends to the IO thread after the PostTask event has run.

BUG=612358
==========

to

==========
[BlobStorage] Fix IPC race in sending IPC and posting to IO thread

BlobTransportController::InitiateBlobTransfer relied on IPC messages to be sent
from the IO thread, but hopping to the IO thread is not part of the contract.
Now that mojo channels are here, IPCs can be sent directly.

InitiateBlobTransfer specifically required a PostTask event to run on the IO
thread before two IPC messages were sent. This CL enforces that by moving the
IPC message sends to the IO thread after the PostTask event has run.

BUG=612358
==========

Powered by Google App Engine
This is Rietveld 408576698