-
Notifications
You must be signed in to change notification settings - Fork 5k
Handle ERROR_NOT_SUPPORTED from QueueUserAPC2 #99033
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue DetailsOn WOW the
|
|
Regular CoreCLR has QueueUserAPC2 enabled for x64 only: runtime/src/coreclr/clrdefinitions.cmake Lines 223 to 225 in 5742895
We should fix this by keeping regular CoreCLR and native AOT in sync. |
That's what I originally did in e378290. Then I started discussing some issue about ARM64 and the documentation suggested that it's not supported there either. Turns out that x64 emulation on ARM64 actually supports it and the documentation is wrong. There may be some other issue with thread redirection under the emulation but that's unrelated. I can submit the commit above instead, if you prefer. |
…nd we don't handle fallback
I think at the time this was implemented it was basically - Win11 supports the API and Win10 produces |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks!
Thanks! |
On WOW the
QueueUserAPC2
call is not supported and returnsERROR_NOT_SUPPORTED
. This was noticed for the win-x86 NativeAOT port, but it may affect x64 emulation on ARM64 as well.