Crash inside GrGLProgramBuilder::finalize during context lost tests |
|||
Issue descriptionHave seen a couple of failures of GpuCrash_GPUProcessCrashesExactlyOncePerVisitToAboutGpuCrash on the Mac GPU ASAN bot recently: https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac%20FYI%20GPU%20ASAN%20Release/1341 https://ci.chromium.org/p/chromium/builders/luci.chromium.ci/Mac%20FYI%20GPU%20ASAN%20Release/1340 At least in this build, there is evidence of an assertion failure inside GrGLProgramBuilder::finalize because of the crash of the GPU process and attendant context loss: https://chromium-swarm.appspot.com/task?id=3e9843d1a5181410&refresh=10&show_raw=1 Thread 21 (crashed) 0 libsystem_kernel.dylib + 0x19d42 rax = 0x0000000000000000 rdx = 0x0000000000000000 rcx = 0x00007000104ae538 rbx = 0x0000000000000006 rsi = 0x0000000000000006 rdi = 0x000000000000a903 rbp = 0x00007000104ae560 rsp = 0x00007000104ae538 r8 = 0x0000000000000000 r9 = 0x0000000000989680 r10 = 0x0000000008000000 r11 = 0x0000000000000206 r12 = 0x0000000000000000 r13 = 0x00007000104ae600 r14 = 0x00007000104b6000 r15 = 0x0000000000000000 rip = 0x00007fff9dbd9d42 Found by: given as instruction pointer in context 1 libsystem_c.dylib + 0x5f4bb rbp = 0x00007000104ae590 rsp = 0x00007000104ae570 rip = 0x00007fff9db3f4bb Found by: previous frame's frame pointer 2 libsystem_c.dylib + 0x5f42f rbp = 0x00007000104ae5c0 rsp = 0x00007000104ae5a0 rip = 0x00007fff9db3f42f Found by: previous frame's frame pointer 3 Chromium Framework!__Z17sk_abort_no_printv + 0xe rbp = 0x00007000104ae5d0 rsp = 0x00007000104ae5d0 rip = 0x000000011b36232e Found by: previous frame's frame pointer 4 Chromium Framework!__ZN18GrGLProgramBuilder8finalizeEv + 0x2309 rbp = 0x00007000104ae970 rsp = 0x00007000104ae5e0 rip = 0x000000011b879d29 Found by: previous frame's frame pointer 5 Chromium Framework!__ZN18GrGLProgramBuilder13CreateProgramERK20GrPrimitiveProcessorRK10GrPipelineP13GrProgramDescP7GrGLGpu + 0x51c rbp = 0x00007000104afa10 rsp = 0x00007000104ae980 rip = 0x000000011b8777cc Found by: previous frame's frame pointer 6 Chromium Framework!__ZN7GrGLGpu12ProgramCache10refProgramEPKS_RK20GrPrimitiveProcessorRK10GrPipelineb + 0x67e rbp = 0x00007000104afc10 rsp = 0x00007000104afa20 rip = 0x000000011b84640e Found by: previous frame's frame pointer 7 Chromium Framework!__ZN7GrGLGpu12flushGLStateERK20GrPrimitiveProcessorRK10GrPipelinePKNS3_17FixedDynamicStateEb + 0x120 rbp = 0x00007000104afe10 rsp = 0x00007000104afc20 rip = 0x000000011b819f30 Found by: previous frame's frame pointer 8 Chromium Framework!__ZN7GrGLGpu4drawERK20GrPrimitiveProcessorRK10GrPipelinePKNS3_17FixedDynamicStateEPKNS3_18DynamicStateArraysEPK6GrMeshi + 0x204 rbp = 0x00007000104aff90 rsp = 0x00007000104afe20 rip = 0x000000011b827594 Found by: previous frame's frame pointer 9 Chromium Framework!__ZN20GrGpuRTCommandBuffer4drawERK20GrPrimitiveProcessorRK10GrPipelinePKNS3_17FixedDynamicStateEPKNS3_18DynamicStateArraysEPK6GrMeshiRK6SkRect + 0x5d4 rbp = 0x00007000104b0020 rsp = 0x00007000104affa0 rip = 0x000000011b4b2f24 Found by: previous frame's frame pointer Is there any way these assertions could be relaxed to better handle context loss? In the meantime I'm going to mark this test flaky on this bot.
,
Jul 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c1a0930e1d2478845da5fad1bed7ba4e2f2aa261 commit c1a0930e1d2478845da5fad1bed7ba4e2f2aa261 Author: Kenneth Russell <kbr@chromium.org> Date: Tue Jul 10 01:12:54 2018 Mark a context_lost test flaky on Mac ASAN. GpuCrash_GPUProcessCrashesExactlyOncePerVisitToAboutGpuCrash occasionally crashes the renderer process while navigating to about:gpucrash. The test's main tab appears to crash too. Required passing an --is-asan argument to the test, similarly to the WebGL conformance tests. Bug: 861956 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Ic18876e88a0d99c9152be1a67599f2cae3cd4881 Tbr: jmadill@chromium.org Reviewed-on: https://chromium-review.googlesource.com/1130507 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#573577} [modify] https://crrev.com/c1a0930e1d2478845da5fad1bed7ba4e2f2aa261/content/test/gpu/gpu_tests/context_lost_expectations.py [modify] https://crrev.com/c1a0930e1d2478845da5fad1bed7ba4e2f2aa261/content/test/gpu/gpu_tests/context_lost_integration_test.py [modify] https://crrev.com/c1a0930e1d2478845da5fad1bed7ba4e2f2aa261/testing/buildbot/chromium.gpu.fyi.json [modify] https://crrev.com/c1a0930e1d2478845da5fad1bed7ba4e2f2aa261/testing/buildbot/test_suite_exceptions.pyl
,
Jul 16
,
Jul 16
In Issue 863627 , seen flaky on mac_chromium_rel_ng as well. From this run: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/93473 and this Swarming shard: https://chromium-swarm.appspot.com/task?id=3eab47822fa74f10&refresh=10&show_raw=1 we see the following stack trace. I'll mark this as flaky on Mac in general. Brian, Ethan, do you think it'd be possible to cooperatively return an error code rather than crashing if context loss happens at this place in Ganesh? [25349:44035:0713/000830.438221:INFO:GrGLProgramBuilder.cpp(371)] Program linking failed. [25349:44035:0713/000830.438259:INFO:GrGLProgramBuilder.cpp(295)] VS: [25349:44035:0713/000830.438402:INFO:GrGLShaderStringBuilder.cpp(38)] SKSL: [25349:44035:0713/000830.438439:INFO:GrGLShaderStringBuilder.cpp(38)] 1 #version 100 [25349:44035:0713/000830.438459:INFO:GrGLShaderStringBuilder.cpp(38)] 2 uniform float4 sk_RTAdjust; [25349:44035:0713/000830.438474:INFO:GrGLShaderStringBuilder.cpp(38)] 3 uniform float2 uAtlasSizeInv_Stage0; [25349:44035:0713/000830.438488:INFO:GrGLShaderStringBuilder.cpp(38)] 4 in float2 inPosition; [25349:44035:0713/000830.438502:INFO:GrGLShaderStringBuilder.cpp(38)] 5 in half4 inColor; [25349:44035:0713/000830.438516:INFO:GrGLShaderStringBuilder.cpp(38)] 6 in float2 inTextureCoords; [25349:44035:0713/000830.438529:INFO:GrGLShaderStringBuilder.cpp(38)] 7 out float2 vTextureCoords_Stage0; [25349:44035:0713/000830.438547:INFO:GrGLShaderStringBuilder.cpp(38)] 8 out float vTexIndex_Stage0; [25349:44035:0713/000830.438560:INFO:GrGLShaderStringBuilder.cpp(38)] 9 out half4 vinColor_Stage0; [25349:44035:0713/000830.438573:INFO:GrGLShaderStringBuilder.cpp(38)] 10 void main() [25349:44035:0713/000830.438589:INFO:GrGLShaderStringBuilder.cpp(38)] 11 { [25349:44035:0713/000830.438605:INFO:GrGLShaderStringBuilder.cpp(38)] 12 // Primitive Processor Texture [25349:44035:0713/000830.438619:INFO:GrGLShaderStringBuilder.cpp(38)] 13 float2 indexTexCoords = float2(inTextureCoords.x, inTextureCoords.y); [25349:44035:0713/000830.438632:INFO:GrGLShaderStringBuilder.cpp(38)] 14 float2 unormTexCoords = floor(0.5*indexTexCoords); [25349:44035:0713/000830.438646:INFO:GrGLShaderStringBuilder.cpp(38)] 15 float2 diff = indexTexCoords - 2.0*unormTexCoords; [25349:44035:0713/000830.438659:INFO:GrGLShaderStringBuilder.cpp(38)] 16 float texIdx = 2.0*diff.x + diff.y; [25349:44035:0713/000830.438673:INFO:GrGLShaderStringBuilder.cpp(38)] 17 vTextureCoords_Stage0 = unormTexCoords * uAtlasSizeInv_Stage0; [25349:44035:0713/000830.438687:INFO:GrGLShaderStringBuilder.cpp(38)] 18 vTexIndex_Stage0 = texIdx; [25349:44035:0713/000830.438700:INFO:GrGLShaderStringBuilder.cpp(38)] 19 vinColor_Stage0 = inColor; [25349:44035:0713/000830.438716:INFO:GrGLShaderStringBuilder.cpp(38)] 20 sk_Position = float4(inPosition.x , inPosition.y, 0, 1); [25349:44035:0713/000830.438731:INFO:GrGLShaderStringBuilder.cpp(38)] 21 } [25349:44035:0713/000830.438747:INFO:GrGLShaderStringBuilder.cpp(38)] 22 [25349:44035:0713/000830.439301:INFO:GrGLShaderStringBuilder.cpp(47)] GLSL: [25349:44035:0713/000830.439332:INFO:GrGLShaderStringBuilder.cpp(47)] 1 #version 100 [25349:44035:0713/000830.439346:INFO:GrGLShaderStringBuilder.cpp(47)] 2 [25349:44035:0713/000830.439360:INFO:GrGLShaderStringBuilder.cpp(47)] 3 precision mediump float; [25349:44035:0713/000830.439374:INFO:GrGLShaderStringBuilder.cpp(47)] 4 uniform highp vec4 sk_RTAdjust; [25349:44035:0713/000830.439388:INFO:GrGLShaderStringBuilder.cpp(47)] 5 uniform highp vec2 uAtlasSizeInv_Stage0; [25349:44035:0713/000830.439404:INFO:GrGLShaderStringBuilder.cpp(47)] 6 attribute highp vec2 inPosition; [25349:44035:0713/000830.439436:INFO:GrGLShaderStringBuilder.cpp(47)] 7 attribute mediump vec4 inColor; [25349:44035:0713/000830.439450:INFO:GrGLShaderStringBuilder.cpp(47)] 8 attribute highp vec2 inTextureCoords; [25349:44035:0713/000830.439464:INFO:GrGLShaderStringBuilder.cpp(47)] 9 varying highp vec2 vTextureCoords_Stage0; [25349:44035:0713/000830.439477:INFO:GrGLShaderStringBuilder.cpp(47)] 10 varying highp float vTexIndex_Stage0; [25349:44035:0713/000830.439536:INFO:GrGLShaderStringBuilder.cpp(47)] 11 varying mediump vec4 vinColor_Stage0; [25349:44035:0713/000830.439565:INFO:GrGLShaderStringBuilder.cpp(47)] 12 void main() { [25349:44035:0713/000830.439579:INFO:GrGLShaderStringBuilder.cpp(47)] 13 highp vec2 indexTexCoords = vec2(inTextureCoords.x, inTextureCoords.y); [25349:44035:0713/000830.439593:INFO:GrGLShaderStringBuilder.cpp(47)] 14 highp vec2 unormTexCoords = floor(0.5 * indexTexCoords); [25349:44035:0713/000830.439607:INFO:GrGLShaderStringBuilder.cpp(47)] 15 highp vec2 diff = indexTexCoords - 2.0 * unormTexCoords; [25349:44035:0713/000830.439620:INFO:GrGLShaderStringBuilder.cpp(47)] 16 highp float texIdx = 2.0 * diff.x + diff.y; [25349:44035:0713/000830.439634:INFO:GrGLShaderStringBuilder.cpp(47)] 17 vTextureCoords_Stage0 = unormTexCoords * uAtlasSizeInv_Stage0; [25349:44035:0713/000830.439647:INFO:GrGLShaderStringBuilder.cpp(47)] 18 vTexIndex_Stage0 = texIdx; [25349:44035:0713/000830.439661:INFO:GrGLShaderStringBuilder.cpp(47)] 19 vinColor_Stage0 = inColor; [25349:44035:0713/000830.439674:INFO:GrGLShaderStringBuilder.cpp(47)] 20 gl_Position = vec4(inPosition.x, inPosition.y, 0.0, 1.0); [25349:44035:0713/000830.439687:INFO:GrGLShaderStringBuilder.cpp(47)] 21 gl_Position = vec4(gl_Position.xy * sk_RTAdjust.xz + gl_Position.ww * sk_RTAdjust.yw, 0.0, gl_Position.w); [25349:44035:0713/000830.439707:INFO:GrGLShaderStringBuilder.cpp(47)] 22 } [25349:44035:0713/000830.439720:INFO:GrGLShaderStringBuilder.cpp(47)] 23 [25349:44035:0713/000830.439739:INFO:GrGLProgramBuilder.cpp(305)] FS: [25349:44035:0713/000830.439926:INFO:GrGLShaderStringBuilder.cpp(38)] SKSL: [25349:44035:0713/000830.439960:INFO:GrGLShaderStringBuilder.cpp(38)] 1 #version 100 [25349:44035:0713/000830.439974:INFO:GrGLShaderStringBuilder.cpp(38)] 2 uniform half4 uscaleAndTranslate_Stage1; [25349:44035:0713/000830.439988:INFO:GrGLShaderStringBuilder.cpp(38)] 3 uniform half4 uTexDom_Stage1; [25349:44035:0713/000830.440001:INFO:GrGLShaderStringBuilder.cpp(38)] 4 uniform lowp sampler2D uTextureSampler_0_Stage0; [25349:44035:0713/000830.440014:INFO:GrGLShaderStringBuilder.cpp(38)] 5 uniform lowp sampler2D uTextureSampler_0_Stage1; [25349:44035:0713/000830.440028:INFO:GrGLShaderStringBuilder.cpp(38)] 6 in float2 vTextureCoords_Stage0; [25349:44035:0713/000830.440041:INFO:GrGLShaderStringBuilder.cpp(38)] 7 in float vTexIndex_Stage0; [25349:44035:0713/000830.440054:INFO:GrGLShaderStringBuilder.cpp(38)] 8 in half4 vinColor_Stage0; [25349:44035:0713/000830.440067:INFO:GrGLShaderStringBuilder.cpp(38)] 9 void main() [25349:44035:0713/000830.440080:INFO:GrGLShaderStringBuilder.cpp(38)] 10 { [25349:44035:0713/000830.440092:INFO:GrGLShaderStringBuilder.cpp(38)] 11 half4 outputColor_Stage0; [25349:44035:0713/000830.440105:INFO:GrGLShaderStringBuilder.cpp(38)] 12 half4 outputCoverage_Stage0; [25349:44035:0713/000830.440118:INFO:GrGLShaderStringBuilder.cpp(38)] 13 { [25349:44035:0713/000830.440131:INFO:GrGLShaderStringBuilder.cpp(38)] 14 // Stage 0, Texture [25349:44035:0713/000830.440145:INFO:GrGLShaderStringBuilder.cpp(38)] 15 outputColor_Stage0 = vinColor_Stage0; [25349:44035:0713/000830.440158:INFO:GrGLShaderStringBuilder.cpp(38)] 16 half4 texColor; [25349:44035:0713/000830.440171:INFO:GrGLShaderStringBuilder.cpp(38)] 17 { [25349:44035:0713/000830.440184:INFO:GrGLShaderStringBuilder.cpp(38)] 18 texColor = texture(uTextureSampler_0_Stage0, vTextureCoords_Stage0).rrrr; [25349:44035:0713/000830.440197:INFO:GrGLShaderStringBuilder.cpp(38)] 19 } [25349:44035:0713/000830.440210:INFO:GrGLShaderStringBuilder.cpp(38)] 20 outputCoverage_Stage0 = texColor; [25349:44035:0713/000830.440223:INFO:GrGLShaderStringBuilder.cpp(38)] 21 } [25349:44035:0713/000830.440246:INFO:GrGLShaderStringBuilder.cpp(38)] 22 half4 output_Stage1; [25349:44035:0713/000830.440260:INFO:GrGLShaderStringBuilder.cpp(38)] 23 { [25349:44035:0713/000830.440273:INFO:GrGLShaderStringBuilder.cpp(38)] 24 // Stage 1, GrDeviceSpaceTextureDecalFragmentProcessor [25349:44035:0713/000830.440287:INFO:GrGLShaderStringBuilder.cpp(38)] 25 half2 coords = sk_FragCoord.xy * uscaleAndTranslate_Stage1.xy + uscaleAndTranslate_Stage1.zw; [25349:44035:0713/000830.440300:INFO:GrGLShaderStringBuilder.cpp(38)] 26 { [25349:44035:0713/000830.440313:INFO:GrGLShaderStringBuilder.cpp(38)] 27 bool4 outside; [25349:44035:0713/000830.440326:INFO:GrGLShaderStringBuilder.cpp(38)] 28 outside.xy = lessThan(coords, uTexDom_Stage1.xy); [25349:44035:0713/000830.440339:INFO:GrGLShaderStringBuilder.cpp(38)] 29 outside.zw = greaterThan(coords, uTexDom_Stage1.zw); [25349:44035:0713/000830.440352:INFO:GrGLShaderStringBuilder.cpp(38)] 30 output_Stage1 = any(outside) ? half4(0.0, 0.0, 0.0, 0.0) : texture(uTextureSampler_0_Stage1, coords).rrrr * outputCoverage_Stage0; [25349:44035:0713/000830.440367:INFO:GrGLShaderStringBuilder.cpp(38)] 31 } [25349:44035:0713/000830.440379:INFO:GrGLShaderStringBuilder.cpp(38)] 32 } [25349:44035:0713/000830.440392:INFO:GrGLShaderStringBuilder.cpp(38)] 33 { [25349:44035:0713/000830.440405:INFO:GrGLShaderStringBuilder.cpp(38)] 34 // Xfer Processor: Porter Duff [25349:44035:0713/000830.440418:INFO:GrGLShaderStringBuilder.cpp(38)] 35 sk_FragColor = outputColor_Stage0 * output_Stage1; [25349:44035:0713/000830.440431:INFO:GrGLShaderStringBuilder.cpp(38)] 36 } [25349:44035:0713/000830.440444:INFO:GrGLShaderStringBuilder.cpp(38)] 37 } [25349:44035:0713/000830.440456:INFO:GrGLShaderStringBuilder.cpp(38)] 38 [25349:44035:0713/000830.441157:INFO:GrGLShaderStringBuilder.cpp(47)] GLSL: [25349:44035:0713/000830.441193:INFO:GrGLShaderStringBuilder.cpp(47)] 1 #version 100 [25349:44035:0713/000830.441208:INFO:GrGLShaderStringBuilder.cpp(47)] 2 [25349:44035:0713/000830.441222:INFO:GrGLShaderStringBuilder.cpp(47)] 3 precision mediump float; [25349:44035:0713/000830.441236:INFO:GrGLShaderStringBuilder.cpp(47)] 4 uniform mediump vec4 uscaleAndTranslate_Stage1; [25349:44035:0713/000830.441249:INFO:GrGLShaderStringBuilder.cpp(47)] 5 uniform mediump vec4 uTexDom_Stage1; [25349:44035:0713/000830.441263:INFO:GrGLShaderStringBuilder.cpp(47)] 6 uniform lowp sampler2D uTextureSampler_0_Stage0; [25349:44035:0713/000830.441276:INFO:GrGLShaderStringBuilder.cpp(47)] 7 uniform lowp sampler2D uTextureSampler_0_Stage1; [25349:44035:0713/000830.441289:INFO:GrGLShaderStringBuilder.cpp(47)] 8 varying highp vec2 vTextureCoords_Stage0; [25349:44035:0713/000830.441303:INFO:GrGLShaderStringBuilder.cpp(47)] 9 varying highp float vTexIndex_Stage0; [25349:44035:0713/000830.441316:INFO:GrGLShaderStringBuilder.cpp(47)] 10 varying mediump vec4 vinColor_Stage0; [25349:44035:0713/000830.441329:INFO:GrGLShaderStringBuilder.cpp(47)] 11 void main() { [25349:44035:0713/000830.441342:INFO:GrGLShaderStringBuilder.cpp(47)] 12 mediump vec4 outputColor_Stage0; [25349:44035:0713/000830.441355:INFO:GrGLShaderStringBuilder.cpp(47)] 13 mediump vec4 outputCoverage_Stage0; [25349:44035:0713/000830.441368:INFO:GrGLShaderStringBuilder.cpp(47)] 14 { [25349:44035:0713/000830.441381:INFO:GrGLShaderStringBuilder.cpp(47)] 15 outputColor_Stage0 = vinColor_Stage0; [25349:44035:0713/000830.441395:INFO:GrGLShaderStringBuilder.cpp(47)] 16 mediump vec4 texColor; [25349:44035:0713/000830.441408:INFO:GrGLShaderStringBuilder.cpp(47)] 17 { [25349:44035:0713/000830.441421:INFO:GrGLShaderStringBuilder.cpp(47)] 18 texColor = texture2D(uTextureSampler_0_Stage0, vTextureCoords_Stage0, -0.5).xxxx; [25349:44035:0713/000830.441434:INFO:GrGLShaderStringBuilder.cpp(47)] 19 } [25349:44035:0713/000830.441447:INFO:GrGLShaderStringBuilder.cpp(47)] 20 outputCoverage_Stage0 = texColor; [25349:44035:0713/000830.441460:INFO:GrGLShaderStringBuilder.cpp(47)] 21 } [25349:44035:0713/000830.441473:INFO:GrGLShaderStringBuilder.cpp(47)] 22 mediump vec4 output_Stage1; [25349:44035:0713/000830.441486:INFO:GrGLShaderStringBuilder.cpp(47)] 23 { [25349:44035:0713/000830.441631:INFO:GrGLShaderStringBuilder.cpp(47)] 24 mediump vec2 coords = gl_FragCoord.xy * uscaleAndTranslate_Stage1.xy + uscaleAndTranslate_Stage1.zw; [25349:44035:0713/000830.441646:INFO:GrGLShaderStringBuilder.cpp(47)] 25 { [25349:44035:0713/000830.441659:INFO:GrGLShaderStringBuilder.cpp(47)] 26 bvec4 outside; [25349:44035:0713/000830.441673:INFO:GrGLShaderStringBuilder.cpp(47)] 27 outside.xy = lessThan(coords, uTexDom_Stage1.xy); [25349:44035:0713/000830.441686:INFO:GrGLShaderStringBuilder.cpp(47)] 28 outside.zw = greaterThan(coords, uTexDom_Stage1.zw); [25349:44035:0713/000830.441700:INFO:GrGLShaderStringBuilder.cpp(47)] 29 output_Stage1 = any(outside) ? vec4(0.0, 0.0, 0.0, 0.0) : texture2D(uTextureSampler_0_Stage1, coords, -0.5).xxxx * outputCoverage_Stage0; [25349:44035:0713/000830.441714:INFO:GrGLShaderStringBuilder.cpp(47)] 30 } [25349:44035:0713/000830.441727:INFO:GrGLShaderStringBuilder.cpp(47)] 31 } [25349:44035:0713/000830.441739:INFO:GrGLShaderStringBuilder.cpp(47)] 32 { [25349:44035:0713/000830.441752:INFO:GrGLShaderStringBuilder.cpp(47)] 33 gl_FragColor = outputColor_Stage0 * output_Stage1; [25349:44035:0713/000830.441765:INFO:GrGLShaderStringBuilder.cpp(47)] 34 } [25349:44035:0713/000830.441778:INFO:GrGLShaderStringBuilder.cpp(47)] 35 } [25349:44035:0713/000830.441791:INFO:GrGLShaderStringBuilder.cpp(47)] 36 [25349:44035:0713/000830.441811:INFO:GrGLProgramBuilder.cpp(309)] ../../third_party/skia/src/gpu/gl/builders/GrGLProgramBuilder.cpp:309: fatal error: "" Received signal 6 0 Chromium Framework 0x0000000121c7b4fc base::debug::StackTrace::StackTrace(unsigned long) + 28 1 Chromium Framework 0x0000000121c7b331 base::debug::(anonymous namespace)::StackDumpSignalHandler(int, __siginfo*, void*) + 2401 2 libsystem_platform.dylib 0x00007fff6d105f5a _sigtramp + 26 3 ??? 0x0000000000000000 0x0 + 0 4 libsystem_c.dylib 0x00007fff6cea31ae abort + 127 5 Chromium Framework 0x0000000121d1dd75 sk_abort_no_print() + 21 6 Chromium Framework 0x0000000121edd038 GrGLProgramBuilder::finalize() + 3544 7 Chromium Framework 0x0000000121edc013 GrGLProgramBuilder::CreateProgram(GrPrimitiveProcessor const&, GrPipeline const&, GrProgramDesc*, GrGLGpu*) + 1667 8 Chromium Framework 0x0000000121ec8752 GrGLGpu::ProgramCache::refProgram(GrGLGpu const*, GrPrimitiveProcessor const&, GrPipeline const&, bool) + 706 9 Chromium Framework 0x0000000121eb8bd0 GrGLGpu::flushGLState(GrPrimitiveProcessor const&, GrPipeline const&, GrPipeline::FixedDynamicState const*, bool) + 48 10 Chromium Framework 0x0000000121ebd8a1 GrGLGpu::draw(GrPrimitiveProcessor const&, GrPipeline const&, GrPipeline::FixedDynamicState const*, GrPipeline::DynamicStateArrays const*, GrMesh const*, int) + 145 11 Chromium Framework 0x0000000121d97d2a GrGpuRTCommandBuffer::draw(GrPrimitiveProcessor const&, GrPipeline const&, GrPipeline::FixedDynamicState const*, GrPipeline::DynamicStateArrays const*, GrMesh const*, int, SkRect const&) + 618 12 Chromium Framework 0x0000000121d9aeed GrOpFlushState::executeDrawsAndUploadsForMeshDrawOp(unsigned int, SkRect const&) + 557 13 Chromium Framework 0x0000000121dc1c07 GrOp::execute(GrOpFlushState*) + 183 14 Chromium Framework 0x0000000121dc1a8d GrRenderTargetOpList::onExecute(GrOpFlushState*) + 1181 15 Chromium Framework 0x0000000121d8ae4d GrDrawingManager::executeOpLists(int, int, GrOpFlushState*) + 1885 16 Chromium Framework 0x0000000121d8a25b GrDrawingManager::internalFlush(GrSurfaceProxy*, GrResourceCache::FlushType, int, GrBackendSemaphore*) + 2299 17 Chromium Framework 0x0000000121d8b209 GrDrawingManager::prepareSurfaceForExternalIO(GrSurfaceProxy*, int, GrBackendSemaphore*) + 185 18 Chromium Framework 0x0000000121d8235b GrContextPriv::prepareSurfaceForExternalIO(GrSurfaceProxy*) + 235 19 Chromium Framework 0x0000000121efe149 SkImage_Gpu::onGetBackendTexture(bool, GrSurfaceOrigin*) const + 233 20 Chromium Framework 0x000000011e1f6d42 SkImage::getBackendTexture(bool, GrSurfaceOrigin*) const + 18 21 Chromium Framework 0x000000012319edc2 cc::(anonymous namespace)::GlIdFromSkImage(SkImage*) + 114 22 Chromium Framework 0x00000001231a60e9 cc::GpuImageDecodeCache::RunPendingContextThreadOperations() + 217 23 Chromium Framework 0x00000001231a5f2e cc::GpuImageDecodeCache::DrawWithImageFinished(cc::DrawImage const&, cc::DecodedDrawImage const&) + 174 24 Chromium Framework 0x0000000123174792 base::internal::Invoker<base::internal::BindState<void (*)(cc::DrawImage, cc::ImageDecodeCache*, cc::DecodedDrawImage), cc::DrawImage, cc::ImageDecodeCache*, cc::DecodedDrawImage>, void ()>::RunOnce(base::internal::BindStateBase*) + 82 25 Chromium Framework 0x0000000122369f01 cc::ImageProvider::ScopedDecodedDrawImage::~ScopedDecodedDrawImage() + 33 26 Chromium Framework 0x000000012238212a cc::DrawImageOp::RasterWithFlags(cc::DrawImageOp const*, cc::PaintFlags const*, SkCanvas*, cc::PlaybackParams const&) + 938 27 Chromium Framework 0x0000000122389330 _ZN2cc4$_358__invokeEPKNS_7PaintOpEPKNS_10PaintFlagsEP8SkCanvasRKNS_14PlaybackParamsE + 160 28 Chromium Framework 0x0000000122386cce cc::PaintOpBuffer::Playback(SkCanvas*, cc::PlaybackParams const&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const*) const + 670 29 Chromium Framework 0x000000012238866f _ZN2cc4$_148__invokeEPKNS_7PaintOpEP8SkCanvasRKNS_14PlaybackParamsE + 95 30 Chromium Framework 0x0000000122386c4d cc::PaintOpBuffer::Playback(SkCanvas*, cc::PlaybackParams const&, std::__1::vector<unsigned long, std::__1::allocator<unsigned long> > const*) const + 541 31 Chromium Framework 0x0000000122362fe7 cc::DisplayItemList::Raster(SkCanvas*, cc::ImageProvider*) const + 295 32 Chromium Framework 0x0000000123175b28 cc::RasterSource::PlaybackToCanvas(SkCanvas*, cc::ImageProvider*) const + 216 33 Chromium Framework 0x0000000123175a1a cc::RasterSource::PlaybackToCanvas(SkCanvas*, gfx::ColorSpace const&, gfx::Size const&, gfx::Rect const&, gfx::Rect const&, gfx::AxisTransform2d const&, cc::RasterSource::PlaybackSettings const&) const + 954 34 Chromium Framework 0x000000012317141d cc::GpuRasterBufferProvider::PlaybackOnWorkerThread(gpu::Mailbox const&, unsigned int, bool, bool, gpu::SyncToken const&, gfx::Size const&, viz::ResourceFormat, gfx::ColorSpace const&, bool, cc::RasterSource const*, gfx::Rect const&, gfx::Rect const&, unsigned long long, gfx::AxisTransform2d const&, cc::RasterSource::PlaybackSettings const&) + 2029 35 Chromium Framework 0x0000000123170b37 cc::GpuRasterBufferProvider::RasterBufferImpl::Playback(cc::RasterSource const*, gfx::Rect const&, gfx::Rect const&, unsigned long long, gfx::AxisTransform2d const&, cc::RasterSource::PlaybackSettings const&) + 199 36 Chromium Framework 0x00000001231d115b cc::(anonymous namespace)::RasterTaskImpl::RunOnWorkerThread() + 411 37 Chromium Framework 0x00000001231773e8 cc::SingleThreadTaskGraphRunner::RunTaskWithLockAcquired() + 328 38 Chromium Framework 0x0000000123177270 cc::SingleThreadTaskGraphRunner::Run() + 64 39 Chromium Framework 0x0000000121c3f570 base::DelegateSimpleThread::Run() + 128 40 Chromium Framework 0x0000000121c3f344 base::SimpleThread::ThreadMain() + 148 41 Chromium Framework 0x0000000121c8a84f base::(anonymous namespace)::ThreadFunc(void*) + 95 42 libsystem_pthread.dylib 0x00007fff6d10f661 _pthread_body + 340 43 libsystem_pthread.dylib 0x00007fff6d10f50d _pthread_body + 0 44 libsystem_pthread.dylib 0x00007fff6d10ebf9 thread_start + 13 [end of stack trace]
,
Jul 16
https://skia-review.googlesource.com/141547 is underway fixing this so let me assign this to Brian.
,
Jul 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/77da697591c660b08da393ed7ee6659752dd3c8e commit 77da697591c660b08da393ed7ee6659752dd3c8e Author: Kenneth Russell <kbr@chromium.org> Date: Mon Jul 16 20:28:47 2018 Expand context_lost suppression on macOS. GpuCrash_GPUProcessCrashesExactlyOncePerVisitToAboutGpuCrash is failing intermittently on macOS in general, not just on the ASAN bot. Bug: 861956 Tbr: bsalomon@chromium.org Tbr: ethannicholas@chromium.org Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: Ib1c2e4f165c8f658e354559e62eea1b34d825ab4 Reviewed-on: https://chromium-review.googlesource.com/1138742 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#575406} [modify] https://crrev.com/77da697591c660b08da393ed7ee6659752dd3c8e/content/test/gpu/gpu_tests/context_lost_expectations.py
,
Jul 17
The following revision refers to this bug: https://skia.googlesource.com/skia/+/6dd4b209091b876832218e8adf1909669960bf98 commit 6dd4b209091b876832218e8adf1909669960bf98 Author: Brian Salomon <bsalomon@google.com> Date: Tue Jul 17 14:26:40 2018 Remove crash when shader linking fails. Bug: 861956 Change-Id: If60c1f4112702d8f96cb27a624de167049b34370 Reviewed-on: https://skia-review.googlesource.com/141547 Auto-Submit: Brian Salomon <bsalomon@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com> Reviewed-by: Ethan Nicholas <ethannicholas@google.com> [modify] https://crrev.com/6dd4b209091b876832218e8adf1909669960bf98/src/gpu/gl/builders/GrGLProgramBuilder.cpp
,
Jul 17
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c034c9ed8e0fe5c0adb7f189fcffd7c6bf9082e1 commit c034c9ed8e0fe5c0adb7f189fcffd7c6bf9082e1 Author: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Tue Jul 17 18:29:24 2018 Roll src/third_party/skia 94fee93c9b23..b609e6dc6a02 (6 commits) https://skia.googlesource.com/skia.git/+log/94fee93c9b23..b609e6dc6a02 git log 94fee93c9b23..b609e6dc6a02 --date=short --no-merges --format='%ad %ae %s' 2018-07-17 ruiqimao@google.com added byte and ubyte types to SKSL 2018-07-17 bsalomon@google.com Remove crash when shader linking fails. 2018-07-17 brianosman@google.com Remove SkTransferFunctionBehavior 2018-07-17 bsalomon@google.com Reland "Remove interpolants are inaccurate workaround for Adreno 3xx." 2018-07-17 caryclark@skia.org polish picture and rrect docs 2018-07-17 robertphillips@google.com Revert "Reduce arbitrary opList splitting when sorting" Created with: gclient setdep -r src/third_party/skia@b609e6dc6a02 The AutoRoll server is located here: https://autoroll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel BUG= chromium:861956 , chromium:847984 TBR=bungeman@chromium.org Change-Id: Ic674df2072110895987466c86baa4f96ab849cee Reviewed-on: https://chromium-review.googlesource.com/1140413 Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#575728} [modify] https://crrev.com/c034c9ed8e0fe5c0adb7f189fcffd7c6bf9082e1/DEPS
,
Jul 18
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5cc14a814c2b44c04276a470af4d693c59d05790 commit 5cc14a814c2b44c04276a470af4d693c59d05790 Author: Kenneth Russell <kbr@chromium.org> Date: Wed Jul 18 19:57:19 2018 Re-enable a context lost test on Mac. GpuCrash_GPUProcessCrashesExactlyOncePerVisitToAboutGpuCrash should no longer be flaky, at least not for the previous reason. Bug: 861956 Tbr: bsalomon@google.com Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I37a34caf9b5725ddc877ac81a1760ad72dfbb261 Reviewed-on: https://chromium-review.googlesource.com/1142233 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#576176} [modify] https://crrev.com/5cc14a814c2b44c04276a470af4d693c59d05790/content/test/gpu/gpu_tests/context_lost_expectations.py
,
Jul 18
Calling this fixed. Will file a new bug if the flakiness reappears. Thanks Brian for your help on this. |
|||
►
Sign in to add a comment |
|||
Comment 1 by kbr@chromium.org
, Jul 9