[llvm-dev] llvm-6 change from inlining to relocations causing ImageMagick+mesa crash
James Harvey via llvm-dev
llvm-dev at lists.llvm.org
Sun Jun 2 17:06:17 PDT 2019
ImageMagick + mesa provided OpenCL has been failing for many people
for some time now. See
https://github.com/ImageMagick/ImageMagick/issues/1366
It was tracked down that ImageMagick commit 41a3cc9 and Mesa commit
9baacf were involved.
There's been discussion about this on the Mesa list. See
https://lists.freedesktop.org/archives/mesa-dev/2019-June/219736.html
Mesa dev Jan Vesely says behavior changed in llvm-6 that started
causing GPU hangs/crashes in some situations, and their commit was
just to prevent those.
Specifically: "AMDGPU llvm backend used to inline all function calls
until llvm-6. llvm-6+ uses functions calls and issues relocations for
each function invocation. unhandled relocations lead to GPU
hangs/crashes. either clover/mesa needs to handle relocations, or LLVM
needs to stop using relocations for internal symbols (they are not
needed)."
I don't know all the specifics, of course, but it sounds like even if
ImageMagick or mesa could be changed as a workaround, that the
ultimate cause was a change in llvm-6 that is causing crashes and
should be addressed.
I'm trying to bring the 3 involved projects together. At this time,
we unfortunately don't have a specific llvm commit where the failure
started. If it's needed, please ask. It's not something I'd be able
to bisect, but I'd be able to see if I could find someone involved who
would.
More information about the llvm-dev
mailing list