http://bugs.winehq.org/show_bug.cgi?id=58688
--- Comment #15 from Stian Low wineryyyyy@gmail.com --- (In reply to Nikolay Sivov from comment #13)
Do we know why it helps, if it actually does?
It helps to the extent that it reproduces good bisect test results and resolves: Unhandled exception: unimplemented function ntdll.NtSetEventBoostPriority
Short explanation:
I simply fleshed out NtSetEventBoostPriority stub as a syscall instead based on existing NtSetEvent syscall.
ABI maps changed by regressive commit ed9f31120b6: --- a/dlls/ntdll/ntdll.spec +++ a/dlls/ntdll/ntdll.spec
- SYSCALL_ENTRY( 0x002d, NtAlertThreadByThreadId, 4 ) \ + SYSCALL_ENTRY( 0x002d, NtSetEventBoostPriority, 0 ) \
- SYSCALL_ENTRY( 0x002d, NtAlertThreadByThreadId, 8 ) \ + SYSCALL_ENTRY( 0x002d, NtSetEventBoostPriority, 0 ) \
+ SYSCALL_ENTRY( 0x0066, NtAlertThreadByThreadId, 4 ) \ + SYSCALL_ENTRY( 0x0066, NtAlertThreadByThreadId, 8 ) \
My patch addresses from stub to syscall requirements for NtSetEventBoostPriority(HANDLE) function signature: + SYSCALL_ENTRY( 0x002d, NtSetEventBoostPriority, 4 ) \ + SYSCALL_ENTRY( 0x002d, NtSetEventBoostPriority, 8 ) \
Longer explanation still pending further review. I'll provide more details as found.
I'm still addressing other stubs that may still be broken but not fixed yet because they have not bugged Xenia Canary so far:
./wine/dlls/ntdll/ntsyscalls.h SYSCALL_STUB( NtApphelpCacheControl ) \ SYSCALL_STUB( NtCreateProcessEx ) \ SYSCALL_STUB( NtMapUserPhysicalPagesScatter ) \ SYSCALL_STUB( NtSetEventBoostPriority ) \ SYSCALL_STUB( NtTraceEvent ) \ SYSCALL_STUB( NtWaitForMultipleObjects32 ) \ SYSCALL_STUB( NtWorkerFactoryWorkerReady )
ntsyscalls.h may have been auto generated with bugs by Perl script: ./wine/tools/make_specfiles
SYSCALL_STUB may be bugged. If so then once fixed, other stubs may not require being fleshed out from stub to syscall as done for NtSetEventBoostPriority. However switching NtSetEventBoostPriority from stub to syscall may still be considered valid and ideal vs leaving less fleshed out.
These very low level changes were authored by Julliard whose wisdom and insights will be appreciated for merge request review: https://gitlab.winehq.org/wine/wine/-/merge_requests/8955