NFSv4: Fix problem with OPEN_DOWNGRADE
 RFC 3530 states that for OPEN_DOWNGRADE "The share_access and share_deny
 bits specified must be exactly equal to the union of the share_access and
 share_deny bits specified for some subset of the OPENs in effect for
 current openowner on the current file.
 Setattr is currently violating the NFSv4 rules for OPEN_DOWNGRADE in that
 it may cause a downgrade from OPEN4_SHARE_ACCESS_BOTH to
 OPEN4_SHARE_ACCESS_WRITE despite the fact that there exists no open file
 with O_WRONLY access mode.
 Fix the problem by replacing nfs4_find_state() with a modified version of
 nfs_find_open_context().
 Signed-off-by:  Trond Myklebust <Trond.Myklebust@netapp.com>
Trond Myklebust <Trond.Myklebust@netapp.com>
Loading
Please register or sign in to comment
