http://bugs.winehq.org/show_bug.cgi?id=28385
Summary: d3d9/query.ok fails on ATI Product: Wine Version: 1.3.28 Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: directx-d3d AssignedTo: wine-bugs@winehq.org ReportedBy: dank@kegel.com
I picked up an A8-3850 so I could test AMD graphics, and installed the latest driver straight from AMD. Three tests fail; here's the first one:
../../../tools/runtest -q -P wine -M d3d9.dll -T ../../.. -p d3d9_test.exe.so query.c && touch query.ok ... query.c:230: Test failed: IDirect3DQuery9_GetData a 2nd time on a ended query returned 00000001
http://bugs.winehq.org/show_bug.cgi?id=28385
--- Comment #1 from Dan Kegel dank@kegel.com 2011-09-14 23:50:40 CDT --- glxinfo says:
OpenGL vendor string: ATI Technologies Inc. OpenGL renderer string: AMD Radeon HD 6550D OpenGL version string: 4.1.11005 Compatibility Profile Context OpenGL shading language version string: 4.10
http://bugs.winehq.org/show_bug.cgi?id=28385
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID
--- Comment #2 from Henri Verbeet hverbeet@gmail.com 2011-09-15 06:48:55 CDT --- Fglrx bugzilla is at http://ati.cchtml.com/. The tests mostly pass with the r600g driver, aside from one known failure in the d3d9 visual tests and a race in the ddraw tests. Both of those are bugs in the driver as well.
http://bugs.winehq.org/show_bug.cgi?id=28385
--- Comment #3 from Henri Verbeet hverbeet@gmail.com 2011-09-15 06:49:32 CDT --- *** Bug 28387 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=28385
--- Comment #4 from Henri Verbeet hverbeet@gmail.com 2011-09-15 06:49:47 CDT --- *** Bug 28386 has been marked as a duplicate of this bug. ***
http://bugs.winehq.org/show_bug.cgi?id=28385
Henri Verbeet hverbeet@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #5 from Henri Verbeet hverbeet@gmail.com 2011-09-15 06:51:14 CDT --- Closing.
http://bugs.winehq.org/show_bug.cgi?id=28385
Stefan Dösinger stefandoesinger@gmx.at changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |stefandoesinger@gmx.at
--- Comment #6 from Stefan Dösinger stefandoesinger@gmx.at 2011-09-16 16:48:01 CDT --- The test causes wined3d to fetch the query result twice after completing an occlusion query, and expects that the data is available in both cases. Apparently fglrx removes the result from the GL query object after it has been retrieved once.
The ARB_occlusion_query doesn't explicitly mention repeated reading of the query result. Issue 22 says "The result returned from GetQueryObjecti[u]vARB will always be from the last BeginQueryARB/EndQueryARB pair on that target and id", but this has a different context(old query results are lost if the query is restarted). I'll see if newer opengl specs say anything about this, but I don't really expect them to.
I'll file a bug report in amd's unofficial bugzilla and see if they respond. We can fix this issue on our side if we want to(store the last result in struct wined3d_occlusion_query), but we have to take care to discard it when the query is restarted.
http://bugs.winehq.org/show_bug.cgi?id=28385
--- Comment #7 from Stefan Dösinger stefandoesinger@gmx.at 2011-09-23 11:12:14 CDT --- Filed as http://ati.cchtml.com/show_bug.cgi?id=268 . I believe the driver is wrong to return GL_QUERY_RESULT_AVAILABLE_ARB=FALSE because GL_QUERY_RESULT_ARB returns data just fine, while GL_QUERY_RESULT_AVAILABLE_ARB never returns true and doesn't generate an error.
But I'll see if AMD replies to the bug report.