From 45285498ae9d778e16766378e0f966c3b5984d65 Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Sun, 4 Mar 2012 18:13:56 -0500 Subject: [PATCH] --- yaml --- r: 294524 b: refs/heads/master c: 8e663f0e5fabf57065aed1cfdaff5b13057dce23 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/nfs/callback_proc.c | 10 +++++----- trunk/fs/nfs/delegation.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index a651bb94543e..1dc06a053d1c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a1d0b5eebc4fd6e0edb02688b35f17f67f42aea5 +refs/heads/master: 8e663f0e5fabf57065aed1cfdaff5b13057dce23 diff --git a/trunk/fs/nfs/callback_proc.c b/trunk/fs/nfs/callback_proc.c index 1bb297243624..ea8321923f28 100644 --- a/trunk/fs/nfs/callback_proc.c +++ b/trunk/fs/nfs/callback_proc.c @@ -87,8 +87,7 @@ __be32 nfs4_callback_recall(struct cb_recallargs *args, void *dummy, res = 0; break; case -ENOENT: - if (res != 0) - res = htonl(NFS4ERR_BAD_STATEID); + res = htonl(NFS4ERR_BAD_STATEID); break; default: res = htonl(NFS4ERR_RESOURCE); @@ -325,10 +324,11 @@ int nfs41_validate_delegation_stateid(struct nfs_delegation *delegation, const n if (delegation == NULL) return 0; - if (stateid->stateid.seqid != 0) + if (stateid->stateid.seqid != 0 && + stateid->stateid.seqid != delegation->stateid.stateid.seqid) return 0; - if (memcmp(&delegation->stateid.stateid.other, - &stateid->stateid.other, + if (memcmp(delegation->stateid.stateid.other, + stateid->stateid.other, NFS4_STATEID_OTHER_SIZE)) return 0; diff --git a/trunk/fs/nfs/delegation.c b/trunk/fs/nfs/delegation.c index ac889af8ccf5..c14512cea798 100644 --- a/trunk/fs/nfs/delegation.c +++ b/trunk/fs/nfs/delegation.c @@ -542,7 +542,7 @@ void nfs_expire_unreferenced_delegations(struct nfs_client *clp) /** * nfs_async_inode_return_delegation - asynchronously return a delegation * @inode: inode to process - * @stateid: state ID information from CB_RECALL arguments + * @stateid: state ID information * * Returns zero on success, or a negative errno value. */