diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2014-02-05 07:58:06 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2014-02-05 07:58:06 +0000 |
commit | ddef3ca64893ac32d946aa093c985a6868b01839 (patch) | |
tree | 1c4ded50f36e05461b68dcf73de5e74433ac84fb /sys/dev/ic | |
parent | ae927f81d8013bb78a715ea7ebbb3b6abca5b392 (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.c | 7 |
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); |