https://bugs.winehq.org/show_bug.cgi?id=52930
Bug ID: 52930 Summary: d3dcompiler_47:hlsl_d3d9 fails randomly on Windows Product: Wine Version: unspecified Hardware: x86-64 OS: Windows Status: NEW Severity: normal Priority: P2 Component: directx-d3d-util Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com
Created attachment 72305 --> https://bugs.winehq.org/attachment.cgi?id=72305 Small patch to apply on top of 58d20aae3772^ to get failures
d3dcompiler_47:hlsl_d3d9 fails randomly on Windows 8.1 to 21H2:
hlsl_d3d9.c:1691: Test failed: Got unexpected hr 0x88760b59. hlsl_d3d9.c:1692: Test failed: Got unexpected blob. hlsl_d3d9.c:1693: Test failed: Got unexpected errors.
https://test.winehq.org/data/patterns.html#d3dcompiler_47:hlsl_d3d9
A bisect against Windows 10 21H1 on cw-gtx560 shows that the failures started with the commit below:
commit 58d20aae3772473a90e43ee236b793f0421eecb1 Author: Eric Pouech eric.pouech@gmail.com Date: Tue Feb 8 19:48:44 2022 +0100
d3dcompiler/tests: Build without -DWINE_NO_LONG_TYPES.
Signed-off-by: Eric Pouech eric.pouech@gmail.com Signed-off-by: Henri Verbeet hverbeet@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
The patch does not actually make any change that should matter but I have confirmed the bisect result manually:
58d20aae3772^ -> 200 consecutive runs with no failure 58d20aae3772 -> fails after 9 to 33 runs - Applying just the Makefile.in parts and last 4 chunks of hlsl_d3d9.c of that commit is sufficient to get the failures. - Patching only the makefiles is not enough. - I did not try to identify which of the 4 chunks are needed to get failures. They all patch code that's executed after the failure anyway.
So there must be some memory corruption that's sensitive to memory layout or some subtle issue with the generated code.
I also if(0)ed-out all the other test_xxx() functions, and also if(0)ed-out the tests that preceded the failing one in test_include() but I still get the failure so it's not a case where an ill-advised NULL-behavior test causes memory corruption.
https://bugs.winehq.org/show_bug.cgi?id=52930
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source, testcase
https://bugs.winehq.org/show_bug.cgi?id=52930
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=52930
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |ABANDONED
--- Comment #1 from Zeb Figura z.figura12@gmail.com --- We don't have cw-gtx560 anymore, so I guess this is ABANDONED :-/
https://bugs.winehq.org/show_bug.cgi?id=52930
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|ABANDONED |--- Status|RESOLVED |REOPENED
--- Comment #2 from François Gouget fgouget@codeweavers.com --- This is not specific to cw-gtx560 (it's just the machine I used for my bisect, probably because it did not require temporarily taking a VM out of the TestBot).
This failure last happened on 2022-12-06 on w1064-tsign (32-bit) so this issue is not fixed. But it's pretty rare, the previous instance was a month before on 2022-11-09 on w1064v1809 (32-bit but it happens on 64-bit too).
https://bugs.winehq.org/show_bug.cgi?id=52930
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1| |58d20aae3772473a90e43ee236b | |793f0421eecb1