Summary: | [bisected] radv vulkan smoke test black screen (Add support for DRI3 v1.2) | ||
---|---|---|---|
Product: | Mesa | Reporter: | mercuriete <mercuriete> |
Component: | Drivers/Vulkan/Common | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | high | CC: | airlied, bas, chadversary, daniel, jason, sergii.romantsov |
Version: | git | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | |||
Bug Blocks: | 106157 | ||
Attachments: |
ugly patch
good patch Xorg log |
Description
mercuriete
2018-04-22 18:45:45 UTC
not sure if i forget to put this: x11-base/xorg-server-1.19.5-r1 x11-base/xorg-drivers-1.19 I think I am using xorg modesetting. I'll rise the severity because this issue block me from update from mesa 18.0.1 to mesa 18.1.0-rc1 dota2 is affected as well. Probably is a Southern Islands with PRIME problem only. Still happen in mesa 18.1.0-rc2 Sorry I need help to add useful logs. I tried to revert that patch but there are conflicts when reverting. Thanks in advance. Please try this https://patchwork.freedesktop.org/patch/219239/ mesa 18.1.0-rc2 + dri3-Only-update-number-of-back-buffers-in-loader_dri3_get_buffers.patch It seems to me that there is some problem with dri3 in mesa 18.0.1/18.1.0rc2 Hi I tried that patch on top of mesa-18.1.0_rc2 it fixes some issues with resizing windows and with alt+tab in csgo+opengl But it does not fix this problem. * vulkan smoketest on intel haswell is OK (now doesnt crash when resizing window) * vulkan smoketest on radv is a BLACK window and crashes when maximize window. terminate called after throwing an instance of 'std::runtime_error' what(): VkResult -1000001004 returned * dota2 on radv only shows the cursor and cpu usage is 100% on cpu0 but no crash. * dota2 on anv haswell same behaviour (show cursor and 100% usage on cpu0) Perf information with radv+PRIME with dota2 # To display the perf.data header info, please use --header/--header-only options. # # # Total Lost Samples: 0 # # Samples: 29K of event 'cycles:uppp' # Event count (approx.): 5618911073 # # Overhead Command Shared Object Symbol # ........ ............... ............................ ....................................... # 93.64% VKRenderThread [kernel.vmlinux] [.] syscall_return_via_sysret 2.00% VKRenderThread libtier0.so [.] CThreadFastMutex::Lock 1.03% VKRenderThread libpthread-2.25.so [.] pthread_yield 0.58% VKRenderThread libc-2.25.so [.] __sched_yield 0.47% VKRenderThread libtier0.so [.] ThreadSleep@plt 0.26% VKRenderThread [kernel.vmlinux] [.] native_irq_return_iret 0.25% VKRenderThread [unknown] [k] 0x00007f2d7dd06495 0.24% VKRenderThread libtier0.so [.] pthread_yield@plt 0.23% SDLAudioP2 libm-2.25.so [.] __powf_finite 0.17% SDLAudioP2 [kernel.vmlinux] [.] syscall_return_via_sysret 0.15% AsyncScheduledF [kernel.vmlinux] [.] syscall_return_via_sysret 0.10% VKRenderThread libpthread-2.25.so [.] sched_yield@plt 0.09% dota2 [kernel.vmlinux] [.] syscall_return_via_sysret 0.08% AsyncScheduledF libm-2.25.so [.] __powf_finite 0.05% VKRenderThread libtier0.so [.] ThreadSleep 0.04% SDLAudioP2 libm-2.25.so [.] powf 0.02% SDLAudioP2 libm-2.25.so [.] log10f 0.02% AsyncScheduledF libm-2.25.so [.] powf 0.01% SDLAudioP2 [kernel.vmlinux] [.] native_irq_return_iret 0.01% AsyncScheduledF libtier0.so [.] Plat_FloatTime 0.01% SDLAudioP2 libsoundsystem.so [.] 0x0000000000169aa4 0.01% AsyncScheduledF libpthread-2.25.so [.] pthread_cond_timedwait@@GLIBC_2.3.2 0.01% SDLAudioP2 libm-2.25.so [.] 0x0000000000006d91 0.01% AsyncScheduledF libm-2.25.so [.] log10f 0.01% SDLAudioP2 libm-2.25.so [.] 0x00000000000081f9 0.01% SDLAudioP2 libc-2.25.so [.] 0x000000000013e29f 0.01% SDLAudioP2 libc-2.25.so [.] 0x000000000013e3c0 This bug has something to do with DRI MODIFIERS My ugly patch fix my problem. My guess is... with PRIME there are something wrong with the swapchain Created attachment 139243 [details] [review] ugly patch I dont know anything about mesa but my guess without any knowledge is that maybe... the swap chain with PRIME is always SUBOPTIMAL forcing to recreate the swap chain. because is linear. not sure anyway... but at least I could narrow down the problem to few lines. Thanks for your work. vulkan gpuinfo intel haswell https://vulkan.gpuinfo.org/displayreport.php?id=3061 amd cape verde: https://vulkan.gpuinfo.org/displayreport.php?id=3060 Maybe you can check if is problem with OPTIMAL formats. Thanks Created attachment 139255 [details] [review] good patch The previous patch fix this issue I've never contributed before to mesa, I want to send this patch to the mail list but i dont know how: if you want to commit that patch i would like to be: Abel Garcia Dorta <mercuriete@yahoo.es> I've tested my patch and now I can play again dota2 and i can do vulkan smoketest. To confirm, you are running radv while using intel for the X server? I think i am. I am using a laptop with prime configuration. So I think when using plasma kde (kwin_x11 compositor) i am using X11 over intel. What I not sure is what DDX drivers i am using. I think i am using modesetting for both graphic cards but I not sure. I will attach the Xorg.log and xrandr --list providers xrandr --listproviders Providers: number : 2 Provider 0: id: 0x7a cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 2 associated providers: 0 name:modesetting Provider 1: id: 0x45 cap: 0x5, Source Output, Source Offload crtcs: 6 outputs: 0 associated providers: 0 name:modesetting Created attachment 139368 [details]
Xorg log
Jason's patch: https://patchwork.freedesktop.org/patch/220799/ The patch implemented by Bas https://patchwork.freedesktop.org/patch/220792/ has been Tested-by: Abel Garcia Dorta <mercuriete@gmail.com> on top of master and on top of mesa-18.1.0_rc2 provided by gentoo. Thank you for fixing it! This should be fixed by the following commit on master: commit b17cfb08a3fc9a599eff64fffe48daba398a672f Author: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Date: Sat May 5 15:34:44 2018 +0200 vulkan/wsi: Only use LINEAR modifier for prime if supported. This was setting the LINEAR modifier if neither the X server nor the driver supported modifiers. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106180 Fixes: c80c08e226 "vulkan/wsi/x11: Add support for DRI3 v1.2" CC: 18.1 <mesa-stable@lists.freedesktop.org> Tested-by: Abel Garcia Dorta <mercuriete@gmail.com> Acked-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> |
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.