bumping seq if decoded successfully
before, we would not bump the sequence if we couldn't decode an operation in the received compound.
This commit is contained in:
parent
cf75520410
commit
f01f1304da
1 changed files with 31 additions and 32 deletions
|
|
@ -149,14 +149,7 @@ retry:
|
|||
set_expected_res(compound);
|
||||
status = nfs41_send_compound(session->client->rpc,
|
||||
(char *)&compound->args, (char *)&compound->res);
|
||||
|
||||
if (status) {
|
||||
eprintf("nfs41_send_compound failed %d for seqid=%d, slotid=%d\n",
|
||||
status, args->sa_sequenceid, args->sa_slotid);
|
||||
status = NFS4ERR_IO;
|
||||
goto out_free_slot;
|
||||
} else {
|
||||
// bump sequence number if sequence op succeeded
|
||||
// bump sequence number if sequence op succeeded.
|
||||
if (compound->res.resarray_count > 0 &&
|
||||
compound->res.resarray[0].op == OP_SEQUENCE) {
|
||||
nfs41_sequence_res *seq =
|
||||
|
|
@ -187,6 +180,12 @@ retry:
|
|||
goto out_free_slot;
|
||||
}
|
||||
}
|
||||
|
||||
if (status) {
|
||||
eprintf("nfs41_send_compound failed %d for seqid=%d, slotid=%d\n",
|
||||
status, args->sa_sequenceid, args->sa_slotid);
|
||||
status = NFS4ERR_IO;
|
||||
goto out_free_slot;
|
||||
}
|
||||
|
||||
if (compound->res.status != NFS4_OK)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue