diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2009-11-10 10:19:00 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2009-11-10 10:19:00 +0000 |
commit | 2bc364095518d6bfab7adb9e51fd1eb72608ebd1 (patch) | |
tree | 395d53bc4c5323f085564e06604a57c65a8f11c7 /sys/scsi/sdvar.h | |
parent | bc4d3ed013d16c1d24634b9a6f8ca2df44f76137 (diff) |
fix the NO_CCB handling i broke when working on simplifying the midlayer.
marco@ discovered my rewrite retried commands rejected by an adapter
from a timeout, which was trivially starved by normal io going to
disks. this diff allows an xs to be marked as XS_NO_CCB, which will
cause it to be returned to the device driver to be retried as part
of the normal io queue.
tested by krw@ marco@ johan@
ok krw@ marco@
Diffstat (limited to 'sys/scsi/sdvar.h')
-rw-r--r-- | sys/scsi/sdvar.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/scsi/sdvar.h b/sys/scsi/sdvar.h index 4ba1621d242..d848c5554f0 100644 --- a/sys/scsi/sdvar.h +++ b/sys/scsi/sdvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: sdvar.h,v 1.21 2009/11/10 10:13:08 dlg Exp $ */ +/* $OpenBSD: sdvar.h,v 1.22 2009/11/10 10:18:59 dlg Exp $ */ /* $NetBSD: sdvar.h,v 1.7 1998/08/17 00:49:03 mycroft Exp $ */ /*- @@ -60,6 +60,7 @@ struct sd_softc { #define SDF_ANCIENT 0x10 /* disk is ancient; for minphys */ #define SDF_DIRTY 0x20 /* disk is dirty; needs cache flush */ #define SDF_DYING 0x40 /* dying, when deactivated */ +#define SDF_WAITING 0x80 /* bus is busy, try again later */ struct scsi_link *sc_link; /* contains our targ, lun, etc. */ struct disk_parms { u_long heads; /* number of heads */ |