]> git.baikalelectronics.ru Git - kernel.git/commit
NFSv4.1: Don't clobber the seqid if exchange_id returns a confirmed clientid
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 26 May 2012 17:41:04 +0000 (13:41 -0400)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 26 May 2012 18:17:31 +0000 (14:17 -0400)
commit3d2bc8b430155671b5b939bb8f57eac9bb846f4d
tree540451b739e9938b2f15682a0bab117852bc8e4e
parent365d27833c134849cf8d173b2e0edba23e83d624
NFSv4.1: Don't clobber the seqid if exchange_id returns a confirmed clientid

If the EXCHGID4_FLAG_CONFIRMED_R flag is set, the client is in theory
supposed to already know the correct value of the seqid, in which case
RFC5661 states that it should ignore the value returned.

Also ensure that if the sanity check in nfs4_check_cl_exchange_flags
fails, then we must not change the nfs_client fields.

Finally, clean up the code: we don't need to retest the value of
'status' unless it can change.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
fs/nfs/nfs4proc.c
fs/nfs/nfs4xdr.c
include/linux/nfs_xdr.h