summaryrefslogtreecommitdiff
path: root/sys/dev/ic/iha.c
diff options
context:
space:
mode:
authorKenneth R Westerback <krw@cvs.openbsd.org>2010-05-20 00:55:19 +0000
committerKenneth R Westerback <krw@cvs.openbsd.org>2010-05-20 00:55:19 +0000
commitc713a7721e58dd0a453fae998afd21f12fd821e8 (patch)
tree4c794ea604130c88f12d5a7295bcd0cb4624515f /sys/dev/ic/iha.c
parent3c3718e53ebd6b33568092f43f11f6f1d0c4130e (diff)
New scsi code seems to be stable. Pluck previously identified
low-hanging splbio/splx pairs that are no longer needed and see if this reveals any hidden scsi flaws. ok dlg@
Diffstat (limited to 'sys/dev/ic/iha.c')
-rw-r--r--sys/dev/ic/iha.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/sys/dev/ic/iha.c b/sys/dev/ic/iha.c
index 704da2a2924..7ad622b13fe 100644
--- a/sys/dev/ic/iha.c
+++ b/sys/dev/ic/iha.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: iha.c,v 1.37 2010/05/19 15:27:35 oga Exp $ */
+/* $OpenBSD: iha.c,v 1.38 2010/05/20 00:55:17 krw Exp $ */
/*-------------------------------------------------------------------------
*
* Device driver for the INI-9XXXU/UW or INIC-940/950 PCI SCSI Controller.
@@ -266,22 +266,18 @@ iha_scsi_cmd(xs)
struct iha_scb *pScb;
struct scsi_link *sc_link = xs->sc_link;
struct iha_softc *sc = sc_link->adapter_softc;
- int s, error;
+ int error;
if ((xs->cmdlen > 12) || (sc_link->target >= IHA_MAX_TARGETS)) {
xs->error = XS_DRIVER_STUFFUP;
- s = splbio();
scsi_done(xs);
- splx(s);
return;
}
pScb = iha_pop_free_scb(sc);
if (pScb == NULL) {
xs->error = XS_NO_CCB;
- s = splbio();
scsi_done(xs);
- splx(s);
return;
}
@@ -320,9 +316,7 @@ iha_scsi_cmd(xs)
iha_append_free_scb(sc, pScb);
xs->error = XS_DRIVER_STUFFUP;
- s = splbio();
scsi_done(xs);
- splx(s);
return;
}
bus_dmamap_sync(sc->sc_dmat, pScb->SCB_DataDma,
@@ -334,9 +328,7 @@ iha_scsi_cmd(xs)
if (error) {
bus_dmamap_unload(sc->sc_dmat, pScb->SCB_DataDma);
xs->error = XS_DRIVER_STUFFUP;
- s = splbio();
scsi_done(xs);
- splx(s);
return;
}
@@ -2479,7 +2471,6 @@ iha_done_scb(sc, pScb)
{
struct scsi_sense_data *s1, *s2;
struct scsi_xfer *xs = pScb->SCB_Xs;
- int s;
if (xs != NULL) {
timeout_del(&xs->stimeout);
@@ -2559,9 +2550,7 @@ iha_done_scb(sc, pScb)
break;
}
- s = splbio();
scsi_done(xs);
- splx(s);
}
iha_append_free_scb(sc, pScb);