https://bugs.winehq.org/show_bug.cgi?id=54411
Bug ID: 54411 Summary: ntoskrnl.exe:ntoskrnl - test_pnp_devices() sometimes gets an unexpected success in Wine Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: ntoskrnl Assignee: wine-bugs@winehq.org Reporter: fgouget@codeweavers.com Distribution: ---
ntoskrnl.exe:ntoskrnl - test_pnp_devices() sometimes gets an unexpected success in Wine:
ntoskrnl.c:1715: Test succeeded inside todo block: got error 997
See https://test.winehq.org/data/patterns.html#ntoskrnl.exe:ntoskrnl
Where 997 == ERROR_IO_PENDING
The test happens about once per month but has been known to impact merge requests (e.g. MR2039).
This looks like a race condition. Mark the test as flaky in Wine?
https://bugs.winehq.org/show_bug.cgi?id=54411
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rbernon@codeweavers.com Keywords| |source, testcase
https://bugs.winehq.org/show_bug.cgi?id=54411
Zeb Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com Version|unspecified |8.0
--- Comment #1 from Zeb Figura z.figura12@gmail.com --- Yes, it's a race condition. The device is deleted on IoDeleteDevice(), which causes further server calls to return STATUS_FILE_DELETED in the server, but sometimes that ioctl makes it through before we hit IoDeleteDevice(). The correct thing to do is not delete the device until the last reference is released, and not force calls to return STATUS_FILE_DELETED. Ideally we should fix the code, although it's a bit tricky, because the refcounting is currently kind of backwards in the server.