Mac kext: Replaces use of OSAtomic with standard C11 atomic operations#988
Mac kext: Replaces use of OSAtomic with standard C11 atomic operations#988pmj merged 1 commit intomicrosoft:masterfrom
Conversation
The OSAtomic APIs are not available in that form in user space, and so caused errors when linking the testable kext. The similar user space equivalents are already deprecated in any case, so replacing their use with the standardised C11 operations is the sensible choice.
|
IIRC, the OSAtomics being transitioned to C11 atomics is what caused our problem with IOSharedDataQueue. While we believe that to be fixed, I'm going to run a large repo build on top of this PR just to be sure. https://mseng.visualstudio.com/AzureDevOps/_build/results?buildId=9158349 |
I'm pretty confident this change won't suffer from the same problem, but running the large repo build is definitely a good idea. The problem with |
|
Looks like the large repo build completed without a hitch, so I'm going to go ahead and merge this. |
The OSAtomic APIs are not available in that form in user space, and so caused errors when attempting to call functions (
ProviderMessaging_TrySendRequestAndWaitForResponse()!) that use them in the kext testing target. The similar user space equivalents are already deprecated in any case, so replacing the kext versions' use with the standardised C11 operations is the sensible choice.