C28108

warning C28108: Variable holds an unexpected resource

The resource that the driver is using is in the expected C language type, but has a different semantic type.

Example

The following code example generates this warning:

KeAcquireInStackSpinLock(spinLock, lockHandle);
...
KeReleaseSpinLock(spinLock, 0);

The following code example avoids this warning:

KeAcquireInStackSpinLock(spinLock, lockHandle);
...
KeReleaseInStackSpinLock(lockHandle);