https://bugs.freedesktop.org/show_bug.cgi?id=78453
--- Comment #74 from Konstantin ernestoguevara@gmx.net --- First, sorry for being away so long.
(In reply to comment #69)
First of all, let me remind both of you to make sure si_get_backend_mask() gets the information from the kernel, and to use my patch which disables tiling as much as possible for now.
Ok, but how do I make sure that si_get_backend_mask() gets information from the kernel ?
(In reply to comment #69)
Also, might be worth testing with R600_DEBUG=nodma for now, to prevent the userspace code from using the asynchronous DMA engine.
Will do that.
(In reply to comment #69)
That's all it's supposed to do, FWIW. :)
I guessed as much :-) I actually was quite excited that it worked.
(In reply to comment #69)
Does it work if you add EGL_DRIVER=egl_dri2 ?
Unfortunately that didn't work. As output I get (note best driver is DRI2 instead of gallium): # EGL_LOG_LEVEL=debug EGL_PLATFORM=drm EGL_DRIVER=egl_dri2 ./egltri_screen libEGL debug: Native platform type: drm (environment overwrite) libEGL debug: EGL search path is /usr/lib64/egl libEGL debug: added egl_dri2 to module array libEGL debug: the best driver is DRI2 EGL_VERSION = 1.4 (DRI2) libEGL debug: attribute 0x3033 has an invalid value 0x8 libEGL debug: EGL user error 0x3004 (EGL_BAD_ATTRIBUTE) in eglChooseConfig EGLUT: failed to choose a config
But on recent mesa it works again without EGL_DRIVER.
(In reply to comment #69)
I'm afraid it's still too early to test in X. Even without -retro, the GPU is probably used for some operations via glamor, e.g. for the cursor image.
Well, I just tested again on yesterdays mesa (2014-06-22) and vanilla kernel 3.16-rc2 (no patches, cause I had problems on rc1). egltri_screen still works once, then I get garbage, that now looks different (lots of small dots).
I also tried eglgears_screen, but that segfaults. I guess it's a problem in llvm - and unfortunately llvm refuses to build for about 2 weeks now. Output is:
LLVM triggered Diagnostic Handler: unsupported call to function llvm.AMDGPU.rsq. in main [ 621.798733] traps: eglgears_screen[431] general protection ip:7f0cb3ae51d8 sp:7fffe17cfa10 error:0 in libLLVM-3.5svn.so[7f0cb2b35000+1af1000] Segmentation fault
Next I'll try to get the kernel patches for disabling tiling running again and use R600_DEBUG=nodma. Do I have to do anything about si_get_backend_mask() ?