Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

WDK 14393 Code Analysis Enforces POOL_NX_OPTIN, Breaks POOL_NX_OPTIN

WDK 14393 Code Analysis Enforces POOL_NX_OPTIN, Breaks POOL_NX_OPTIN

In an interesting twist, build 14393 of the WDK now enforces the use of NX non-paged pool:

This is a good thing as it will force all of us lazy driver developers to finally embrace marking our allocations as NX.

Now for the bad news…If you go the tried and true route of setting POOL_NX_OPTIN to automagically convert to NX, you’ll get another, completely bogus error about allocating must succeed pool:

Argh! Clearly something is broken, we’re in the process of reporting this issue to the WDK team for verification and will report back once we have more details. In the meantime, you might want to hold off on the upgrade if you’re using POOL_NX_OPTIN (or get ready for some weird suppressions!).

Note that specifying NonPagedPoolNx does currently provide the correct behavior, though it’s not compatible with having a single binary for both pre- and post-Win8.