[Webkit-unassigned] [Bug 261685] New: WK WebView Crash when loading / unloading images from VRAM while switching WebGL scene

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Sep 18 11:00:48 PDT 2023


            Bug ID: 261685
           Summary: WK WebView Crash when loading / unloading images from
                    VRAM while switching WebGL scene
           Product: WebKit
           Version: Safari 16
          Hardware: iPhone / iPad
                OS: iOS 16
            Status: NEW
          Severity: Critical
          Priority: P1
         Component: WebKit Misc.
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: paulrhomberg01 at gmail.com

Created attachment 467738

  --> https://bugs.webkit.org/attachment.cgi?id=467738&action=review

Xcode project. Tested on Iphone 11 Pro

When loading or unloading images into video memory on iPhone inside of a WebView the application sometimes crashes. This happens more often when switching WebGL scenes or stressing the CPU. 
This does not seem to be related to the amount of vram being used, as it also occurs when unloading images from vram as well. 

I have attached the Xcode file. To test this application, launch the App on an actual device (it doesn't occur in the simulator, tested on iPhone 11 Pro) and click the "Switch" button around 5 times and always wait for the short loading screen + an additional second in between clicking the button. After that procedure, relaunch the App if it hasn't crashed and try again. This seems to work pretty well on my iPhone, I have a crash rate of around 20%. I have uploaded a video of how this could look here: https://drive.google.com/file/d/1rQlc8EQe4N_sDAcBen63S7CcT031AbX8/view?usp=drivesdk

This WebView application was made using the Construct 3 game engine. The developer claims that this bug is not related to the engine but rather WebKit. I have tested this exact app on various android devices, including ones that are far less powerful than the 11 pro and have not experienced crashes, even with devices that have 2GB of RAM. 

This is the crash log: 
2023-09-18 19:13:39.751673+0200 ios Crash example[13778:884444] [Process] 0x114004110 - [PID=13782] WebProcessProxy::didClose: (web process 0 crash)
2023-09-18 19:13:39.752061+0200 ios Crash example[13778:884444] [Process] 0x114004110 - [PID=13782] WebProcessProxy::processDidTerminateOrFailedToLaunch: reason=Crash
2023-09-18 19:13:39.753803+0200 ios Crash example[13778:884444] [ProcessSuspension] 0x11301c1e0 - ProcessAssertion: Failed to acquire RBS Background assertion 'XPCConnectionTerminationWatchdog' for process because PID 0 is invalid
2023-09-18 19:13:39.754144+0200 ios Crash example[13778:885053] [ProcessSuspension] 0x11301c1e0 - ProcessAssertion::acquireSync Failed to acquire RBS assertion 'XPCConnectionTerminationWatchdog' for process with PID=0, error: (null)
2023-09-18 19:13:39.769098+0200 ios Crash example[13778:884444] [Process] 0x105841a18 - [pageProxyID=14, webPageID=15, PID=13782] WebPageProxy::processDidTerminate: (pid 13782), reason=Crash
2023-09-18 19:13:39.799732+0200 ios Crash example[13778:884444] [Loading] 0x105841a18 - [pageProxyID=14, webPageID=15, PID=13782] WebPageProxy::dispatchProcessDidTerminate: reason=Crash
2023-09-18 19:13:39.869425+0200 ios Crash example[13778:884444] [Process] 0x1130807a0 - GPUProcessProxy::gpuProcessExited: reason=IdleExit
2023-09-18 19:13:39.869567+0200 ios Crash

You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230918/ce6d390c/attachment.htm>

More information about the webkit-unassigned mailing list