Page MenuHome

OSD Crash
Closed, ResolvedPublic

Description

System Information
Windows 8.0
Intel HD 4600

System Info

Blender Version
Broken: Latest master
Worked: (optional)

Short description of error
OSD Crash With this error

Error linking GLSL program : Vertex shader does not write to gl_Position.

Defines: #define FLAT_SHADING

Exact steps for others to reproduce the error
In default scene add subdiv modifier and enable osd

Event Timeline

Aaron Carlisle (Blendify) set Type to Bug.
Aaron Carlisle (Blendify) created this task.
Aaron Carlisle (Blendify) raised the priority of this task from to Needs Triage by Developer.
Julian Eisel (Severin) triaged this task as Normal priority.

Maybe Intel drivers again. CCing @Antony Riakiotakis (psy-fi), he might be helpful here.

Can you please attach output of "Help" > "Sytem Info" so we can more easily check what your OpenGL driver can and cannot do ?

Can you run blender with blender -d and attach the full error log here? I would like to see the full generated shader source, which is included in the error message.

System info is attached under system information as for the log that was it from that afaik it looks like I only have OpenGL 4.0 I will try to download new driver which will bump it to 4.3 but it should still not crash

system info link has expired and there's nothing here.

For sure this is not the full command line output when using "blender -d". It is supposed to output the whole shader source.

For now you can look at T45693 because I don't have access to a computer at the moment

I have the same problems blender crash suddenly here is my system info

@rafael nolasco (kakachiex2) There was a crash that was fixed for GL 3.x GPUs so it would be useuful to know the blender version you're using to know if it's the same issue.

I have the same problem too, instant crash when "use opensubdiv" is enabled, no matter what backend is used (cpu, openmp or glsl compute)

System Information

Windows 10 x64
Intel HD (Baytrail)


Running blender with "-d" arg

Blender Version
blender-2.75 (63265fd)

Additional info
Screenshot & report from OpenGl Extension viewer


Meh, sorry for asking version system_info includes it.

I'll see if I can reproduce the issue here....

i'm using the buildbox official 64bit hash fef31aa

the problems happens wen activating opensubdiv

Still can't reproduce it here. We need a HD4000 class GPU for testing or some developer that has it. Maybe vpn could help here actually...

my card is an nvidia geforce gts 250 1gb is an old one but it support opengl 3.3

i downloaded today buildbot an still crash after activating opensubdiv no matter what system code 'glsl. cpu, openmp etc..' its crash immediately

Tested in another computer with latest buildbod, same results as above.

  1. Activating "use opensubdiv"
  2. instant crash

The computer for this test:

AMD Phenom II X4 965 Quad-Core Black Edition
GPU Radeon HD 5850 1GB
Ram 12Gb

Tried in Windows 10 x64 and Kubuntu x64, both with the latest updates and drivers.

I don´t have acces to that computer at the moment, later today i upload the system info and the console output.

Ok, here we go.
The linux system freezes completly when opensubdiv is enabled.
In the same machine but booting Windows 10, blender crashes,
Here is the output info.


C:\Users\Aaron\Downloads\blender-2.75-44384c6-win64\Blender-2.75.0-git.44384c6-A
MD64>blender -d
Switching to fully guarded memory allocator.
Blender 2.75 (sub 4)
Build: Fri 08/07/2015 06:01 AM Windows Release
argv[0] = blender-app.exe
argv[1] = -d
read file
  Version 272 sub 2 date unknown hash unknown

ordered
 OBCube
 OBLamp
 OBCamera
AL lib: (EE) UpdateDeviceParams: Failed to set 44100hz, got 48000hz instead
found bundled python: C:\Users\Aaron\Downloads\blender-2.75-44384c6-win64\Blende
r-2.75.0-git.44384c6-AMD64\2.75\python
trying to save userpref at C:\Users\Aaron\AppData\Roaming\Blender Foundation\Ble
nder\2.75\config\userpref.blend ok
<!> event has invalid window
ED_undo_push: Add Modifier

