scsi: fnic: Fix for "Number of Active IOs" in fnicstats becoming negative
[ Upstream commit 7ef539c88d7d394410d547c9f082d477093a2a22 ] Fixing the IO stats update (Active IOs and IO completion) to prevent "Number of Active IOs" from becoming negative in the fnistats output. Signed-off-by: Satish Kharat <satishkh@cisco.com> Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
86b684fcd6
commit
3dda4b42a8
@ -1127,12 +1127,6 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic *fnic,
|
||||
else
|
||||
CMD_ABTS_STATUS(sc) = hdr_status;
|
||||
|
||||
atomic64_dec(&fnic_stats->io_stats.active_ios);
|
||||
if (atomic64_read(&fnic->io_cmpl_skip))
|
||||
atomic64_dec(&fnic->io_cmpl_skip);
|
||||
else
|
||||
atomic64_inc(&fnic_stats->io_stats.io_completions);
|
||||
|
||||
if (!(CMD_FLAGS(sc) & (FNIC_IO_ABORTED | FNIC_IO_DONE)))
|
||||
atomic64_inc(&misc_stats->no_icmnd_itmf_cmpls);
|
||||
|
||||
@ -1173,6 +1167,11 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic *fnic,
|
||||
(((u64)CMD_FLAGS(sc) << 32) |
|
||||
CMD_STATE(sc)));
|
||||
sc->scsi_done(sc);
|
||||
atomic64_dec(&fnic_stats->io_stats.active_ios);
|
||||
if (atomic64_read(&fnic->io_cmpl_skip))
|
||||
atomic64_dec(&fnic->io_cmpl_skip);
|
||||
else
|
||||
atomic64_inc(&fnic_stats->io_stats.io_completions);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1962,6 +1961,11 @@ int fnic_abort_cmd(struct scsi_cmnd *sc)
|
||||
/* Call SCSI completion function to complete the IO */
|
||||
sc->result = (DID_ABORT << 16);
|
||||
sc->scsi_done(sc);
|
||||
atomic64_dec(&fnic_stats->io_stats.active_ios);
|
||||
if (atomic64_read(&fnic->io_cmpl_skip))
|
||||
atomic64_dec(&fnic->io_cmpl_skip);
|
||||
else
|
||||
atomic64_inc(&fnic_stats->io_stats.io_completions);
|
||||
}
|
||||
|
||||
fnic_abort_cmd_end:
|
||||
|
Loading…
x
Reference in New Issue
Block a user