diff options
author | Kenneth R Westerback <krw@cvs.openbsd.org> | 2009-11-22 14:14:12 +0000 |
---|---|---|
committer | Kenneth R Westerback <krw@cvs.openbsd.org> | 2009-11-22 14:14:12 +0000 |
commit | 2c11f73dede318e822acc869f050872a3bce9c59 (patch) | |
tree | bc79276a3887621718c2b035dc5adbf2daf52b93 /sys/arch/mvme88k/dev/vs.c | |
parent | ccc027bb2ba3e9fb45f59ef7ce17214694d0f665 (diff) |
Bring last drivers fully into the NO_CCB world by replacing
TRY_AGAIN_LATER uses with equivalent NO_CCB. Eliminates confusion
between the two as was always intended. buf I/O's that can't be
started get pushed back onto the front of the queue and retried.
Others get sent back to originator as failures. No more epi-cycle
looping inside the SCSI midlayer hoping the problem goes away.
Various testers, no objection from miod@ as vs(4) was tested by
nick@.
Diffstat (limited to 'sys/arch/mvme88k/dev/vs.c')
-rw-r--r-- | sys/arch/mvme88k/dev/vs.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/arch/mvme88k/dev/vs.c b/sys/arch/mvme88k/dev/vs.c index 27e1484e46f..0178781d509 100644 --- a/sys/arch/mvme88k/dev/vs.c +++ b/sys/arch/mvme88k/dev/vs.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vs.c,v 1.76 2009/02/16 21:19:06 miod Exp $ */ +/* $OpenBSD: vs.c,v 1.77 2009/11/22 14:14:10 krw Exp $ */ /* * Copyright (c) 2004, 2009, Miodrag Vallat. @@ -434,7 +434,7 @@ vs_scsicmd(struct scsi_xfer *xs) if (cb->cb_xs != NULL) { printf("%s: master command not idle\n", sc->sc_dev.dv_xname); - return (TRY_AGAIN_LATER); + return (NO_CCB); } #endif s = splbio(); @@ -447,7 +447,7 @@ vs_scsicmd(struct scsi_xfer *xs) printf("%s: queue for target %d is busy\n", sc->sc_dev.dv_xname, slp->target); #endif - return (TRY_AGAIN_LATER); + return (NO_CCB); } if (vs_getcqe(sc, &cqep, &iopb)) { /* XXX shouldn't happen since our queue is ready */ @@ -455,7 +455,7 @@ vs_scsicmd(struct scsi_xfer *xs) #ifdef VS_DEBUG printf("%s: no free CQEs\n", sc->sc_dev.dv_xname); #endif - return (TRY_AGAIN_LATER); + return (NO_CCB); } } |