summaryrefslogtreecommitdiff
path: root/sys/dev/ic
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2014-02-05 07:58:06 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2014-02-05 07:58:06 +0000
commitddef3ca64893ac32d946aa093c985a6868b01839 (patch)
tree1c4ded50f36e05461b68dcf73de5e74433ac84fb /sys/dev/ic
parentae927f81d8013bb78a715ea7ebbb3b6abca5b392 (diff)
Avoid calling delay(9) between checking and clearing the interrupt status bits.
ok jmatthew@
Diffstat (limited to 'sys/dev/ic')
-rw-r--r--sys/dev/ic/qla.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/ic/qla.c b/sys/dev/ic/qla.c
index ac83131402b..bd439b5b71c 100644
--- a/sys/dev/ic/qla.c
+++ b/sys/dev/ic/qla.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: qla.c,v 1.16 2014/02/05 07:56:10 kettenis Exp $ */
+/* $OpenBSD: qla.c,v 1.17 2014/02/05 07:58:05 kettenis Exp $ */
/*
* Copyright (c) 2011 David Gwynne <dlg@openbsd.org>
@@ -904,8 +904,9 @@ qla_scsi_cmd_poll(struct qla_softc *sc)
while (ccb == NULL) {
u_int16_t isr, info;
+ delay(100);
+
if (qla_read_isr(sc, &isr, &info) == 0) {
- delay(1000);
continue;
}
@@ -924,8 +925,6 @@ qla_scsi_cmd_poll(struct qla_softc *sc)
qla_write_queue_ptr(sc, QLA_RESP_QUEUE_OUT,
sc->sc_last_resp_id);
- } else {
- delay(1000);
}
qla_clear_isr(sc, isr);