summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorKenneth R Westerback <krw@cvs.openbsd.org>2008-09-06 15:35:03 +0000
committerKenneth R Westerback <krw@cvs.openbsd.org>2008-09-06 15:35:03 +0000
commit8f1d6431cdc3b1c3ce727302799ecc234f5fcd66 (patch)
tree4cff612bfe1b5805c5fc1b091aa3c41fe66331ee /sys
parentfc5e17923ebefb099ac46271f72dd11f621d3cf7 (diff)
Return EIO when the residual is > xs->datalen, even if SCSI_SILENT is
set. SCSI_SILENT mediates printing error messages only.
Diffstat (limited to 'sys')
-rw-r--r--sys/scsi/st.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/scsi/st.c b/sys/scsi/st.c
index 2d52b0d7c65..50ce51d0994 100644
--- a/sys/scsi/st.c
+++ b/sys/scsi/st.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: st.c,v 1.83 2008/06/22 16:32:06 krw Exp $ */
+/* $OpenBSD: st.c,v 1.84 2008/09/06 15:35:02 krw Exp $ */
/* $NetBSD: st.c,v 1.71 1997/02/21 23:03:49 thorpej Exp $ */
/*
@@ -1996,13 +1996,12 @@ st_interpret_sense(struct scsi_xfer *xs)
/*
* huh? the residual is bigger than the request
*/
- if ((xs->flags & SCSI_SILENT) == 0) {
+ if ((xs->flags & SCSI_SILENT) == 0)
printf(
"%s: bad residual %d out of %d\n",
st->sc_dev.dv_xname, info,
xs->datalen);
- return (EIO);
- }
+ return (EIO);
}
xs->resid = info;
if (bp)