Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/dev/scsipi At least try to do something useful in the XS...
details: https://anonhg.NetBSD.org/src/rev/2f159078fa0c
branches: trunk
changeset: 486732:2f159078fa0c
user: fvdl <fvdl%NetBSD.org@localhost>
date: Sat May 27 23:59:58 2000 +0000
description:
At least try to do something useful in the XS_BUSY case; don't cause
a panic by sleeping in an interrupt context.
diffstat:
sys/dev/scsipi/scsipi_base.c | 7 +++----
1 files changed, 3 insertions(+), 4 deletions(-)
diffs (34 lines):
diff -r 487be8e59699 -r 2f159078fa0c sys/dev/scsipi/scsipi_base.c
--- a/sys/dev/scsipi/scsipi_base.c Sat May 27 23:01:44 2000 +0000
+++ b/sys/dev/scsipi/scsipi_base.c Sat May 27 23:59:58 2000 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: scsipi_base.c,v 1.35 2000/05/23 10:16:43 bouyer Exp $ */
+/* $NetBSD: scsipi_base.c,v 1.36 2000/05/27 23:59:58 fvdl Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -777,14 +777,14 @@
if (xs->retries) {
if ((xs->xs_control & XS_CTL_POLL) != 0)
delay(1000000);
- else if ((xs->xs_control &
+ else if (!async && (xs->xs_control &
(XS_CTL_NOSLEEP|XS_CTL_DISCOVERY)) == 0)
tsleep(&lbolt, PRIBIO, "scbusy", 0);
else
#if 0
timeout(scsipi_requeue, xs, hz);
#else
- goto lose;
+ goto retry;
#endif
}
case XS_TIMEOUT:
@@ -796,7 +796,6 @@
return (ERESTART);
}
case XS_DRIVER_STUFFUP:
- lose:
error = EIO;
break;
Home |
Main Index |
Thread Index |
Old Index