New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 856887 link

Starred by 1 user

Issue metadata

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

Blocked on:
issue 672485



Sign in to add a comment

Timeout in Apple's GLSL compiler

Reported by chromium...@gmail.com, Jun 27 2018

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3473.0 Safari/537.36

Steps to reproduce the problem:
1. Load the test case

What is the expected behavior?
No crash

What went wrong?
Crash

Crashed report ID: aa0e2e2abc827c8b

How much crashed? Just one tab

Is it a problem with a plugin? N/A 

Did this work before? N/A 

Chrome version: 69.0.3473.0  Channel: canary
OS Version: OS X 10.12.6
Flash Version:
 
sw_overflow_chrome (2).html
2.4 KB View Download
Cc: sindhu.chelamcherla@chromium.org
Components: Internals>GPU
Unable to reproduce this issue on 69.0.3473.0 using Mac 10.13.3 with attached html file. No crash is seen on loading above HTML file. Please find the stack trace for above crash id

Stack Trace:
=================

Thread 0 (id: 0x787a) MAGIC SIGNATURE THREAD
Stack Quality84%Show frame trust levels
0x00007fffb75469d3	(libGLProgrammability.dylib + 0x000db9d3 )	glpTypesEqual
0x00007fffb754bd0e	(libGLProgrammability.dylib + 0x000e0d0e )	glpTypedValuesEqual
0x00007fffb74f6347	(libGLProgrammability.dylib + 0x0008b347 )	glpTypedValueHashGet
0x00007fffb74f63ab	(libGLProgrammability.dylib + 0x0008b3ab )	glpTypedValueHashCache
0x00007fffb754bd4a	(libGLProgrammability.dylib + 0x000e0d4a )	glpRemapValue
0x00007fffb757130e	(libGLProgrammability.dylib + 0x0010630e )	glpMakeConstantNodeFromNodeAndMutableValue
0x00007fffb7570934	(libGLProgrammability.dylib + 0x00105934 )	glpConstantFold
0x00007fffb75739e7	(libGLProgrammability.dylib + 0x001089e7 )	glpSANode
0x00007fffb75354e3	(libGLProgrammability.dylib + 0x000ca4e3 )	glpLowerCallToBodilessPPStreamOp
0x00007fffb7574f03	(libGLProgrammability.dylib + 0x00109f03 )	glpSAFunctionCall
0x00007fffb757350c	(libGLProgrammability.dylib + 0x0010850c )	glpSANode
0x00007fffb7547d0d	(libGLProgrammability.dylib + 0x000dcd0d )	glpAnalyzeBinaryMathOp
0x00007fffb75735cc	(libGLProgrammability.dylib + 0x001085cc )	glpSANode
0x00007fffb75807ce	(libGLProgrammability.dylib + 0x001157ce )	glpSABinaryOperator
0x00007fffb7575c54	(libGLProgrammability.dylib + 0x0010ac54 )	glpSAAdd
0x00007fffb75735fc	(libGLProgrammability.dylib + 0x001085fc )	glpSANode
0x00007fffb756c08d	(libGLProgrammability.dylib + 0x0010108d )	glpMakeArrayIndexOffsetFragment
0x00007fffb753aa96	(libGLProgrammability.dylib + 0x000cfa96 )	glpIndirectArrayElement
0x00007fffb757461a	(libGLProgrammability.dylib + 0x0010961a )	glpSAArrayAccess
0x00007fffb75734dc	(libGLProgrammability.dylib + 0x001084dc )	glpSANode
0x00007fffb75807a3	(libGLProgrammability.dylib + 0x001157a3 )	glpSABinaryOperator
0x00007fffb7576e85	(libGLProgrammability.dylib + 0x0010be85 )	glpSAAssign
0x00007fffb757370c	(libGLProgrammability.dylib + 0x0010870c )	glpSANode
0x00007fffb757ea5b	(libGLProgrammability.dylib + 0x00113a5b )	glpSAExpressionStatement
0x00007fffb75738a0	(libGLProgrammability.dylib + 0x001088a0 )	glpSANode
0x00007fffb757ec3c	(libGLProgrammability.dylib + 0x00113c3c )	glpSABlock
0x00007fffb75738b0	(libGLProgrammability.dylib + 0x001088b0 )	glpSANode
0x00007fffb757bed9	(libGLProgrammability.dylib + 0x00110ed9 )	glpSAFunctionDefinition
0x00007fffb75737c6	(libGLProgrammability.dylib + 0x001087c6 )	glpSANode
0x00007fffb757fdf8	(libGLProgrammability.dylib + 0x00114df8 )	glpSATopLevel
0x00007fffb757394d	(libGLProgrammability.dylib + 0x0010894d )	glpSANode
0x00007fffb751fc45	(libGLProgrammability.dylib + 0x000b4c45 )	glpCompileShader
0x00007fffb7541668	(libGLProgrammability.dylib + 0x000d6668 )	ShCompile
0x00007fffb80cdc4a	(GLEngine + 0x00133c4a )	gleShaderParse
0x00007fffb8016ec6	(GLEngine + 0x0007cec6 )	glCompileShaderIncludeARB_Exec
0x0000000116677c48	(Google Chrome Framework -shader_manager.cc:87 )	gpu::gles2::Shader::DoCompile()
0x000000011665cd49	(Google Chrome Framework -program_manager.cc:1833 )	gpu::gles2::Program::CompileAttachedShaders()
0x000000011665c793	(Google Chrome Framework -program_manager.cc:1345 )	gpu::gles2::Program::Link(gpu::gles2::ShaderManager*, gpu::gles2::Program::VaryingsPackingOption, gpu::DecoderClient*)
0x00000001165f9b14	(Google Chrome Framework -gles2_cmd_decoder.cc:9148 )	gpu::gles2::GLES2DecoderImpl::DoLinkProgram(unsigned int)
0x00000001165d437b	(Google Chrome Framework -gles2_cmd_decoder_autogen.h:2403 )	gpu::gles2::GLES2DecoderImpl::HandleLinkProgram(unsigned int, void const volatile*)
0x00000001165f0bb4	(Google Chrome Framework -gles2_cmd_decoder.cc:5638 )	gpu::error::Error gpu::gles2::GLES2DecoderImpl::DoCommandsImpl<false>(unsigned int, void const volatile*, int, int*)
0x0000000116593297	(Google Chrome Framework -command_buffer_service.cc:89 )	gpu::CommandBufferService::Flush(int, gpu::AsyncAPIInterface*)
0x000000011671c09b	(Google Chrome Framework -command_buffer_stub.cc:625 )	gpu::CommandBufferStub::OnAsyncFlush(int, unsigned int)
0x000000011671bef3	(Google Chrome Framework -tuple.h:52 )	bool IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta, std::__1::tuple<int, unsigned int>, void>::Dispatch<gpu::CommandBufferStub, gpu::CommandBufferStub, void, void (gpu::CommandBufferStub::*)(int, unsigned int)>(IPC::Message const*, gpu::CommandBufferStub*, gpu::CommandBufferStub*, void*, void (gpu::CommandBufferStub::*)(int, unsigned int))
0x000000011671ad71	(Google Chrome Framework -command_buffer_stub.cc:292 )	gpu::CommandBufferStub::OnMessageReceived(IPC::Message const&)
0x0000000116724836	(Google Chrome Framework -gpu_channel.cc:533 )	gpu::GpuChannel::HandleMessageHelper(IPC::Message const&)
0x0000000116722d91	(Google Chrome Framework -gpu_channel.cc:509 )	gpu::GpuChannel::HandleMessage(IPC::Message const&)
0x0000000116597d62	(Google Chrome Framework -callback.h:99 )	gpu::Scheduler::RunNextTask()
0x0000000115587dd1	(Google Chrome Framework -callback.h:99 )	base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*)
0x00000001155a7283	(Google Chrome Framework -message_loop.cc:319 )	base::MessageLoop::RunTask(base::PendingTask*)
0x00000001155a7757	(Google Chrome Framework -message_loop.cc:329 )	base::MessageLoop::DoWork()
0x00000001155a9409	(Google Chrome Framework -message_pump_mac.mm:455 )	base::MessagePumpCFRunLoopBase::RunWork()
0x0000000115599f49	(Google Chrome Framework + 0x02252f49 )	base::mac::CallWithEHFrame(void () block_pointer)
0x00000001155a8d2e	(Google Chrome Framework -message_pump_mac.mm:431 )	base::MessagePumpCFRunLoopBase::RunWorkSource(void*)
0x00007fffb2e043e0	(CoreFoundation + 0x000a43e0 )	__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
0x00007fffb2de565b	(CoreFoundation + 0x0008565b )	__CFRunLoopDoSources0
0x00007fffb2de4b45	(CoreFoundation + 0x00084b45 )	__CFRunLoopRun
0x00007fffb2de4543	(CoreFoundation + 0x00084543 )	CFRunLoopRunSpecific
0x00007fffb4815251	(Foundation + 0x00022251 )	-[NSRunLoop(NSRunLoop) runMode:beforeDate:]
0x00000001155a9a7c	(Google Chrome Framework -message_pump_mac.mm:729 )	base::MessagePumpNSRunLoop::DoRun(base::MessagePump::Delegate*)
0x00000001155a884d	(Google Chrome Framework -message_pump_mac.mm:184 )	base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*)
0x00000001155cc3e4	(Google Chrome Framework -run_loop.cc:102 )	<name omitted>
0x000000011956b18b	(Google Chrome Framework -gpu_main.cc:346 )	content::GpuMain(content::MainFunctionParams const&)
0x0000000115190f51	(Google Chrome Framework -content_main_runner_impl.cc:960 )	content::ContentMainRunnerImpl::Run()
0x00000001169ed973	(Google Chrome Framework -main.cc:459 )	service_manager::Main(service_manager::MainParams const&)
0x0000000115190173	(Google Chrome Framework -content_main.cc:19 )	content::ContentMain(content::ContentMainParams const&)
0x000000011334b512	(Google Chrome Framework -chrome_main.cc:101 )	ChromeMain
0x000000010efc6131	(Google Chrome Helper -chrome_exe_main_mac.cc:101 )	main
0x00007fffc89b3234	(libdyld.dylib + 0x00005234 )	start
0x00007fffc89b3234	(libdyld.dylib + 0x00005234 )	start

