From 19867b892f05058c1173e303c397942f7995f202 Mon Sep 17 00:00:00 2001 From: Casey Bodley Date: Tue, 15 Feb 2011 15:04:57 -0500 Subject: [PATCH] driver: made UNLOCK upcalls uninterruptible connectathon locking tests trigger an interrupted UNLOCK upcall, which leads to the bugcheck in CloseSrvOpen() when freeing the security context Signed-off-by: Casey Bodley --- sys/nfs41_driver.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/nfs41_driver.c b/sys/nfs41_driver.c index ddc852e..7fc1f0b 100644 --- a/sys/nfs41_driver.c +++ b/sys/nfs41_driver.c @@ -1253,9 +1253,12 @@ NTSTATUS nfs41_UpcallWaitForReply( * For now, I'm making CLOSE non-interruptable but keeping the rest interruptable * so that we don't have to reboot all the time */ + /* 02/15/2011 cbodley: added NFS41_UNLOCK for the same reason. locking + * tests were triggering an interrupted unlock, which led to a bugcheck + * in CloseSrvOpen() */ #define MAKE_WAITONCLOSE_NONITERRUPTABLE #ifdef MAKE_WAITONCLOSE_NONITERRUPTABLE - if (entry->opcode == NFS41_CLOSE) + if (entry->opcode == NFS41_CLOSE || entry->opcode == NFS41_UNLOCK) status = KeWaitForSingleObject(&entry->cond, Executive, KernelMode, FALSE, NULL); else