Bug 210108

Summary: Network process crashes handling HTTP2 GRPC-Web response sent by recent Envoy versions
Product: WebKit Reporter: Julien Roncaglia <julien.roncaglia>
Component: Page LoadingAssignee: Nobody <webkit-unassigned>
Severity: Normal CC: beidson
Priority: P2    
Version: Safari 13   
Hardware: Mac   
OS: macOS 10.15   
Description Flags
Crash file none

Description Julien Roncaglia 2020-04-07 06:50:31 PDT
Created attachment 395674 [details]
Crash file

One of our internal applications access a service via GRPC-Web over HTTP/2 (Website & API aren't public so I can't provide an easy public reproduction but it reproduces 100% of the time) it was working correctly before a technical upgrade on our side but is now crashing the network process of safari.

This problem has also been noticed by multiple envoy users see https://github.com/envoyproxy/envoy/issues/10514 and https://github.com/grpc/grpc-web/issues/759

The message visible in the safari console is : Failed to load resource: WebKit encountered an internal error
The message in the system log is: WebLoaderStrategy::networkProcessCrashed
The crash report generated are joined & all exhibit the following:


Crashed Thread: 5 Dispatch queue: com.apple.CFNetwork.HTTP2.HTTP2Stream

Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000

Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [57872]


Other info:
This endpoint is hosted inside kubernetes & recently switched from envoy 1.12 to 1.13

Safari: 13.0.5 (14608.5.12)
Mac: Mojave 10.14.6 (18G3020), also reproduced on Catalina
Comment 1 Julien Roncaglia 2020-04-07 06:52:07 PDT
Also sent via apple FeedbackAssistant FB7654794
Comment 2 Alexey Proskuryakov 2020-04-07 11:54:53 PDT
Thank you! This issue is below WebKit, so it will continue to be tracked internally by Apple via your Feedback Assistant report.