RESOLVED FIXED 189851
Extending the lifetime of a NetworkProcessProxy / StorageProcessProxy may cause it to have a stale WebProcessPool pointer
https://bugs.webkit.org/show_bug.cgi?id=189851
Summary Extending the lifetime of a NetworkProcessProxy / StorageProcessProxy may cau...
Chris Dumez
Reported 2018-09-21 12:46:29 PDT
Extending the lifetime of a NetworkProcessProxy / StorageProcessProxy may cause it to have a stale WebProcessPool pointer, which is error-prone. We got got by this recently for the NetworkProcess.
Attachments
Patch (12.63 KB, patch)
2018-09-21 12:54 PDT, Chris Dumez
no flags
Patch (13.12 KB, patch)
2018-09-21 14:14 PDT, Chris Dumez
no flags
Patch (11.90 KB, patch)
2018-09-24 15:15 PDT, Chris Dumez
no flags
Chris Dumez
Comment 1 2018-09-21 12:54:16 PDT
Chris Dumez
Comment 2 2018-09-21 14:14:21 PDT
WebKit Commit Bot
Comment 3 2018-09-21 16:18:21 PDT
Comment on attachment 350426 [details] Patch Clearing flags on attachment: 350426 Committed r236368: <https://trac.webkit.org/changeset/236368>
WebKit Commit Bot
Comment 4 2018-09-21 16:18:22 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 5 2018-09-21 16:19:35 PDT
Chris Dumez
Comment 6 2018-09-24 13:31:37 PDT
Reverted r236368 for reason: Caused WebKit.NetworkProcessCrashWithPendingConnection API test to crash (Bug 189926) Committed r236425: <https://trac.webkit.org/changeset/236425>
Chris Dumez
Comment 7 2018-09-24 15:15:43 PDT
Chris Dumez
Comment 8 2018-09-25 10:39:12 PDT
ping review?
Geoffrey Garen
Comment 9 2018-09-25 11:21:15 PDT
Comment on attachment 350698 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=350698&action=review > Source/WebKit/UIProcess/Plugins/PluginProcessProxy.h:69 > +class PluginProcessProxy final : public ChildProcessProxy, public ThreadSafeRefCounted<PluginProcessProxy> { Is PluginProcessProxy somehow immune to "process pool deallocated" issues?
Geoffrey Garen
Comment 10 2018-09-25 11:22:03 PDT
Shouldn't there be some code in this patch that removes some temporary RefPtr<StorageProcessProxy> or RefPtr<NetworkProcessProxy> objects?
WebKit Commit Bot
Comment 11 2018-09-25 11:31:29 PDT
Comment on attachment 350698 [details] Patch Clearing flags on attachment: 350698 Committed r236464: <https://trac.webkit.org/changeset/236464>
WebKit Commit Bot
Comment 12 2018-09-25 11:31:32 PDT
All reviewed patches have been landed. Closing bug.
Chris Dumez
Comment 13 2018-09-25 11:57:56 PDT
(In reply to Geoffrey Garen from comment #9) > Comment on attachment 350698 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=350698&action=review > > > Source/WebKit/UIProcess/Plugins/PluginProcessProxy.h:69 > > +class PluginProcessProxy final : public ChildProcessProxy, public ThreadSafeRefCounted<PluginProcessProxy> { > > Is PluginProcessProxy somehow immune to "process pool deallocated" issues? PluginProcessProxy does not have any reference to its WebProcessPool.
Chris Dumez
Comment 14 2018-09-25 11:58:19 PDT
(In reply to Geoffrey Garen from comment #10) > Shouldn't there be some code in this patch that removes some temporary > RefPtr<StorageProcessProxy> or RefPtr<NetworkProcessProxy> objects? There are none left or my patch would not build.
Note You need to log in before you can comment on or make changes to this bug.