Bug 217140

Summary: [GPU Process] Canvas layout tests occasionally crash the web process under PutImageData::apply
Product: WebKit Reporter: Wenson Hsieh <wenson_hsieh>
Component: CanvasAssignee: Wenson Hsieh <wenson_hsieh>
Status: RESOLVED FIXED    
Severity: Normal CC: dino, thorton, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Wenson Hsieh 2020-09-30 12:22:59 PDT
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   com.apple.JavaScriptCore      	0x000000039c08576e WTFCrash + 14 (Assertions.cpp:295)
1   com.apple.WebCore             	0x000000037deeb05b WTFCrashWithInfo(int, char const*, char const*, int) + 27 (Assertions.h:671)
2   com.apple.WebCore             	0x0000000381e13be5 WebCore::DisplayList::PutImageData::apply(WebCore::GraphicsContext&) const + 101 (DisplayListItems.cpp:1209)
3   com.apple.WebCore             	0x0000000381e374b7 WebCore::DisplayList::Replayer::replay(WebCore::FloatRect const&, bool) + 1207 (DisplayListReplayer.cpp:69)
4   com.apple.WebCore             	0x0000000381e0ea34 WebCore::DisplayList::DrawingContext::replayDisplayList(WebCore::GraphicsContext&) + 212 (DisplayListDrawingContext.cpp:65)
5   com.apple.WebKit              	0x000000037154f3f2 WebCore::DisplayList::ImageBuffer<WebKit::ImageBufferShareableIOSurfaceBackend>::flushDrawingContext() + 114 (DisplayListImageBuffer.h:79)
6   com.apple.WebKit              	0x000000037154f609 WebCore::DisplayList::ImageBuffer<WebKit::ImageBufferShareableIOSurfaceBackend>::~ImageBuffer() + 105 (DisplayListImageBuffer.h:66)
7   com.apple.WebKit              	0x000000037154f972 WebKit::RemoteImageBuffer<WebKit::ImageBufferShareableIOSurfaceBackend>::~RemoteImageBuffer() + 50 (RemoteImageBuffer.h:40)
8   com.apple.WebKit              	0x000000037154ebf5 WebKit::RemoteImageBuffer<WebKit::ImageBufferShareableIOSurfaceBackend>::~RemoteImageBuffer() + 21 (RemoteImageBuffer.h:40)
9   com.apple.WebKit              	0x000000037154ec1c WebKit::RemoteImageBuffer<WebKit::ImageBufferShareableIOSurfaceBackend>::~RemoteImageBuffer() + 28 (RemoteImageBuffer.h:40)
10  com.apple.WebCore             	0x000000037ede644f std::__1::default_delete<WebCore::ImageBuffer>::operator()(WebCore::ImageBuffer*) const + 47 (memory:2368)
11  com.apple.WebCore             	0x000000037ede63cf std::__1::unique_ptr<WebCore::ImageBuffer, std::__1::default_delete<WebCore::ImageBuffer> >::reset(WebCore::ImageBuffer*) + 95 (memory:2623)
12  com.apple.WebCore             	0x000000037ede6369 std::__1::unique_ptr<WebCore::ImageBuffer, std::__1::default_delete<WebCore::ImageBuffer> >::~unique_ptr() + 25 (memory:2577)
13  com.apple.WebCore             	0x000000037ede6345 std::__1::unique_ptr<WebCore::ImageBuffer, std::__1::default_delete<WebCore::ImageBuffer> >::~unique_ptr() + 21 (memory:2577)
14  com.apple.WebCore             	0x0000000380ffe553 WebCore::HTMLCanvasElement::~HTMLCanvasElement() + 195 (HTMLCanvasElement.cpp:157)
15  com.apple.WebCore             	0x0000000380ffe5e5 WebCore::HTMLCanvasElement::~HTMLCanvasElement() + 21 (HTMLCanvasElement.cpp:149)
16  com.apple.WebCore             	0x0000000380ffe64c WebCore::HTMLCanvasElement::~HTMLCanvasElement() + 28 (HTMLCanvasElement.cpp:149)
Comment 1 Wenson Hsieh 2020-09-30 12:55:29 PDT
Created attachment 410148 [details]
Patch
Comment 2 EWS 2020-09-30 13:54:50 PDT
Committed r267806: <https://trac.webkit.org/changeset/267806>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410148 [details].
Comment 3 Radar WebKit Bug Importer 2020-09-30 13:55:18 PDT
<rdar://problem/69807031>