summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authormjacob <mjacob@FreeBSD.org>2000-10-05 17:02:20 +0000
committermjacob <mjacob@FreeBSD.org>2000-10-05 17:02:20 +0000
commit7e5aee1a7c10c28ef486189e52d18db3426fc94a (patch)
tree33df9d90de72ead951b6c95ad6cdce1bcfa0c1dc /sys
parent2ba990958f611d680851f8a31571d8cb4085951f (diff)
downloadFreeBSD-src-7e5aee1a7c10c28ef486189e52d18db3426fc94a.zip
FreeBSD-src-7e5aee1a7c10c28ef486189e52d18db3426fc94a.tar.gz
Grab the ccb *after* writing filemarks.
PR: 21723 Submitted by: razuwaev@relex.ru
Diffstat (limited to 'sys')
-rw-r--r--sys/cam/scsi/scsi_sa.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/cam/scsi/scsi_sa.c b/sys/cam/scsi/scsi_sa.c
index c592882..3743832 100644
--- a/sys/cam/scsi/scsi_sa.c
+++ b/sys/cam/scsi/scsi_sa.c
@@ -3028,7 +3028,6 @@ sardpos(struct cam_periph *periph, int hard, u_int32_t *blkptr)
* wary about trying to figure out the actual block location value
* if data is in the tape drive buffer.
*/
- ccb = cam_periph_getccb(periph, 1);
if (softc->flags & SA_FLAG_TAPE_WRITTEN) {
error = sawritefilemarks(periph, 0, 0);
@@ -3036,6 +3035,7 @@ sardpos(struct cam_periph *periph, int hard, u_int32_t *blkptr)
return (error);
}
+ ccb = cam_periph_getccb(periph, 1);
scsi_read_position(&ccb->csio, 1, sadone, MSG_SIMPLE_Q_TAG,
hard, &loc, SSD_FULL_SIZE, 5000);
softc->dsreg = MTIO_DSREG_RBSY;
OpenPOWER on IntegriCloud