Index: lockd_lock.c
===================================================================
RCS file: /data/ncvs/src/usr.sbin/rpc.lockd/lockd_lock.c,v
retrieving revision 1.10
diff -u -r1.10 lockd_lock.c
--- lockd_lock.c	22 Mar 2002 19:57:09 -0000	1.10
+++ lockd_lock.c	14 May 2003 14:09:12 -0000
@@ -1401,12 +1401,17 @@
 	if (retval == PFL_NFSDENIED || retval == PFL_HWDENIED) {
 		/* Once last chance to check the lock */
 		if (fl->blocking == 1) {
-			/* Queue the lock */
-			debuglog("BLOCKING LOCK RECEIVED\n");
-			retval = (retval == PFL_NFSDENIED ?
-			    PFL_NFSBLOCKED : PFL_HWBLOCKED);
-			add_blockingfilelock(fl);
-			dump_filelock(fl);
+			if (retval == PFL_NFSDENIED) {
+				/* Queue the lock */
+				debuglog("BLOCKING LOCK RECEIVED\n");
+				retval = PFL_NFSBLOCKED;
+				add_blockingfilelock(fl);
+				dump_filelock(fl);
+			} else {
+				/* retval is okay as PFL_HWDENIED */
+				debuglog("BLOCKING LOCK DENIED IN HARDWARE\n");
+				dump_filelock(fl);
+			}
 		} else {
 			/* Leave retval alone, it's already correct */
 			debuglog("Lock denied.  Non-blocking failure\n");
