https://bugs.winehq.org/show_bug.cgi?id=52564
Bug ID: 52564 Summary: dxgi:dxgi times out in test_find_closest_matching_mode() on cw-gtx560 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: ---
When run in Wine, dxgi:dxgi times out in test_find_closest_matching_mode() on cw-gtx560:
$ WINETEST_NO_MT_D3D=1 WINETEST_TIME=1 ./wine dlls/dxgi/tests/dxgi_test.exe dxgi [...] dxgi.c:1582:1.778 mode_count=130 dxgi.c:1585:1.778 i=0 dxgi.c:1585:2.452 i=1 dxgi.c:1585:3.123 i=2 dxgi.c:1585:3.867 i=3 dxgi.c:1585:4.806 i=4 dxgi.c:1585:5.929 i=5 dxgi.c:1585:7.061 i=6 dxgi.c:1585:8.187 i=7 dxgi.c:1585:9.332 i=8 dxgi.c:1585:10.542 i=9 [...] dxgi.c:1656:139.600 [...] 0020:dxgi:188.618 12836 tests executed (203 marked as todo, 2 failures), 35 skipped.
https://test.winehq.org/data/patterns.html#dxgi:dxgi
The problem is that it slows down after the first few modes, taking 1060 ms on average. And there are 130 modes to test so the test hits the 120 second limit.
This issue started with the commit below.
commit 1f2c3e8538b088f678a588121fc0bf7811336efc Author: Jacek Caban jacek@codeweavers.com Date: Wed Dec 1 16:02:43 2021 +0100
win32u: Move NtUserEnumDisplaySettings implementation from user32.
Signed-off-by: Jacek Caban jacek@codeweavers.com Signed-off-by: Huw Davies huw@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
Before that commit test_find_closest_matching_mode() was much faster.
dxgi.c:1582:1.558 mode_count=130 dxgi.c:1585:1.558 i=0 dxgi.c:1585:1.751 i=1 dxgi.c:1585:1.960 i=2 dxgi.c:1585:2.168 i=3 dxgi.c:1585:2.361 i=4 dxgi.c:1585:2.570 i=5 dxgi.c:1585:2.763 i=6 dxgi.c:1585:2.939 i=7 dxgi.c:1585:3.132 i=8 dxgi.c:1585:3.309 i=9 [...] dxgi.c:1656:25.519 [...] 0020:dxgi:63.668 12835 tests executed (203 marked as todo, 2 failures), 35 skipped.
(184 ms on average)
Note: cw-rx460 does not have this issue because it has fewer modes to test (20), and testing each mode is much faster too (28 ms on average).