New issue
Advanced search Search tips

Issue 823827 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

GPU process crash seen while running several WebGL demos concurrently

Project Member Reported by kbr@chromium.org, Mar 20 2018

Issue description

Chrome Version: 65.0.3325.162 (Official Build) (64-bit)
Revision	5d04e9e9c8ce31bee0923a8c326a7e9e19c492a3-refs/branch-heads/3325@{#695}
OS: macOS 10.13.3

What steps will reproduce the problem?
(1) On a MacBook Pro (Retina, 15-inch, Late 2013) with NVIDIA discrete GPU, run several WebGL demos in multiple tabs; for example, the demos from this presentation:
https://www.khronos.org/webgl/wiki/Presentations#Khronos_Developer_Day_at_GDC_2018
(2) Switch among these tabs.

What is the expected result?

Expect demos to run reliably.


What happens instead?

"Rats, WebGL hit a snag" is raised occasionally.

Here are two crash reports:

ab07cef177480795
4adf40bc595a8b85

The first one is the most suspicious. It's a crash while deleting a texture. I wonder whether there is an accounting bug in the driver and whether we should manually traverse the context and all objects which might refer to that texture (like framebuffers) and unbind it before deleting it.

This is also just a bug sighting. I expect to close this as WontFix.



Thread 0 (id: 4581151) CRASHED [0x00000000 / 0x00000000 @ 0x00007fff5b3bbe3e ] MAGIC SIGNATURE THREAD
Stack Quality66%Show frame trust levels
0x00007fff5b3bbe3e	(libsystem_kernel.dylib + 0x0001be3e )	__pthread_kill
0x00007fff5b318311	(libsystem_c.dylib + 0x0005d311 )	abort
0x00007fff4c23315c	(libGPUSupportMercury.dylib + 0x0000215c )	gpusGenerateCrashLog
0x00007fff2e49257e	(GeForceGLDriver + 0x0031957e )	
0x00007fff4c234541	(libGPUSupportMercury.dylib + 0x00003541 )	gpusSubmitDataBuffers
0x00007fff2e48da3d	(GeForceGLDriver + 0x00314a3d )	
0x00007fff2e48d728	(GeForceGLDriver + 0x00314728 )	
0x00007fff3dd6d268	(GLEngine + 0x0013e268 )	gleUnbindTextureObject
0x00007fff3dd3dc3b	(GLEngine + 0x0010ec3b )	gleUnbindDeleteHashNamesAndObjects
0x00007fff3dc4c84f	(GLEngine + 0x0001d84f )	glDeleteTextures_Exec
0x0000000109a90ba9	(Google Chrome Framework -texture_manager.cc:581 )	gpu::gles2::Texture::RemoveTextureRef(gpu::gles2::TextureRef*, bool)
0x0000000109a9452b	(Google Chrome Framework -texture_manager.cc:1925 )	gpu::gles2::TextureRef::~TextureRef()
0x00000001099e1159	(Google Chrome Framework -ref_counted.h:334 )	gpu::gles2::TextureAttachment::~TextureAttachment()
0x00000001099e0351	(Google Chrome Framework -ref_counted.h:334 )	gpu::gles2::Framebuffer::AttachTexture(unsigned int, gpu::gles2::TextureRef*, unsigned int, int, int)
0x0000000109a15e97	(Google Chrome Framework -gles2_cmd_decoder.cc:8150 )	gpu::gles2::GLES2DecoderImpl::DoFramebufferTexture2DCommon(char const*, unsigned int, unsigned int, unsigned int, unsigned int, int, int)
0x00000001099ed3fc	(Google Chrome Framework -gles2_cmd_decoder.cc:8072 )	gpu::gles2::GLES2DecoderImpl::HandleFramebufferTexture2D(unsigned int, void const volatile*)
0x0000000109a0ff12	(Google Chrome Framework -gles2_cmd_decoder.cc:5551 )	gpu::error::Error gpu::gles2::GLES2DecoderImpl::DoCommandsImpl<false>(unsigned int, void const volatile*, int, int*)
0x00000001094b9667	(Google Chrome Framework -command_buffer_service.cc:90 )	gpu::CommandBufferService::Flush(int, gpu::AsyncAPIInterface*)
0x0000000109b21726	(Google Chrome Framework -command_buffer_stub.cc:634 )	gpu::CommandBufferStub::OnAsyncFlush(int, unsigned int, bool)
0x0000000109b2155b	(Google Chrome Framework -tuple.h:52 )	bool IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta, std::__1::tuple<int, unsigned int, bool>, void>::Dispatch<gpu::CommandBufferStub, gpu::CommandBufferStub, void, void (gpu::CommandBufferStub::*)(int, unsigned int, bool)>(IPC::Message const*, gpu::CommandBufferStub*, gpu::CommandBufferStub*, void*, void (gpu::CommandBufferStub::*)(int, unsigned int, bool))
...

 

Comment 1 by kbr@chromium.org, Mar 20 2018

Summary: GPU process crash seen while running several WebGL demos concurrently (was: Crash seen while running several WebGL demos concurrently)
Cc: -oetu...@nvidia.com

Sign in to add a comment