From 8c6b569c14ad632a9f7c27add0a5e7aed5a9f666 Mon Sep 17 00:00:00 2001 From: gibbs Date: Mon, 20 Dec 1999 21:32:32 +0000 Subject: Correct an "argument reversal" bug that could cause commands requed from the input fifo to be returned as successful and frozen. Most, if not all, peripheral drivers do not check the qfrozen bit for successfully completed commands, so the result would not only be lost commands, but devices locked out from receiving commands. This was a bad bug that crept in two or three months ago during some target mode work. --- sys/dev/aic7xxx/aic7xxx.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/dev/aic7xxx') diff --git a/sys/dev/aic7xxx/aic7xxx.c b/sys/dev/aic7xxx/aic7xxx.c index d28c239..8d1f0a0 100644 --- a/sys/dev/aic7xxx/aic7xxx.c +++ b/sys/dev/aic7xxx/aic7xxx.c @@ -5672,8 +5672,8 @@ bus_reset: ahc_search_qinfifo(ahc, SCB_TARGET(scb), channel, SCB_LUN(scb), SCB_LIST_NULL, - CAM_REQUEUE_REQ, ROLE_INITIATOR, + CAM_REQUEUE_REQ, SEARCH_COMPLETE); xpt_print_path(scb->ccb->ccb_h.path); printf("Queuing a BDR SCB\n"); @@ -5862,7 +5862,7 @@ ahc_abort_scbs(struct ahc_softc *ahc, int target, char channel, active_scb = ahc_inb(ahc, SCBPTR); found = ahc_search_qinfifo(ahc, target, channel, lun, tag, - CAM_REQUEUE_REQ, role, SEARCH_COMPLETE); + role, CAM_REQUEUE_REQ, SEARCH_COMPLETE); /* * Search waiting for selection list. -- cgit v1.1