A recent updated to Manjaro/Arch has caused the Godot Engine to lock up when it calls glLinkProgram. This appears to be a Mesa 18.3 bug as the issue has started recently and so has 18.3 been rolled out recently in Manjaro. Here are URL's to bug reports on the Godot forum that should provide further information: https://github.com/godotengine/godot/issues/24362 https://github.com/godotengine/godot/issues/24783 https://github.com/godotengine/godot/issues/24340
Can you try to bisect the commit where things chnages between 18.2 and 18.3?
This issue seems to be affecting me too, some people say it's been fixed in 18.2.3/.4 however I'm running 18.3.1 and definitely have the same symptoms in regards to Godot freezing up, I don't know much so can't be more help, there seems to be some discussion relating to the issue here though: https://bugzilla.redhat.com/show_bug.cgi?id=1646888
(In reply to smt from comment #2) > This issue seems to be affecting me too, some people say it's been fixed in > 18.2.3/.4 however I'm running 18.3.1 and definitely have the same symptoms > in regards to Godot freezing up, I don't know much so can't be more help, > there seems to be some discussion relating to the issue here though: > > https://bugzilla.redhat.com/show_bug.cgi?id=1646888 Are you sure that is the same bug? That one wasn't a Mesa bug it was a bug in GCC.
(In reply to Timothy Arceri from comment #3) > (In reply to smt from comment #2) > > This issue seems to be affecting me too, some people say it's been fixed in > > 18.2.3/.4 however I'm running 18.3.1 and definitely have the same symptoms > > in regards to Godot freezing up, I don't know much so can't be more help, > > there seems to be some discussion relating to the issue here though: > > > > https://bugzilla.redhat.com/show_bug.cgi?id=1646888 > > Are you sure that is the same bug? That one wasn't a Mesa bug it was a bug > in GCC. uh yeah sorry, I think that might be right, the symptoms are all very similar and the versions so close it's getting a little confusing for me to figure it all out to be honest
Well I have no idea how to use Godot and couldn't follow the instructions in the linked bug reports. So can someone attach a sample project here and instructions to trigger this problem with it? Thanks.
Hi Tim, sorry about the slow reply. I've added instructions on how to reproduce the problem here: https://github.com/godotengine/godot/issues/24783#issuecomment-453380560 Download build.zip and it has everything you need in there. How would I go about bisecting the changes between 18.2 and 18.3 where things went awry?
Created attachment 143144 [details] apitrace of godot including glLinkProgram lock up I don't know how useful this is in this situation and I haven't done it before now but I've managed to get an apitrace of it happening inside of Godot, happening around frame 540 or 541 when I enable emission on a material (though the freeze happens on any shader change if it's changing for the first time on that build of Godot), hopefully this can help in some way Just for clarification I am running 18.3.1 on Arch too
Thanks for the extra info and sorry for delay in looking at this. Fix sent to the list: https://patchwork.freedesktop.org/patch/281427/
Should be fixed by: commit fb78a6cb72270de271f75d6f6c9b5ebadba7a898 Author: Timothy Arceri <tarceri@itsqueeze.com> Date: Mon Jan 28 17:15:34 2019 +1100 glsl: use remap location when serialising uniform program resource data This allows us to avoid expensive string compares since we already have a map to the pointers. These compares were taking ~30 seconds for a single shader compile in Godot due to it using 64,000+ uniforms. Fixes: c4cff5f40254 ("glsl: add basic support for resource list to shader cache") Reviewed-by: Tapani Pälli <tapani.palli@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109229
Not the poster of this bug but a couple of us have tested this and indeed Godot appears to be running fine now, thank you very much
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.