summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2009-09-30 19:16:24 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2009-09-30 19:16:24 +0000
commit194be74aa5c0bdf58a76d9eb66615824e6f6556a (patch)
treed913975db7ab2fa7e94f77a2f19f802c24993cb6
parentd2427e8e31cd688ca824611e6a19ad7a3177f010 (diff)
Need to scsi_done() before returning COMPLETE for untranslated commands,
such a Test Unit Ready; found the hard way by jbg@, and inexplicably missed during dlg@ and I audit of hba drivers behaviour.
-rw-r--r--sys/dev/ic/cac.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/ic/cac.c b/sys/dev/ic/cac.c
index e49457658d0..125c2011f39 100644
--- a/sys/dev/ic/cac.c
+++ b/sys/dev/ic/cac.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cac.c,v 1.31 2009/09/04 04:57:14 miod Exp $ */
+/* $OpenBSD: cac.c,v 1.32 2009/09/30 19:16:23 miod Exp $ */
/* $NetBSD: cac.c,v 1.15 2000/11/08 19:20:35 ad Exp $ */
/*
@@ -743,6 +743,8 @@ cac_scsi_cmd(xs)
"tgt %d ", xs->cmd->opcode, target));
xs->error = XS_DRIVER_STUFFUP;
}
+
+ scsi_done(xs);
splx(s);
return (COMPLETE);