ordered
 OBCube
 OBLamp
 OBCamera
Error: ↕
Error: Link called without any attached shader objects.

Error linking GLSL program : Vertex shader does not write to gl_Position.

Defines: #define FLAT_SHADING


C:\Users\Aaron\Downloads\blender-2.75-44384c6-win64\Blender-2.75.0-git.44384c6-A
MD64>

Latest nightly build (blender-2.75-8a2371e-win64) crashes whenever OpenSubdiv Compute is set to anything but "None" and I click the checkbox for "Use OpenSubdiv...".

This was witnessed on 3 different computers with the following CPUs (no discrete GPUs): AMD A10-6800K, AMD A10-7850K, Intel i5-4670 using the following BLEND file: http://download.blender.org/ftp/sergey/dragon_adult_flycycle.blend

I have attached the sysinfo for the A10-7850K system and the output log by running "blender -d". I believe the relevant parts of the output log are:

Animato: Invalid path. ID = 'Key.006',  'keys["PUError compiling GLSL shader (FRAGMENT_SHADER): Fragment shader failed to compile with the following errors:
ERROR: 2:208: error(#5) Extension: "uniform buffer object is not supported in this version"
WARNING: 2:219: warning(#312) interface block with instance is supported in GLSL 1.5
ERROR: 2:240: error(#143) Undeclared identifier: lightSource
ERROR: 2:240: error(#145) Left of "[" is not of type array, matrix, or vector: lightSource
ERROR: 2:240: error(#222) Illegal vector field selection: position
ERROR: 2:252: error(#145) Left of "[" is not of type array, matrix, or vector: lightSource
ERROR: 2:252: error(#222) Illegal vector field selection: diffuse
ERROR: 2:252: error(#216) Vector field selection out of range "rgb"
ERROR: 2:253: error(#145) Left of "[" is not of type array, matrix, or vector: lightSource
ERROR: 2:253: error(#222) Illegal vector field selection: specular
ERROR: 2:253: error(#216) Vector field selection out of range "rgb"
ERROR: error(#273) 10 compilation errors.  No code generated

Update: same problem with the default scene when I add a Subdivision Surface modifier and enable OpenSubdiv as well...

Update 2: Should have read the bug better, this is a different bug with the same symptoms. I can make a new bug if requested.

I am also witnessing the bug described above on an Intel 5775C, Win10 64, no discrete GPU:

Error linking GLSL program : Vertex shader does not write to gl_Position.

Here is the systeminfo:

Any news from developers here

@Sergey Sharybin (sergey) is on vacation and I don't have a GPU to test the issues with here so...

Antony, I could possibly set up a box with VNC for you to poke around, interested?

Yes, we could try that, but I'm busy today, is it OK to do tomorrow? I'll be on irc.

I have a Windows Intel box that exhibits this error, and it is available via remote-control. Let me know if it can help anyone debug this.

I've setup a VS2013/CMake build of Blender on it as well.

@T45896:
I think that this is because GPU which I use is old.
It does not seem to support GL_ARB_gpu_shader5.

If your gpu is old you should only see none in user preferences which is the same as having it desabled

@Aaron Carlisle (Blendify):
Four types are enumerated.
Now that this problem does not occur, I have set the "None" to "Opensubdiv compute type".

Can you guys download latest build from https://builder.blender.org/download/ and see if some of the crashes fixed in there?

Can you guys download latest build from https://builder.blender.org/download/ and see if some of the crashes fixed in there?

Tested (Intel GPU) instant crash with all modes, CPU, OpenMP and GLSL Compute.
Later i'll try with the Ati Radeon GPU

Hi, tested with latest buildbot and crash with all modes, CPU, OpenMP and GLSL Compute.

Build 6ca12d1
Windows 10 Pro 64
Intel HD 4400
Driver 10.18.15.4256 (from Intel not Windows update)

Keep crashing in all mode latest build [ 6ca12d1 ]

_Win 7 64bit
_Geforce GTS 250
_Intel icore 5 quad

@Sergey Sharybin (sergey):
Correct me if I am wrong.
A function called openSubdiv_supportGPUDisplay of intern/opensubdiv/opensubdiv_capi.cc seems to be wrong.

currently

int openSubdiv_supportGPUDisplay(void)
{
    return GL_EXT_geometry_shader4 &&
           GL_ARB_gpu_shader5 &&
           GL_ARB_uniform_buffer_object &&
           glProgramParameteriEXT;
}

Is this not right?

int openSubdiv_supportGPUDisplay(void)
{
    return GLEW_EXT_geometry_shader4 &&
           GLEW_ARB_gpu_shader5 &&
           GLEW_ARB_uniform_buffer_object &&
           glProgramParameteriEXT;
}

@Antony Riakiotakis (psy-fi):
It is not so nice for me. :-(
My GPU does not support GL_ARB_gpu_shader5.
It means that I do not have a choice except "None".
Right?

Yes, this is probably the case. @Sergey Sharybin (sergey) can tell for sure.

@perfection cat (sindra1961), That is correct. For OpenSubdiv you need graphics card and driver with decent OpenGL support.

I've poked buildbot and there's new win64 builds available. Perhaps fix from @Antony Riakiotakis (psy-fi) and @perfection cat (sindra1961) solved crashes for someone?

win32 builds are currently not ready, having issues with cuda kernels in there. So win32 folks please be patient a bit.

Thanks, @Antony Riakiotakis (psy-fi), @Sergey Sharybin (sergey).
I hope that build of win32 buildbot succeeds early.

Committed some extra tweaks to code, this solved crash for @Wolfgang Faehnle (mib2berlin).

Both win32 and win64 builds should be up to date now. Please give it a whirl and provide feedback if crash is solved and if there are other issues.

Committed some extra tweaks to code, this solved crash for @Wolfgang Faehnle (mib2berlin).
Both win32 and win64 builds should be up to date now. Please give it a whirl and provide feedback if crash is solved and if there are other issues.

Tested Buildbot (90f6675) Windows 10 (Intel GPU), CPU and OpenMP works now, GPU Compute still crash.

Executed with -d argument, crash output:

Error: EXCEPTION_ACCESS_VIOLATION

Nothing more.

If opensubdiv is active in subsurf modifier the info header don´t show the number of faces, verts, tris...

All compute devices still crash under latest master 90f6675

GLSL computer crash log:

Error:
Error: Link called without any attached shader objects.

Error: Link called without any attached shader objects.

Error: Link called without any attached shader objects.

Error: EXCEPTION_ACCESS_VIOLATION

C:\Users\Aaron\Downloads\Blender\blender-2.75-90f6675-win64\Blender-2.75.0-git.90f6675-AMD64>

Other modes just give the EXCEPTION_ACCESS_VIOLATION error

@Sergey Sharybin (sergey) or @Antony Riakiotakis (psy-fi):
I found the source code that I could not understand.
Does this point at a right address?

opensubdiv_gpu_capi.cc

static void perform_drawElements(GLuint program,
                                 int patch_index,
                                 int num_elements,
                                 int start_element)
{
	int mode = GL_QUADS;
	if (program) {
		glUniform1i(glGetUniformLocation(program, "PrimitiveIdBase"),
		            patch_index);
	}
	mode = GL_LINES_ADJACENCY;
	glDrawElements(mode,
	               num_elements,
	               GL_UNSIGNED_INT,
	               (void *)(start_element * sizeof(unsigned int)));		<---- Here
}

@perfection cat (sindra1961) yes it does.

Can we move development-related discussions to the #blendercoders? It's already a bit tricky to keep track of all the configurations and remained issues here.

@Sergey Sharybin (sergey):
The reason why I asked question is that glBindBuffer did not seem to be called before calling glDrawElements.
However, I may not only understand me.

what is the status on this?

I still have an Intel machine available via remote control if anyone needs it to debug this.

Did some changes yesterday from our side. So please download latest builds from builder.blender.org and give it another try.

Well I'm not getting the first error message as seen in the description. For all modes except GLSL Compute crash with Error: EXCEPTION_ACCESS_VIOLATION but GLSL compute crashes with:

GPUShader: compile error:
WARNING: 1:5: '#extension' :  'GL_EXT_gpu_shader4' is not supported
ERROR: 3:8: 'varying' : cannot be used with a block or a structure


Error: `
Error: Link called without any attached shader objects.

Error: Link called without any attached shader objects.

Error: Link called without any attached shader objects.

Error: EXCEPTION_ACCESS_VIOLATION

@perfection cat (sindra1961) Thing is that even is you use the CPU to evaluate you still might want to see the result. For this you will still need a GPU capable of executing the shaders that render the result. These currently need

geometry shadersextension or GL 3.2+
gpu_shader5extension or GL 4.0+
uniform buffer objectextension or GL 3.1+
glProgramParameteriextension or GL 4.1+

what is weird is that your driver for the HD4600 should support OpenGL 4.3 on windows

http://delphigl.de/glcapsviewer/gl_generatereport.php?reportID=961

Updated documentation so now it should be clear why CPU compute devices are not always available.

P.S. Please move discussion which isn't related to the crash to either irc or mailing list. Since now all the comments which are not directly related to the crash will be removed.

For now i've disabled Intel cards for OpenSubdiv. Really need access to a faulty hardware in order to solve the issue.

If someone has issue with non-intel card please submit a new report with system-ifo.txt attached there.

@Sergey Sharybin (sergey) Sharybin
did you read my post here I have the same problems an my card is an nvidia geforcxe gts 250 i attached a text file
_Win 7 64bit
_Geforce GTS 250
_Intel icore 5 quad

system info.txt

Here is my system info

@Sergey Sharybin (sergey) I have an Intel box you can remote access with a blender dev environment set up already. I can send you details on how to access it.

@rafael nolasco (kakachiex2), i didn't see you reply after @Antony Riakiotakis (psy-fi)'s changes on aug 27th. According to your systm info you GPU doesn't support gpu_shader5 extension which is being checked there https://developer.blender.org/diffusion/B/browse/master/intern/opensubdiv/opensubdiv_capi.cc;3f05d72a98ba443cd9c2bc25f85a5b77116e87e5$321

So please grab latest build form builder.blender.org and see if crash still happens for you.

@Anshu Arya (anshuarya), remote access on windows falls back to GDI driver, which isn't really good for such kind of issues. It'll help much more if you can gather a crash backtrace.

@Sergey Sharybin (sergey), no it should be OK, I've done a session on @Anshu Arya (anshuarya)'s machine and it works fine.

part of my problem I think is that I only have OpenGL 4.0 but as long as it no longer crashes

The crash has been solved on some newer platforms (Haswell or newer), but there is GLSL Compute corruption! Not sure if this is due to updated drivers or some fix pushed in Blender. I wonder if this fix from OpenSubdiv 3.0.3 will fix the corruption: https://github.com/PixarAnimationStudios/OpenSubdiv/pull/742

Will open a new bug for the corruption problem. Sometimes the mesh is corrupted, and sometimes it is not shown at all.

i5-4570 /w HD 4600 GPU
Windows 10
Blender 2.76 build 741cf19, OPENSUDBIV_ALLOW_INTEL flag set, default scene, GLSL Compute device selected
10.18.15.4279
GLSL Compute Corruption but no crash, see screenshots:

,

i3-3227U /w HD 4000 GPU
Win 10
Blender 2.76 build 741cf19, OPENSUDBIV_ALLOW_INTEL flag set, default scene, GLSL Compute device selected
10.18.10.4252 -- NOT a newer driver, newer driver not available yet
Crash - EXCEPTION_ACCESS_VIOLATION error