Bug 239401 - Use ProcessTerminationReason::Unresponsive for unresponsive network processes
Summary: Use ProcessTerminationReason::Unresponsive for unresponsive network processes
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Simon Fraser (smfr)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-04-15 13:47 PDT by Simon Fraser (smfr)
Modified: 2022-04-19 09:00 PDT (History)
4 users (show)

See Also:


Attachments
Patch (7.59 KB, patch)
2022-04-15 13:48 PDT, Simon Fraser (smfr)
ews-feeder: commit-queue-
Details | Formatted Diff | Diff
Patch (9.90 KB, patch)
2022-04-18 12:27 PDT, Simon Fraser (smfr)
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2022-04-15 13:47:01 PDT
Use ProcessTerminationReason::Unresponsive for unresponsive network processes
Comment 1 Simon Fraser (smfr) 2022-04-15 13:48:37 PDT
Created attachment 457719 [details]
Patch
Comment 2 Chris Dumez 2022-04-15 13:51:33 PDT
Comment on attachment 457719 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=457719&action=review

> Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp:166
>                  weakThis->terminate();

Seems like it would be less error-prone to have an ProcessTerminationReason = ProcessTerminationReason::RequestedByClient optional parameter on terminate(), rather than relying on the call site to call networkProcessDidTerminate() by itself.
Comment 3 Simon Fraser (smfr) 2022-04-15 17:56:54 PDT
(In reply to Chris Dumez from comment #2)
> Comment on attachment 457719 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=457719&action=review
> 
> > Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp:166
> >                  weakThis->terminate();
> 
> Seems like it would be less error-prone to have an ProcessTerminationReason
> = ProcessTerminationReason::RequestedByClient optional parameter on
> terminate(), rather than relying on the call site to call
> networkProcessDidTerminate() by itself.

I considered that, but terminate() is virtual in AuxiliaryProcess so I'd have to change all of them, and the others use the pattern I followed here.
Comment 4 Simon Fraser (smfr) 2022-04-15 20:44:24 PDT
Comment on attachment 457719 [details]
Patch

Breaks some tests because terminate() needs to trigger logging.
Comment 5 Simon Fraser (smfr) 2022-04-18 12:27:19 PDT
Created attachment 457815 [details]
Patch
Comment 6 EWS 2022-04-19 08:59:21 PDT
Committed r293017 (249756@main): <https://commits.webkit.org/249756@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 457815 [details].
Comment 7 Radar WebKit Bug Importer 2022-04-19 09:00:17 PDT
<rdar://problem/91963662>