On Mon, 27 Nov 2023 20:22:40 GMT, Thorsten Fischer <d...@openjdk.org> wrote:
>> Hi, >> >> I did open the bug report. Some notes to this PR: >> >> My colleagues and I are able to reproduce this bug regularly, even though it >> takes sometimes up to 3 or 4 weeks until the D3DERR_DEVICEHUNG error shows >> up. We are currently evaluating two versions of fixes, but until now we do >> not have any results. I will post them as soon as I got them. >> >> Version 1 (this version): Based on the observation, that the >> TestCooperativeLevel/CheckDeviceState method returns D3D_OK again after >> about 20 - 60 seconds, the reinitialize is called after the first time the >> state is returning D3D_OK. The 'isHung' flag stores the information until >> then. >> >> Version 2: calls reinitialize directly after D3DERR_DEVICEHUNG has been >> returned. Basically >> if (hr == D3DERR_DEVICEREMOVED || hr == D3DERR_DEVICEHUNG ) { .. } >> >> I did not modify the validatePresent method, as for our workaround (see >> ticket) it was not necessary. At least the native call swapchain->present >> dows not return that error code >> (https://learn.microsoft.com/en-us/windows/win32/api/d3d9/nf-d3d9-idirect3dswapchain9-present). >> I did not look decisively into all the native calls behind >> D3DRTTexture#readPixels. >> >> As I said I will post the results (prism.verbose output) for the 2 versions >> later as a base for discussions. > > Thorsten Fischer has updated the pull request incrementally with one > additional commit since the last revision: > > Updated copyright year in D3DContext.cc @arapte Do you have any concerns about this PR? Since there are already two reviewers, you can review it or not as you prefer. ------------- PR Comment: https://git.openjdk.org/jfx/pull/1199#issuecomment-1830915133