C28135
предупреждение C28135: если первый аргумент к KeWaitForSingleObject является локальной переменной, параметр Mode должен быть KernelMode
Драйвер ожидает в пользовательском режиме. Таким образом, стек ядра можно переключить во время ожидания. Если драйвер пытается передать параметры в стеке, может привести к сбою системы.
Пример
Следующий пример кода вызывает это предупреждение.
KeWaitForSingleObject(&MyMutex, UserRequest, UserMode, false, NULL);
Следующий пример кода избегает этого предупреждения.
KeWaitForSingleObject(&MyMutex, UserRequest, KernelMode, false, NULL);