]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
LINUX: Use correct type of error in flock code openafs-stable-1_4_13
authorSimon Wilkinson <sxw@inf.ed.ac.uk>
Wed, 11 Aug 2010 16:25:36 +0000 (17:25 +0100)
committerDerrick Brashear <shadow@dementia.org>
Thu, 16 Dec 2010 05:51:19 +0000 (21:51 -0800)
The flock code gets a kernel error code from afs_posix_lock_file()
but then passes this error code through afs_convert_code (which sees
that it is already negative, and returns EIO). Instead, we should just
return afs_posix_lock_file()'s code direct to our caller.

Reviewed-on: http://gerrit.openafs.org/2534
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit 5abe706a7e237d3872db3638d947a14c935370d5)
Change-Id: I8e12c9804cc81c8c88f820f55abd4ce863525c9a
Reviewed-on: http://gerrit.openafs.org/3533

src/afs/LINUX/osi_vnodeops.c

index 5bb23234409ffe9b841d7b79c34533a58df95797..2389389c8e624281a0fa69abfc64c2a1213d33ce 100644 (file)
@@ -509,7 +509,7 @@ afs_linux_lock(struct file *fp, int cmd, struct file_lock *flp)
 #endif /* F_GETLK64 && F_GETLK != F_GETLK64 */
 
     AFS_GLOCK();
-    code = afs_lockctl(vcp, &flock, cmd, credp);
+    code = afs_convert_code(afs_lockctl(vcp, &flock, cmd, credp));
     AFS_GUNLOCK();
 
 #ifdef AFS_LINUX24_ENV
@@ -569,7 +569,7 @@ afs_linux_lock(struct file *fp, int cmd, struct file_lock *flp)
        flp->fl_end = flock.l_start + flock.l_len - 1;
 
     crfree(credp);
-    return afs_convert_code(code);
+    return code;
 }
 
 #ifdef STRUCT_FILE_OPERATIONS_HAS_FLOCK