summaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authormycroft <mycroft@NetBSD.org>1994-04-24 05:40:05 +0000
committermycroft <mycroft@NetBSD.org>1994-04-24 05:40:05 +0000
commitefbbf1b09f5527d2c1c4e43f9d054a55ce0ab5a5 (patch)
tree306f1ca886a942fefc1a92fe72b22f4a0f5ee592 /sys/dev
parentc791f19ad10396a048e580dae43e6b44673f213d (diff)
Deal with variable-length drives that don't specify a maximum block size.
c.f. SCSI 2 protocol definition.
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/scsipi/st.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/scsipi/st.c b/sys/dev/scsipi/st.c
index f038a719bf4..85347e8ec64 100644
--- a/sys/dev/scsipi/st.c
+++ b/sys/dev/scsipi/st.c
@@ -26,7 +26,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: st.c,v 1.28 1994/04/13 05:43:21 mycroft Exp $
+ * $Id: st.c,v 1.29 1994/04/24 05:40:05 mycroft Exp $
*/
/*
@@ -892,7 +892,8 @@ ststrategy(bp)
/*
* as are out-of-range requests on variable drives.
*/
- else if (bp->b_bcount < st->blkmin || bp->b_bcount > st->blkmax) {
+ else if (bp->b_bcount < st->blkmin ||
+ (st->blkmax && bp->b_bcount > st->blkmax)) {
printf("%s: bad request, must be between %d and %d\n",
st->sc_dev.dv_xname, st->blkmin, st->blkmax);
bp->b_error = EIO;