[<prev] [next>] [day] [month] [year] [list]
Message-Id: <1438583791-4118-1-git-send-email-dominique.martinet@cea.fr>
Date: Mon, 3 Aug 2015 08:36:31 +0200
From: Dominique Martinet <dominique.martinet@....fr>
To: v9fs-developer@...ts.sourceforge.net
Cc: Eric Van Hensbergen <ericvh@...il.com>,
Ron Minnich <rminnich@...dia.gov>,
Latchesar Ionkov <lucho@...kov.net>,
linux-kernel@...r.kernel.org, Al Viro <viro@...iv.linux.org.uk>,
"Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org,
Dominique Martinet <dominique.martinet@....fr>
Subject: [PATCH RESEND] 9p: do not overwrite return code when locking fails
If the remote locking fail, we run a local vfs unlock that should work
and return success to userland when we didn't actually lock at all.
We need to tell the application that tried to lock that it didn't get it,
not that all went well.
Signed-off-by: Dominique Martinet <dominique.martinet@....fr>
---
fs/9p/vfs_file.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c
index 1ef16bd..be641f1 100644
--- a/fs/9p/vfs_file.c
+++ b/fs/9p/vfs_file.c
@@ -231,7 +231,8 @@ out_unlock:
if (res < 0 && fl->fl_type != F_UNLCK) {
fl_type = fl->fl_type;
fl->fl_type = F_UNLCK;
- res = posix_lock_file_wait(filp, fl);
+ /* Even if this fails we want to return the remote error */
+ posix_lock_file_wait(filp, fl);
fl->fl_type = fl_type;
}
out:
--
1.8.3.1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists