Page MenuHome

Crash if shader compilation fails
Closed, ResolvedPublicBUG

Description

System Information
Operating system: Linux-5.4.58-1-MANJARO-x86_64-with-glibc2.29 64 Bits
Graphics card: AMD VERDE (DRM 2.50.0, 5.4.58-1-MANJARO, LLVM 10.0.1) X.Org 4.5 (Core Profile) Mesa 20.1.5

Blender Version
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-08-27 17:52, hash: rBe74a24f0bbf3
Worked: 2.83.4
Caused by rB2e630297afc1: GPUShader: Fix linking working even if one shader compilation failed

Short description of error
clicking on emission shader node crashes blender.
Sometimes the cube turns blue or stays black when connecting the node, then it will crash, sometimes it becomes purple, then it does not crash.

Exact steps for others to reproduce the error
In the attached file

,
move the emission shader node between the gradient node and the principled shader node so the connection is: Gradient Texture >> Emission shader >> principled shader
click the emission node
crash

Event Timeline

Richard Antalik (ISS) changed the task status from Needs Triage to Needs Information from User.Aug 28 2020, 8:14 AM

Moving emmision node over and over eventualy caused crash but it was immediate. I had also node wrangler addon enabled, because I was triaging another report. After disabling addon I could not reproduce bug anymore.

Can you click on File > Defaults > Load Factory Settings, load provided file and check if bug is still there?

Still crashed, but took 3 clicks. Terminal output:

Shader Compilation Log : GPU_material_compile

10655 |   node_bsdf_principled_dielectric(, unf41, unf42, unf43, unf44, unf45, unf46, unf47, unf48, unf49, unf50, unf51, unf52, unf53, unf54, unf55, unf56, unf57, unf58, tmp37, tmp38, cons61, viewposition, cons63, cons64, tmp39, tmp66);
      |                                   ^
      | Error : syntax error, unexpected ',', expecting ')'


Writing: /tmp/nodecrash.crash.txt
Segmentation fault (core dumped)

Backtrace:

# Blender 2.91.0, Commit date: 2020-08-27 17:52, Hash e74a24f0bbf3
bpy.ops.node.select(wait_to_deselect_others=True, mouse_x=644, mouse_y=388, extend=False, deselect_all=True)  # Operator

# backtrace
./blender(BLI_system_backtrace+0x33) [0x3f28073]
./blender() [0xb6fb0e]
/usr/lib/libc.so.6(+0x3c3e0) [0x7f5017abf3e0]
./blender(_ZN7blender3gpu6ShaderD1Ev+0x1a) [0x3e2751a]
./blender(_ZN7blender3gpu8GLShaderD0Ev+0x9) [0x3e31d39]
./blender(GPU_shader_create_ex+0x4dd) [0x3e2860d]
./blender(GPU_shader_create+0x12) [0x3e28712]
./blender(GPU_pass_compile+0x40) [0x3e1aa60]
./blender(GPU_material_compile+0x14) [0x3e221e4]
./blender() [0xf72875]
./blender() [0xe38ae2]
/usr/lib/libpthread.so.0(+0x9422) [0x7f501f0bc422]
/usr/lib/libc.so.6(clone+0x43) [0x7f5017b82bf3]

# Python backtrace
Philipp Oeser (lichtwerk) changed the task status from Needs Information from User to Confirmed.Aug 28 2020, 10:41 AM
Philipp Oeser (lichtwerk) changed the subtype of this task from "Report" to "Bug".
Philipp Oeser (lichtwerk) renamed this task from Crash clicking on emission shader node to Crash if shader compilation fails.Aug 28 2020, 11:15 AM
Philipp Oeser (lichtwerk) updated the task description. (Show Details)
Jeroen Bakker (jbakker) closed this task as Resolved.Aug 28 2020, 2:56 PM