diff -urpNX dontdiff linux-2.5.38/fs/locks.c linux-2.5.38-flock/fs/locks.c
--- linux-2.5.38/fs/locks.c	2002-09-21 18:47:00.000000000 -0700
+++ linux-2.5.38-flock/fs/locks.c	2002-09-26 10:36:16.000000000 -0700
@@ -1459,10 +1470,8 @@ int fcntl_setlk(struct file *filp, unsig
 		break;
 	}
 
-out:
-	if (error) {
-		locks_free_lock(file_lock);
-	}
+ out:
+	locks_free_lock(file_lock);
 	return error;
 }
 
@@ -1601,11 +1614,8 @@ int fcntl_setlk64(struct file *filp, uns
 		break;
 	}
 
-
 out:
-	if (error) {
-		locks_free_lock(file_lock);
-	}
+	locks_free_lock(file_lock);
 	return error;
 }
 #endif /* BITS_PER_LONG == 32 */
