|Summary:||Wine breakage since d082c5324 (st/mesa: don't call st_validate_state in BlitFramebuffer)|
|Product:||Mesa||Reporter:||Andrew Randrianasulu <randrik>|
|Component:||Drivers/DRI/nouveau||Assignee:||Nouveau Project <nouveau>|
|Status:||RESOLVED FIXED||QA Contact:||Nouveau Project <nouveau>|
|i915 platform:||i915 features:|
Description Andrew Randrianasulu 2015-09-22 11:25:51 UTC
Created attachment 118396 [details] X log Hello. Recently I tried to play win32 version of UnrealTournament (first version) via wine. It worked before, but now failed. Updating wine to latest git (wine-1.7.51-201-g60d1d6f) not helped. I've bisected this down to mesa commit in summary (bisect was done on 10.6 branch, while bug was also present on master, what I usually use). Bug manifested itself as static desktop image instead of fullscreen or even windowed game (in windowed mode it was not wine's desktop, yet not anything from game). I also suspect llvmpipe can be affected - because I tried with LIBGL_ALWAYS_SOFTWARE=1 and saw similar effect. Hopefully below you can find apitrace from successfull game startup: https://cloud.mail.ru/public/Hre5/bqVCYrwod (3.2 Mb) git bisect log below: ---------------- git bisect start # good: [0b8e73a6ae2a77d0e9a7810cca5b181ba5f0893e] r600g,radeonsi: add driver queries for GPU temperature and shader+memory clocks git bisect good 0b8e73a6ae2a77d0e9a7810cca5b181ba5f0893e # bad: [02387926addc62198c9b684f4f51f7cbe06b3e25] docs: add sha256 checksums for 10.6.8 git bisect bad 02387926addc62198c9b684f4f51f7cbe06b3e25 # good: [65d4a20f1c1923498220637f9474d2ae399df52d] main: Refactor invalidate_framebuffer_storage. git bisect good 65d4a20f1c1923498220637f9474d2ae399df52d # good: [1f3ec929761d9aee986362ef90a4a150f4481496] mesa: Turn need_rgb_to_luminance_conversion() in to a global function git bisect good 1f3ec929761d9aee986362ef90a4a150f4481496 # bad: [1f6798a70a6d7e6db636decc6af752f9a7714906] egl: Add eglQuerySurface surface type check for EGL_LARGEST_PBUFFER attrib git bisect bad 1f6798a70a6d7e6db636decc6af752f9a7714906 # bad: [1f6798a70a6d7e6db636decc6af752f9a7714906] egl: Add eglQuerySurface surface type check for EGL_LARGEST_PBUFFER attrib git bisect bad 1f6798a70a6d7e6db636decc6af752f9a7714906 # good: [4c3a4ac6da7820226ecad5fd654899ae727e11e0] nvc0: turn sample counts off during blit git bisect good 4c3a4ac6da7820226ecad5fd654899ae727e11e0 # good: [ddc976368fef367e464472ebcc2ac4fd89eb9fd8] Add release notes for 10.6.3 git bisect good ddc976368fef367e464472ebcc2ac4fd89eb9fd8 # bad: [ba10c9ff5088b99591c13cad0b70929b49e6319c] nvc0: fix geometry program revalidation of clipping params git bisect bad ba10c9ff5088b99591c13cad0b70929b49e6319c # bad: [fbc464803a777bea4f9b7b11eeba192122adf8cb] mesa: Turn get_readpixels_transfer_ops() in to a global function git bisect bad fbc464803a777bea4f9b7b11eeba192122adf8cb # bad: [504903b827604f1a630a335d14231f88c2cf36be] st/mesa: don't call st_validate_state in BlitFramebuffer git bisect bad 504903b827604f1a630a335d14231f88c2cf36be # good: [c33ca1696a0a967091937805fa198ffc3317a03f] configure.ac: do not set HAVE_DRI(23) when libdrm is missing git bisect good c33ca1696a0a967091937805fa198ffc3317a03f --------------- Hw: 05:00.0 VGA compatible controller: NVIDIA Corporation G92 [GeForce 8800 GS] (rev a2) (prog-if 00 [VGA controller]) Note: I use older (patched) X server from 1.12 branch - but as far as I can see it doesn't expose anything new (sRGB fbconfigs, etc), and just changing nouveau_dri.so alone enough to make bug visible.
Comment 1 Ilia Mirkin 2015-09-22 18:17:03 UTC
This appears to affect all gallium drivers -- Glenn confirmed this was also showing black on r600. i965 is unaffected.
Comment 2 Ilia Mirkin 2015-09-22 18:23:03 UTC
(Updating commit id in subject to upstream commit, not stable branch)
Comment 3 Samuel Pitoiset 2015-09-22 20:05:41 UTC
I can also reproduce this bug on GF119 (nvc0 driver) with master, and (obviously) reverting that commit fixes the issue, but the assert in ext_framebuffer_blit/blit-early is back.
Comment 4 Ilia Mirkin 2015-09-23 01:06:54 UTC
FYI Marek has a fix: http://patchwork.freedesktop.org/patch/60146/ I tested it with this trace, and it seems to fix it.
Comment 5 Andrew Randrianasulu 2015-09-23 10:28:41 UTC
(In reply to Ilia Mirkin from comment #4) > FYI Marek has a fix: http://patchwork.freedesktop.org/patch/60146/ > > I tested it with this trace, and it seems to fix it. Yes, just tested it - works fine for both UT and 3Dmark2000! Thanks, Marek!
Comment 6 Marek Olšák 2015-09-24 18:28:57 UTC
Fixed by f3a081953393c7d40bd8df9ec22a2551d01098f5. Closing.