Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
warning C28135: If the first argument to KeWaitForSingleObject is a local variable, the Mode parameter must be KernelMode
The driver is waiting in user mode. As such, the kernel stack can be swapped out during the wait. If the driver attempts to pass parameters on the stack, a system crash can result.
Example
The following code example elicits this warning.
KeWaitForSingleObject(&MyMutex, UserRequest, UserMode, false, NULL);
The following code example avoids this warning.
KeWaitForSingleObject(&MyMutex, UserRequest, KernelMode, false, NULL);