https://bugs.freedesktop.org/show_bug.cgi?id=75211
Priority: medium Bug ID: 75211 Assignee: dri-devel@lists.freedesktop.org Summary: radeonsi/llvm SIGABRT in Antichamber (UDK) Severity: normal Classification: Unclassified OS: All Reporter: haagch.christoph@googlemail.com Hardware: Other Status: NEW Version: git Component: Drivers/Gallium/radeonsi Product: Mesa
Created attachment 94363 --> https://bugs.freedesktop.org/attachment.cgi?id=94363&action=edit backtrace without debug symbols
HD 7970M, mesa recent git, llvm 3.5 recent svn.
Antichamber based on Unreal Engine is available in the latest Humble Bundle.
The crash doesn't seem to happen deterministically, I produced such a crash two times now by playing the game for a few minutes and then it randomly crashed.
UDKGame-Linux: /build/lib32-llvm-svn/src/llvm/include/llvm/CodeGen/SlotIndexes.h:417: llvm::SlotIndex llvm::SlotIndexes::getInstructionIndex(const llvm::MachineInstr*) const: Assertion `itr != mi2iMap.end() && "Instruction not found in maps."' failed.
Program received signal SIGABRT, Aborted. 0xf7fdb430 in __kernel_vsyscall ()
The backtrace I attached is without debug symbols so maybe isn't too informative. Later I will compile with debug symbols and provide a better one if needed.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
Christoph Haag haagch.christoph@googlemail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #94363|0 |1 is obsolete| |
--- Comment #1 from Christoph Haag haagch.christoph@googlemail.com --- Created attachment 94379 --> https://bugs.freedesktop.org/attachment.cgi?id=94379&action=edit first short backtrace, then full backtrace with debug symbols
Okay, so here is a full backtrace with debugging information.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #2 from Christoph Haag haagch.christoph@googlemail.com --- Created attachment 94380 --> https://bugs.freedesktop.org/attachment.cgi?id=94380&action=edit last few lines before crash with MESA_GLSL=dump
So because it looks like it happens when compiling shaders I ran it with MESA_GLSL=dump. It loads and compiles most shaders at the beginning, that worked fine so I cut it off.
It occassionally seems to load new shaders, so after a while of gameplay with no output the attached stuff was printed and then immediately after that the game crashed.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #3 from Michel Dänzer michel@daenzer.net --- (In reply to comment #2)
So because it looks like it happens when compiling shaders I ran it with MESA_GLSL=dump.
Please use R600_DEBUG=ps,vs instead of MESA_GLSL=dump.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
Christoph Haag haagch.christoph@googlemail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #94380|0 |1 is obsolete| |
--- Comment #4 from Christoph Haag haagch.christoph@googlemail.com --- Created attachment 94423 --> https://bugs.freedesktop.org/attachment.cgi?id=94423&action=edit with R600_DEBUG=ps,vs
Wow, took me an hour of gameplay this time and quite a lot of loaded shaders in that time before it happened. It looks relatively random, i.e. doesn't crash at the same points in the game.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
Tom Stellard tstellar@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Depends on| |75276
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #5 from Tom Stellard tstellar@gmail.com --- Can you try this patch: https://bugs.freedesktop.org/attachment.cgi?id=94675
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #6 from Tom Stellard tstellar@gmail.com --- Can you try this branch: http://cgit.freedesktop.org/~tstellar/llvm/log/?h=si-spill-fixes
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #7 from VOT Productions votproductions@gmail.com --- HD 7750, Mesa-git, LLVM 3.5-svn.
Sanctum 2 crashes with a similar error when loading.
417: llvm::SlotIndex llvm::SlotIndexes::getInstructionIndex(const llvm::MachineInstr*) const: Assertion `itr != mi2iMap.end() && "Instruction not found in maps."' failed.
Always crashes in the same place, and the same time.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #8 from Tom Stellard tstellar@gmail.com --- Can you test this branch: http://cgit.freedesktop.org/~tstellar/llvm/log/?h=si-spill-fixes-v2
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #9 from Tom Stellard tstellar@gmail.com --- Updated v3 branch here: http://cgit.freedesktop.org/~tstellar/llvm/log/?h=si-spill-fixes-v3
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #10 from Christoph Haag haagch.christoph@googlemail.com --- Sorry for first only answering for Sanctum2, in Antichamber it often takes a long time to reach the point where it happens.
Sanctum2 starts and runs okay now I guess. But there are pretty big problems with it and I have no idea whether they are caused by this here or not:
As soon as the fullscreen window with Sanctum2 isn't displayed anymore (e.g. minimizing or switching workspaces), the whole X display is getting scrambled, but restores immediately when displaying the game window again. (Could of course be just the PRIME setup).
I started setting the graphics options higher and higher and at some point, got a GPU lockup. No gpu faults like in upvoid, just a lock up I think (blocked and resetted and stuff). I got a complete machine lockup moments later and didn't get more information. Again, no idea if it's related.
But the register spilling implementation at least works and seems to not cause any direct problems.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #11 from Christoph Haag haagch.christoph@googlemail.com --- Created attachment 98201 --> https://bugs.freedesktop.org/attachment.cgi?id=98201&action=edit dmesg with GPU lockup
Yea, this is maybe going off topic, but I'm a bit tired, so here's the dmesg with gpu lockup.
It always happens when going to Sanctum2's advanced graphics setting, right when enabling "Lichstrahlen" or light rays or whatever it's called in english.
The rest of the game seems to be fine as far as I have seen walking around for a pretty short time.
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #12 from Tom Stellard tstellar@gmail.com --- Can you try this LLVM patch:
https://bugs.freedesktop.org/attachment.cgi?id=99169
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #13 from Christoph Haag haagch.christoph@googlemail.com --- (In reply to comment #12)
Can you try this LLVM patch:
Sorry, but on top of what revision?
Latest upstream trunk (209031) says:
SIInstrInfo.cpp:197:41: Fehler: falsche Benutzung des unvollständigen Typs »const class llvm::Function« LLVMContext &Ctx = MF->getFunction()->getContext();
("wrong usage of partial type" or something)
https://bugs.freedesktop.org/show_bug.cgi?id=75211
--- Comment #14 from Tom Stellard tstellar@gmail.com --- (In reply to comment #13)
(In reply to comment #12)
Can you try this LLVM patch:
Sorry, but on top of what revision?
Latest upstream trunk (209031) says:
SIInstrInfo.cpp:197:41: Fehler: falsche Benutzung des unvollständigen Typs »const class llvm::Function« LLVMContext &Ctx = MF->getFunction()->getContext();
("wrong usage of partial type" or something)
I will post a new patch when I get a chance. You should be able to fix this by adding
#include "llvm/IR/Function.h"
to the includes in SIInstrInfo.cpp
https://bugs.freedesktop.org/show_bug.cgi?id=75211
Tom Stellard tstellar@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |DUPLICATE
--- Comment #15 from Tom Stellard tstellar@gmail.com ---
*** This bug has been marked as a duplicate of bug 75276 ***
https://bugs.freedesktop.org/show_bug.cgi?id=75211 Bug 75211 depends on bug 75276, which changed state.
Bug 75276 Summary: Implement VGPR Register Spilling https://bugs.freedesktop.org/show_bug.cgi?id=75276
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED
dri-devel@lists.freedesktop.org