summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2014-10-06 13:28:17 +0000
committermav <mav@FreeBSD.org>2014-10-06 13:28:17 +0000
commitbd68280c288fe2c8b495b611e9f88f9dcb36d150 (patch)
tree4bef903436547af8e45a85ac2f76b8d3ef959de6
parent33c92e2233aa67c8aa53fc390c2110c5f8bbf37e (diff)
downloadFreeBSD-src-bd68280c288fe2c8b495b611e9f88f9dcb36d150.zip
FreeBSD-src-bd68280c288fe2c8b495b611e9f88f9dcb36d150.tar.gz
MFC r271951: Don't try to continue aborted commands if status was not set.
-rw-r--r--sys/cam/ctl/ctl.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/cam/ctl/ctl.c b/sys/cam/ctl/ctl.c
index 5b804b1..2f9d628 100644
--- a/sys/cam/ctl/ctl.c
+++ b/sys/cam/ctl/ctl.c
@@ -5281,9 +5281,10 @@ ctl_config_write_done(union ctl_io *io)
* If there is an error, though, we don't want to keep processing.
* Instead, just send status back to the initiator.
*/
- if ((io->io_hdr.flags & CTL_FLAG_IO_CONT)
- && (((io->io_hdr.status & CTL_STATUS_MASK) == CTL_STATUS_NONE)
- || ((io->io_hdr.status & CTL_STATUS_MASK) == CTL_SUCCESS))) {
+ if ((io->io_hdr.flags & CTL_FLAG_IO_CONT) &&
+ (io->io_hdr.flags & CTL_FLAG_ABORT) == 0 &&
+ ((io->io_hdr.status & CTL_STATUS_MASK) == CTL_STATUS_NONE ||
+ (io->io_hdr.status & CTL_STATUS_MASK) == CTL_SUCCESS)) {
io->scsiio.io_cont(io);
return;
}
OpenPOWER on IntegriCloud