As per update in associated bug 672485 from developer this is "This is shader compiler being slow and gets killed by GPU watch dog, which is expected behavior." , However keeping this bug as open for further inputs from Internals>GPU team.

Thanks!
Labels: Needs-Feedback
As mentioned above, the crash is from shader compile taking too long. Is this expected from the test case?

Also mentioned in the title  crbug.com/781443 : that bug is marked as possible duplicate of 781147, which is fixed. Is this a new case of  issue 781443 ?
Cc: ccameron@chromium.org
Status: Untriaged (was: Unconfirmed)
Summary: Crash in libGLESv2_swiftshader (was: Crash in libGLESv2_swiftshader (repro issue 781443))
 issue 781443  is a heap overflow, so this is not a duplicate. Tagging for GPU triage and +cc ccameron@ since we have a crash report.
Owner: kbr@chromium.org
Status: Assigned (was: Untriaged)
kbr@, can you look at this? ccameron@ is unavailable.
Components: Blink>WebGL
Owner: kainino@chromium.org
Summary: Timeout in Apple's GLSL compiler (was: Crash in libGLESv2_swiftshader)
SwiftShader doesn't appear any where in the crash stack.

Kai, could you please try to triage this? Is it reproducible?

Labels: -Pri-2 Pri-3
I'll look at this when I get a chance, but I think a watchdog timeout is pretty low priority right now.
This crash is issue 672485, but since that's closed and we might have a repro case here, I'm not going to mark duplicate.
Info from crash report:
OS Name, version Mac OS X, 10.12.6 16G1408
OS Family 10.12 (Sierra)

device id	0x8086 0x0166	3rd Gen Core processor Graphics Controller
vendor id	0x8086	Intel Corporation
driver	10.25.19
Blockedon: 672485

Sign in to add a comment