Commit 52107b2c authored by FUJITA Tomonori's avatar FUJITA Tomonori Committed by James Bottomley
Browse files

[SCSI] st: convert check_tape to use st_scsi_kern_execute



This replaces st_do_scsi in check_tape (READ_BLOCK_LIMITS and
MODE_SENSE) with st_scsi_kern_execute.

Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: default avatarKai Makisara <Kai.Makisara@kolumbus.fi>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent 212cd8bf
Loading
Loading
Loading
Loading
+18 −10
Original line number Diff line number Diff line
@@ -1020,17 +1020,24 @@ static int check_tape(struct scsi_tape *STp, struct file *filp)
		}
	}

	SRpnt = st_allocate_request(STp);
	if (!SRpnt) {
		retval = STp->buffer->syscall_result;
		goto err_out;
	}

	if (STp->omit_blklims)
		STp->min_block = STp->max_block = (-1);
	else {
		memset((void *) &cmd[0], 0, MAX_COMMAND_SIZE);
		cmd[0] = READ_BLOCK_LIMITS;

		SRpnt = st_do_scsi(SRpnt, STp, cmd, 6, DMA_FROM_DEVICE,
		retval = st_scsi_kern_execute(SRpnt, cmd, DMA_FROM_DEVICE,
					      STp->buffer->b_data, 6,
					      STp->device->request_queue->rq_timeout,
				   MAX_READY_RETRIES, 1);
		if (!SRpnt) {
			retval = (STp->buffer)->syscall_result;
					      MAX_READY_RETRIES);
		if (retval) {
			st_release_request(SRpnt);
			goto err_out;
		}

@@ -1054,11 +1061,12 @@ static int check_tape(struct scsi_tape *STp, struct file *filp)
	cmd[0] = MODE_SENSE;
	cmd[4] = 12;

	SRpnt = st_do_scsi(SRpnt, STp, cmd, 12, DMA_FROM_DEVICE,
	retval = st_scsi_kern_execute(SRpnt, cmd, DMA_FROM_DEVICE,
				      STp->buffer->b_data, 12,
				      STp->device->request_queue->rq_timeout,
			   MAX_READY_RETRIES, 1);
	if (!SRpnt) {
		retval = (STp->buffer)->syscall_result;
				      MAX_READY_RETRIES);
	if (retval) {
		st_release_request(SRpnt);
		goto err_out;
	}