C28135
aviso C28135: se o primeiro argumento para KeWaitForSingleObject for uma variável local, o parâmetro Mode deverá ser KernelMode
O driver está aguardando no modo de usuário. Dessa forma, a pilha de kernel pode ser trocada durante a espera. Se o driver tentar passar parâmetros na pilha, uma falha do sistema poderá resultar.
Exemplo
O exemplo de código a seguir gera esse aviso.
KeWaitForSingleObject(&MyMutex, UserRequest, UserMode, false, NULL);
O exemplo de código a seguir evita esse aviso.
KeWaitForSingleObject(&MyMutex, UserRequest, KernelMode, false, NULL);