diff options
Diffstat (limited to 'fs/nfs/callback_proc.c')
-rw-r--r-- | fs/nfs/callback_proc.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/fs/nfs/callback_proc.c b/fs/nfs/callback_proc.c index 7e9653aae5d8..17a5c571a006 100644 --- a/fs/nfs/callback_proc.c +++ b/fs/nfs/callback_proc.c | |||
@@ -445,6 +445,13 @@ __be32 nfs4_callback_sequence(struct cb_sequenceargs *args, | |||
445 | goto out; | 445 | goto out; |
446 | } | 446 | } |
447 | 447 | ||
448 | memcpy(&res->csr_sessionid, &args->csa_sessionid, | ||
449 | sizeof(res->csr_sessionid)); | ||
450 | res->csr_sequenceid = args->csa_sequenceid; | ||
451 | res->csr_slotid = args->csa_slotid; | ||
452 | res->csr_highestslotid = NFS41_BC_MAX_CALLBACKS - 1; | ||
453 | res->csr_target_highestslotid = NFS41_BC_MAX_CALLBACKS - 1; | ||
454 | |||
448 | status = validate_seqid(tbl, args); | 455 | status = validate_seqid(tbl, args); |
449 | spin_unlock(&tbl->slot_tbl_lock); | 456 | spin_unlock(&tbl->slot_tbl_lock); |
450 | if (status) | 457 | if (status) |
@@ -462,13 +469,6 @@ __be32 nfs4_callback_sequence(struct cb_sequenceargs *args, | |||
462 | goto out; | 469 | goto out; |
463 | } | 470 | } |
464 | 471 | ||
465 | memcpy(&res->csr_sessionid, &args->csa_sessionid, | ||
466 | sizeof(res->csr_sessionid)); | ||
467 | res->csr_sequenceid = args->csa_sequenceid; | ||
468 | res->csr_slotid = args->csa_slotid; | ||
469 | res->csr_highestslotid = NFS41_BC_MAX_CALLBACKS - 1; | ||
470 | res->csr_target_highestslotid = NFS41_BC_MAX_CALLBACKS - 1; | ||
471 | |||
472 | /* | 472 | /* |
473 | * RFC5661 20.9.3 | 473 | * RFC5661 20.9.3 |
474 | * If CB_SEQUENCE returns an error, then the state of the slot | 474 | * If CB_SEQUENCE returns an error, then the state of the slot |