https://bugs.winehq.org/show_bug.cgi?id=53213
Bug ID: 53213 Summary: d3d11:d3d11 - test_texture() fails in the TestBot VMs Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: directx-d3d Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com Distribution: ---
d3d11:d3d11 - test_texture() fails in the TestBot VMs:
d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff0000ff at (0, 0). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff00ffff at (1, 0). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff00ff00 at (2, 0). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffffff00 at (3, 0). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffff0000 at (0, 1). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffff00ff at (1, 1). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff000000 at (2, 1). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff7f7f7f at (3, 1). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffffffff at (0, 2). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffffffff at (1, 2). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffffffff at (2, 2). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff000000 at (3, 2). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xffffffff at (0, 3). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff000000 at (2, 3). d3d11.c:9837: Test failed: Test 60: Got unexpected color 0xff000000 at (3, 3).
https://test.winehq.org/data/patterns.html#d3d11:d3d11
These failures don't happen on my box which has an Intel graphics card instead of QEmu's QXL graphics card. Note also that these failures still happen on my debian11 VM which has a single monitor instead of the TestBot VMs' multi-monitor setup.
So this seems to be related to the VMs QXL GPU.
Note that despite being systematic these failures could cause false positives (see bug 53212).
https://bugs.winehq.org/show_bug.cgi?id=53213
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source, testcase
https://bugs.winehq.org/show_bug.cgi?id=53213
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|d3d11:d3d11 - |d3d10core:d3d10core & |test_texture() fails in the |d3d11:d3d11 - |TestBot VMs |test_texture() fails in the | |TestBot VMs
--- Comment #1 from François Gouget fgouget@codeweavers.com --- d3d10core:d3d10core gets a similar set of failures on the same set of test configurations:
d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff0000ff at (0, 0). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff00ffff at (1, 0). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff00ff00 at (2, 0). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffffff00 at (3, 0). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffff0000 at (0, 1). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffff00ff at (1, 1). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff000000 at (2, 1). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff7f7f7f at (3, 1). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffffffff at (0, 2). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffffffff at (1, 2). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffffffff at (2, 2). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff000000 at (3, 2). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xffffffff at (0, 3). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff000000 at (2, 3). d3d10core.c:7544: Test failed: Test 52: Got unexpected color 0xff000000 at (3, 3).
https://test.winehq.org/data/patterns.html#d3d10core:d3d10core
These failures: * Don't happen on Debian 11 + Intel / KDE * Happen on Debian 11 + QXL + single-monitor * Happen on Debian 11 + QXL + multi-monitor * Happen on Debian Testing + QXL + multi-monitor
https://bugs.winehq.org/show_bug.cgi?id=53213
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #2 from Zeb Figura z.figura12@gmail.com --- The given test uses a sample with a POINT mip filtering modes with explicit LOD, and specifies that LOD to be exactly 0.5. llvmpipe, when interpreting LOD, rounds to even (by default), yielding 0.0.
GL 3.2, if my reading is correct, specifies rounding to -∞ [it specifically says ceil(lod + 1/2)]. Somewhere between there and 4.6 allowance is made for a non-preferred "alternative" of rounding to +∞ (it specifically says floor(lod + 1/2)]. The latter wording is carried forward to Vulkan.
The Direct3D spec, unusually, actually gives a ruling on this: rounding towards +∞ [again, specified in terms of floor(lod + 1/2)].
radeonsi, at least, consistently rounds toward +∞. llvmpipe doesn't follow any spec consistently. That said, do we care?
https://bugs.winehq.org/show_bug.cgi?id=53213
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Fixed by SHA1| |552a46ea78cc8bedc3d012040bf | |c70ce8d6f4666 Status|NEW |RESOLVED
--- Comment #3 from Zeb Figura z.figura12@gmail.com --- Fixed by https://source.winehq.org/git/wine.git/commitdiff/552a46ea78cc8bedc3d012040bfc70ce8d6f4666.
https://bugs.winehq.org/show_bug.cgi?id=53213
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #4 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 8.20.