This fixes Trials Fusion often crashing when disconnecting a controller while there are more still connected.
--
v21: ntoskrnl/tests: Use the 'Nt' version of the CancelIo APIs.
ntoskrnl/tests: Test the thread ID the cancellation routine runs from.
ntoskrnl/tests: Add more cancellation tests.
ntoskrnl/tests: Fix tests on current Windows 10 / 11.
ntdll/tests: Test IOSB values of the cancel operation.
ntdll/tests: Add more NtCancelIoFile[Ex]() tests.
ntdll: Wait for all asyncs to handle cancel in NtCancelIoFile().
server: Factor out a cancel_async() function.
server: Introduce a find_async_from_user helper.
ntdll: Factor out a cancel_io() function.
https://gitlab.winehq.org/wine/wine/-/merge_requests/7797