OSDN Git Service

NFSv4: Fix NFSv4 trunking discovery
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Sat, 19 Jan 2013 03:56:23 +0000 (22:56 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Sun, 27 Jan 2013 20:51:28 +0000 (15:51 -0500)
commit202c312dba7d95b96493b412c606163a0cd83984
tree09bdba985da1addd3ae48e16b8953027645f2c62
parent4ae19c2dd713edb7b8ad3d4ab9d234ed5dcb6b98
NFSv4: Fix NFSv4 trunking discovery

If walking the list in nfs4[01]_walk_client_list fails, then the most
likely explanation is that the server dropped the clientid before we
actually managed to confirm it. As long as our nfs_client is the very
last one in the list to be tested, the caller can be assured that this
is the case when the final return value is NFS4ERR_STALE_CLIENTID.

Reported-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Chuck Lever <chuck.lever@oracle.com>
Cc: stable@vger.kernel.org [>=3.7]
Tested-by: Ben Greear <greearb@candelatech.com>
fs/nfs/nfs4client.c
fs/nfs/nfs4state.c