From 06f40459df60f35876c67106aae2cd4d0e4d92a5 Mon Sep 17 00:00:00 2001 From: Olga Kornievskaia Date: Fri, 7 Jan 2011 14:51:50 -0500 Subject: [PATCH] making upcall wait uninterruptable switching user's upcall wait from being UserMode and TRUE (interruptable) to KernelMode and FALSE. msdn doc does recommend for simplicity of the drivers to do that. it seems to no longer generate interrupts on close irps but we are still able to ctrl-c running tests. --- sys/nfs41_driver.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/nfs41_driver.c b/sys/nfs41_driver.c index 08c81b4..d23b6c4 100644 --- a/sys/nfs41_driver.c +++ b/sys/nfs41_driver.c @@ -1245,7 +1245,7 @@ NTSTATUS nfs41_UpcallWaitForReply( KeSetEvent(&upcallEvent, 0, FALSE); DbgP("@@@ Creating %s upcall entry=%p xid=%d\n", opstring, entry, entry->xid); if (!entry->async_op) { - status = KeWaitForSingleObject(&entry->cond, Executive, UserMode, TRUE, NULL); + status = KeWaitForSingleObject(&entry->cond, Executive, KernelMode, FALSE, NULL); print_wait_status(1, "[downcall]", status, opcode2string(entry->opcode), entry, entry->xid); } else