6748376 DAT-72 mt -f /dev/rmt/x offline do only a rewind but sometime do not eject tape.
authorSheshadri Vasudevan <Sheshadri.Vasudevan@Sun.COM>
Tue, 08 Dec 2009 08:44:19 +0530
changeset 11282 cf14d34d606b
parent 11281 8a86d7d437c6
child 11283 18342ccbe3cf
6748376 DAT-72 mt -f /dev/rmt/x offline do only a rewind but sometime do not eject tape.
usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c
--- a/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c	Mon Dec 07 19:05:06 2009 -0800
+++ b/usr/src/uts/common/io/usb/scsa2usb/scsa2usb.c	Tue Dec 08 08:44:19 2009 +0530
@@ -3064,7 +3064,7 @@
 
 		return (SCSA2USB_JUST_ACCEPT);
 
-	case SCMD_START_STOP:
+	case SCMD_START_STOP:	/* SCMD_LOAD for sequential devices */
 		/*
 		 * these devices don't have mechanics that spin the
 		 * media up and down. So, it doesn't make much sense
@@ -3077,6 +3077,13 @@
 
 			return (SCSA2USB_JUST_ACCEPT);
 
+		} else if (inq->inq_dtype == DTYPE_SEQUENTIAL) {
+			/*
+			 * In case of USB tape device, we need to send the
+			 * command to the device to unload the media.
+			 */
+			break;
+
 		} else if (cmd->cmd_pkt->pkt_cdbp[4] & LOEJECT) {
 			/*
 			 * if the device is really a removable then