]> www.infradead.org Git - users/jedix/linux-maple.git/commit
NFSv4: Save the owner/group name string when doing open
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 7 Jan 2012 18:22:46 +0000 (13:22 -0500)
committerMaxim Uvarov <maxim.uvarov@oracle.com>
Tue, 17 Apr 2012 18:04:04 +0000 (11:04 -0700)
commitd5c32a50b77a0490f867d200f04a64076de722ac
tree2926a984a451bb8e0932279ae09d0c0cb917bcd3
parentaafb0886687e9f36c7fa73f9af61b38bbba3ed0c
NFSv4: Save the owner/group name string when doing open

...so that we can do the uid/gid mapping outside the asynchronous RPC
context.
This fixes a bug in the current NFSv4 atomic open code where the client
isn't able to determine what the true uid/gid fields of the file are,
(because the asynchronous nature of the OPEN call denies it the ability
to do an upcall) and so fills them with default values, marking the
inode as needing revalidation.
Unfortunately, in some cases, the VFS will do some additional sanity
checks on the file, and may override the server's decision to allow
the open because it sees the wrong owner/group fields.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
(cherry picked from commit 6926afd1925a54a13684ebe05987868890665e2b)

Oracle bug: 13842440 (from 13459986)
Signed-off-by: Todd Vierling <todd.vierling@oracle.com>
fs/nfs/idmap.c
fs/nfs/inode.c
fs/nfs/nfs4proc.c
fs/nfs/nfs4xdr.c
include/linux/nfs_idmap.h
include/linux/nfs_xdr.h