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

Issue 2249173003: Removes the references to shared workers from the all documents in being deleted frames (Closed)

Created:
4 years, 4 months ago by horo
Modified:
4 years, 3 months ago
Reviewers:
no sievers, nhiroki, alokp
CC:
chromium-reviews, creis+watch_chromium.org, nasko+codewatch_chromium.org, jam, darin-cc_chromium.org, kinuko+watch, blink-worker-reviews_chromium.org, pucchakayala, Ken Russell (switch to Gerrit)
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Removes the references to shared workers from the all documents in being deleted frames. So that we can shut down any shared workers that are no longer referenced by active documents without waiting for DocumentDetached IPC message. This will fix the race condition reported in https://crbug.com/636377#c11 BUG=639193 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/798a8b94726d3c439e6302998f31bc487f521ec8 Cr-Commit-Position: refs/heads/master@{#414427}

Patch Set 1 #

Patch Set 2 : posttask #

Patch Set 3 : Remove DCHECK_CURRENTLY_ON #

Patch Set 4 : add comments #

Patch Set 5 : Keep WorkerStoragePartitionId in SharedWorkerMessageFilter #

Total comments: 10

Patch Set 6 : incorporated nhiroki's comment #

Total comments: 4

Patch Set 7 : incorporated nhiroki's comment #

Patch Set 8 : Removes the references when frames are being deleted #

Total comments: 2

Patch Set 9 : use WebContentsObserver::RenderFrameDeleted #

Total comments: 6

Patch Set 10 : incorporated slevers's comment #

Patch Set 11 : reverted to Patch Set 8 #

Total comments: 2

Patch Set 12 : document_set_.erase(i++) #

Total comments: 6

Patch Set 13 : incorporated nhiroki's comment #

Unified diffs Side-by-side diffs Delta from patch set Stats (+78 lines, -0 lines) Patch
M content/browser/frame_host/render_frame_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +10 lines, -0 lines 0 comments Download
M content/browser/shared_worker/shared_worker_host.h View 1 2 3 4 5 6 7 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/shared_worker/shared_worker_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +13 lines, -0 lines 0 comments Download
M content/browser/shared_worker/shared_worker_service_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/shared_worker/shared_worker_service_impl.cc View 1 2 3 4 5 6 7 8 9 10 2 chunks +28 lines, -0 lines 0 comments Download
M content/browser/shared_worker/worker_document_set.h View 1 2 3 4 5 6 7 1 chunk +4 lines, -0 lines 0 comments Download
M content/browser/shared_worker/worker_document_set.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +13 lines, -0 lines 0 comments Download

Messages

Total messages: 92 (60 generated)
horo
nhiroki@ Could you please review this?
4 years, 4 months ago (2016-08-17 02:20:28 UTC) #15
nhiroki
https://codereview.chromium.org/2249173003/diff/80001/content/browser/renderer_host/render_process_host_impl.cc File content/browser/renderer_host/render_process_host_impl.cc (right): https://codereview.chromium.org/2249173003/diff/80001/content/browser/renderer_host/render_process_host_impl.cc#newcode1934 content/browser/renderer_host/render_process_host_impl.cc:1934: // the renderer process to shared workers without waiting ...
4 years, 4 months ago (2016-08-17 06:58:04 UTC) #18
horo
https://codereview.chromium.org/2249173003/diff/80001/content/browser/renderer_host/render_process_host_impl.cc File content/browser/renderer_host/render_process_host_impl.cc (right): https://codereview.chromium.org/2249173003/diff/80001/content/browser/renderer_host/render_process_host_impl.cc#newcode1934 content/browser/renderer_host/render_process_host_impl.cc:1934: // the renderer process to shared workers without waiting ...
4 years, 4 months ago (2016-08-17 07:15:55 UTC) #19
nhiroki
LGTM s/isteners_/listeners_/ in the CL subject and description https://codereview.chromium.org/2249173003/diff/100001/content/browser/renderer_host/render_process_host_impl.cc File content/browser/renderer_host/render_process_host_impl.cc (right): https://codereview.chromium.org/2249173003/diff/100001/content/browser/renderer_host/render_process_host_impl.cc#newcode1930 content/browser/renderer_host/render_process_host_impl.cc:1930: // ...
4 years, 4 months ago (2016-08-17 07:34:06 UTC) #22
horo
https://codereview.chromium.org/2249173003/diff/100001/content/browser/renderer_host/render_process_host_impl.cc File content/browser/renderer_host/render_process_host_impl.cc (right): https://codereview.chromium.org/2249173003/diff/100001/content/browser/renderer_host/render_process_host_impl.cc#newcode1930 content/browser/renderer_host/render_process_host_impl.cc:1930: // the renderer process to shared workers without waiting ...
4 years, 4 months ago (2016-08-17 07:38:46 UTC) #26
horo
kbr@ Could you please review content/browser/renderer_host/render_process_host_impl.*?
4 years, 4 months ago (2016-08-17 07:40:33 UTC) #28
horo
+CC: alokp@, pucchakayala@
4 years, 4 months ago (2016-08-17 07:41:37 UTC) #29
horo
kbr@ Ah sorry, this CL is not related to GPU-related stuff.
4 years, 4 months ago (2016-08-17 15:35:01 UTC) #33
horo
sievers@ Could you please review content/browser/renderer_host/render_process_host_impl.*?
4 years, 4 months ago (2016-08-17 15:37:07 UTC) #35
no sievers
On 2016/08/17 15:37:07, horo wrote: > sievers@ > Could you please review > content/browser/renderer_host/render_process_host_impl.*? It ...
4 years, 4 months ago (2016-08-17 19:32:24 UTC) #36
horo
> It sounds like some problem where we don't handle widgets being torn down from ...
4 years, 4 months ago (2016-08-18 08:26:09 UTC) #45
horo
sievers@ Could you please review Patch Set 8?
4 years, 4 months ago (2016-08-22 11:56:26 UTC) #49
alokp
horo@: Thanks for this patch. Would you mind committing the instrumentation back (which was reverted ...
4 years, 4 months ago (2016-08-22 17:07:40 UTC) #51
no sievers
https://codereview.chromium.org/2249173003/diff/140001/content/browser/shared_worker/shared_worker_host.h File content/browser/shared_worker/shared_worker_host.h (right): https://codereview.chromium.org/2249173003/diff/140001/content/browser/shared_worker/shared_worker_host.h#newcode63 content/browser/shared_worker/shared_worker_host.h:63: void RenderFrameDetached(int render_process_id, int render_frame_id); Could this even just ...
4 years, 4 months ago (2016-08-22 21:13:37 UTC) #52
horo
https://codereview.chromium.org/2249173003/diff/140001/content/browser/shared_worker/shared_worker_host.h File content/browser/shared_worker/shared_worker_host.h (right): https://codereview.chromium.org/2249173003/diff/140001/content/browser/shared_worker/shared_worker_host.h#newcode63 content/browser/shared_worker/shared_worker_host.h:63: void RenderFrameDetached(int render_process_id, int render_frame_id); On 2016/08/22 21:13:37, sievers ...
4 years, 4 months ago (2016-08-23 05:11:34 UTC) #55
horo
On 2016/08/22 17:07:40, alokp wrote: > horo@: Thanks for this patch. > > Would you ...
4 years, 4 months ago (2016-08-23 05:34:18 UTC) #56
horo
nhiroki@ Could you plase review Patch Set 9. It is drastically different from Patch Set ...
4 years, 4 months ago (2016-08-23 05:37:07 UTC) #57
no sievers
https://codereview.chromium.org/2249173003/diff/160001/content/browser/shared_worker/shared_worker_service_impl.cc File content/browser/shared_worker/shared_worker_service_impl.cc (right): https://codereview.chromium.org/2249173003/diff/160001/content/browser/shared_worker/shared_worker_service_impl.cc#newcode129 content/browser/shared_worker/shared_worker_service_impl.cc:129: // content::WebContentsObserver overrides. I wonder if this still needs ...
4 years, 3 months ago (2016-08-23 20:32:42 UTC) #60
horo
https://codereview.chromium.org/2249173003/diff/160001/content/browser/shared_worker/shared_worker_service_impl.cc File content/browser/shared_worker/shared_worker_service_impl.cc (right): https://codereview.chromium.org/2249173003/diff/160001/content/browser/shared_worker/shared_worker_service_impl.cc#newcode129 content/browser/shared_worker/shared_worker_service_impl.cc:129: // content::WebContentsObserver overrides. On 2016/08/23 20:32:42, sievers wrote: > ...
4 years, 3 months ago (2016-08-24 01:15:49 UTC) #63
no sievers
> > If you agree, I'd like to go with Patch Set 8. sounds good ...
4 years, 3 months ago (2016-08-24 23:14:45 UTC) #66
horo
On 2016/08/24 23:14:45, sievers wrote: > > > > If you agree, I'd like to ...
4 years, 3 months ago (2016-08-24 23:33:11 UTC) #68
no sievers
https://codereview.chromium.org/2249173003/diff/200001/content/browser/shared_worker/worker_document_set.cc File content/browser/shared_worker/worker_document_set.cc (right): https://codereview.chromium.org/2249173003/diff/200001/content/browser/shared_worker/worker_document_set.cc#newcode77 content/browser/shared_worker/worker_document_set.cc:77: document_set_.erase(item_to_delete); same as: document_set_.erase(i++)
4 years, 3 months ago (2016-08-24 23:44:37 UTC) #70
horo
https://codereview.chromium.org/2249173003/diff/200001/content/browser/shared_worker/worker_document_set.cc File content/browser/shared_worker/worker_document_set.cc (right): https://codereview.chromium.org/2249173003/diff/200001/content/browser/shared_worker/worker_document_set.cc#newcode77 content/browser/shared_worker/worker_document_set.cc:77: document_set_.erase(item_to_delete); On 2016/08/24 23:44:37, sievers wrote: > same as: ...
4 years, 3 months ago (2016-08-25 00:03:29 UTC) #72
no sievers
lgtm
4 years, 3 months ago (2016-08-25 01:07:32 UTC) #74
horo
nhiroki@ Could you plase review Patch Set 12. It is drastically different from Patch Set ...
4 years, 3 months ago (2016-08-25 01:22:45 UTC) #75
nhiroki
lgtm with nits https://codereview.chromium.org/2249173003/diff/220001/content/browser/shared_worker/shared_worker_host.cc File content/browser/shared_worker/shared_worker_host.cc (right): https://codereview.chromium.org/2249173003/diff/220001/content/browser/shared_worker/shared_worker_host.cc#newcode139 content/browser/shared_worker/shared_worker_host.cc:139: // Walk all instances and remove ...
4 years, 3 months ago (2016-08-25 09:38:19 UTC) #78
horo
https://codereview.chromium.org/2249173003/diff/220001/content/browser/shared_worker/shared_worker_host.cc File content/browser/shared_worker/shared_worker_host.cc (right): https://codereview.chromium.org/2249173003/diff/220001/content/browser/shared_worker/shared_worker_host.cc#newcode139 content/browser/shared_worker/shared_worker_host.cc:139: // Walk all instances and remove the all documents ...
4 years, 3 months ago (2016-08-25 10:55:55 UTC) #81
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/2249173003/240001
4 years, 3 months ago (2016-08-25 13:15:40 UTC) #86
commit-bot: I haz the power
Committed patchset #13 (id:240001)
4 years, 3 months ago (2016-08-25 14:03:08 UTC) #88
commit-bot: I haz the power
Patchset 13 (id:??) landed as https://crrev.com/798a8b94726d3c439e6302998f31bc487f521ec8 Cr-Commit-Position: refs/heads/master@{#414427}
4 years, 3 months ago (2016-08-25 14:06:46 UTC) #90
alokp
On 2016/08/25 14:06:46, commit-bot: I haz the power wrote: > Patchset 13 (id:??) landed as ...
4 years, 3 months ago (2016-08-26 17:43:28 UTC) #91
horo
4 years, 3 months ago (2016-08-28 11:32:17 UTC) #92
Message was sent while issue was closed.
On 2016/08/26 17:43:28, alokp wrote:
> On 2016/08/25 14:06:46, commit-bot: I haz the power wrote:
> > Patchset 13 (id:??) landed as
> > https://crrev.com/798a8b94726d3c439e6302998f31bc487f521ec8
> > Cr-Commit-Position: refs/heads/master@{#414427}
> 
> Would you mind committing the instrumentation back (which was reverted
recently)
> to ensure that this fix works as intended:
>
https://chromium.googlesource.com/chromium/src/+/529173d1bbeb53b3f9438648fad2...

Relanded.
https://codereview.chromium.org/2286003002/

Powered by Google App Engine
This is Rietveld 408576698