]> git.karo-electronics.de Git - karo-tx-linux.git/commit
NFSv4.1: Ensure that the client tracks the server target_highest_slotid
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 20 Nov 2012 17:49:27 +0000 (12:49 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 26 Nov 2012 22:49:53 +0000 (17:49 -0500)
commitab388b1b587abb5001f30f7b0ec58e4eab082139
treea1619eef7eb7e32c6b45a963aad853a85e6dc5aa
parentf4af6e2abc8efb1695203a2b76876edf80f79960
NFSv4.1: Ensure that the client tracks the server target_highest_slotid

Dynamic slot allocation in NFSv4.1 depends on the client being able to
track the server's target value for the highest slotid in the
slot table.  See the reference in Section 2.10.6.1 of RFC5661.

To avoid ordering problems in the case where 2 SEQUENCE replies contain
conflicting updates to this target value, we also introduce a generation
counter, to track whether or not an RPC containing a SEQUENCE operation
was launched before or after the last update.

Also rename the nfs4_slot_table target_max_slots field to
'target_highest_slotid' to avoid confusion with a slot
table size or number of slots.

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