diff options
author | gibbs <gibbs@FreeBSD.org> | 2005-09-22 05:01:37 +0000 |
---|---|---|
committer | gibbs <gibbs@FreeBSD.org> | 2005-09-22 05:01:37 +0000 |
commit | efbd02745b779310e4296f6cf78dfd1af6928208 (patch) | |
tree | 0a020a4a055195f1bfedfa6542bae3c8047bc1c9 | |
parent | bd758d5e914041ec25e9d38b5cce87fa6b9c830a (diff) | |
download | FreeBSD-src-efbd02745b779310e4296f6cf78dfd1af6928208.zip FreeBSD-src-efbd02745b779310e4296f6cf78dfd1af6928208.tar.gz |
Correct bug that caused the completed "recovery" scb to have its
timer reset rather than the timer of an SCB still pending on the
controller after recovery completed. This should correct timeout
loops seen in the field.
-rw-r--r-- | sys/dev/aic7xxx/aic79xx_osm.c | 3 | ||||
-rw-r--r-- | sys/dev/aic7xxx/aic7xxx_osm.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/aic7xxx/aic79xx_osm.c b/sys/dev/aic7xxx/aic79xx_osm.c index 1971c0b..d8f1890 100644 --- a/sys/dev/aic7xxx/aic79xx_osm.c +++ b/sys/dev/aic7xxx/aic79xx_osm.c @@ -281,7 +281,8 @@ ahd_done(struct ahd_softc *ahd, struct scb *scb) LIST_FOREACH(list_scb, &ahd->pending_scbs, pending_links) { - aic_scb_timer_reset(scb, aic_get_timeout(scb)); + aic_scb_timer_reset(list_scb, + aic_get_timeout(scb)); } ahd_print_path(ahd, scb); diff --git a/sys/dev/aic7xxx/aic7xxx_osm.c b/sys/dev/aic7xxx/aic7xxx_osm.c index a1b65bb..638a56a 100644 --- a/sys/dev/aic7xxx/aic7xxx_osm.c +++ b/sys/dev/aic7xxx/aic7xxx_osm.c @@ -396,7 +396,8 @@ ahc_done(struct ahc_softc *ahc, struct scb *scb) LIST_FOREACH(list_scb, &ahc->pending_scbs, pending_links) { - aic_scb_timer_reset(scb, aic_get_timeout(scb)); + aic_scb_timer_reset(list_scb, + aic_get_timeout(scb)); } ahc_print_path(ahc, scb); |