aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c
index e310e414067f..bff7f8c59856 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c
@@ -1658,9 +1658,12 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb)
1658 untagged_q = &(ahc->untagged_queues[target_offset]); 1658 untagged_q = &(ahc->untagged_queues[target_offset]);
1659 TAILQ_REMOVE(untagged_q, scb, links.tqe); 1659 TAILQ_REMOVE(untagged_q, scb, links.tqe);
1660 BUG_ON(!TAILQ_EMPTY(untagged_q)); 1660 BUG_ON(!TAILQ_EMPTY(untagged_q));
1661 } 1661 } else if ((scb->flags & SCB_ACTIVE) == 0) {
1662 1662 /*
1663 if ((scb->flags & SCB_ACTIVE) == 0) { 1663 * Transactions aborted from the untagged queue may
1664 * not have been dispatched to the controller, so
1665 * only check the SCB_ACTIVE flag for tagged transactions.
1666 */
1664 printf("SCB %d done'd twice\n", scb->hscb->tag); 1667 printf("SCB %d done'd twice\n", scb->hscb->tag);
1665 ahc_dump_card_state(ahc); 1668 ahc_dump_card_state(ahc);
1666 panic("Stopping for safety"); 1669 panic("Stopping for safety");