diff options
author | J. Bruce Fields <bfields@redhat.com> | 2012-05-25 21:40:23 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2012-05-31 20:30:27 -0400 |
commit | 778df3f0feaeb03ebf9f370cba8437491ffa889f (patch) | |
tree | d1459666a0db61d07c631787b446243a8c1ae08a /fs/nfsd | |
parent | 0f1ba0ef213193aecf9baf8b4a3919cff4907e5d (diff) |
nfsd4: return "real" sequence id in confirmed case
The client should ignore the returned sequence_id in the case where the
CONFIRMED flag is set on an exchange_id reply--and in the unconfirmed
case "1" is always the right response. So it shouldn't actually matter
what we return here.
We could continue returning 1 just to catch clients ignoring the spec
here, but I'd rather be generous. Other things equal, returning the
existing sequence_id seems more informative.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/nfs4state.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index 83a68983aa26..e0ed84d17aa8 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -1650,7 +1650,7 @@ out_copy: | |||
1650 | exid->clientid.cl_boot = new->cl_clientid.cl_boot; | 1650 | exid->clientid.cl_boot = new->cl_clientid.cl_boot; |
1651 | exid->clientid.cl_id = new->cl_clientid.cl_id; | 1651 | exid->clientid.cl_id = new->cl_clientid.cl_id; |
1652 | 1652 | ||
1653 | exid->seqid = 1; | 1653 | exid->seqid = new->cl_cs_slot.sl_seqid + 1; |
1654 | nfsd4_set_ex_flags(new, exid); | 1654 | nfsd4_set_ex_flags(new, exid); |
1655 | 1655 | ||
1656 | dprintk("nfsd4_exchange_id seqid %d flags %x\n", | 1656 | dprintk("nfsd4_exchange_id seqid %d flags %x\n", |