Strange corruption with graphics/darktable and OpenGL
The first time I run "darktable", everything is fine. When I close it, and start it again, it fails with the following error:
ld-elf.so.2: assert failed: /usr/src/libexec/rtld-elf/rtld.c:3045
When I reinstall darktable (pkg remove darktable && pkg ins darktable), and then start it again, it works. But again, the second time, it fails with the same error.
This is my configuration:
I am using radeonkms. Is something corrupting my memory? Maybe OpenGL?
#2 Updated by zrj about 2 months ago
> It must be related towards OpenCL. When I reinstall darktable, I can run it with "darktable --disable-opencl" as often as I want.
Do you have lang/clover installed? If so darktable is not gracefully handling opencl invocation. In current DRM driver implementation we do not support /dev/dri/renderD128+ nodes that do not require X11 authentication (mesa developers removed x-cookie verification from clover and to add it back is not so trivial). We could add /dev/dri/control and /dev/dri/render nodes into drm.ko (technically we should anyway) but that would open up a very likely security hole. Given how most of c++ programs deal with OpenCL contexts we would also need swapable drm/ttm buffer memory too and that is another story.
If it is lang/beignet on i915, just don't use it.
#3 Updated by mneumann about 2 months ago
Update: The failures seem to be pretty random, so "darktable --disable-opencl" does not work as described above, it just did work for a few times, so I assumed this was related. No, I don't have lang/clover installed. I am using a Radeon card. I will wait for the new version of darktable and try again. They have fixed some issues. I was just very curious, why "pkg remove" made it work again, but now I can't even reproduce that.