Signed-off-by: Christoph Hellwig <h...@lst.de>
---
 drivers/scsi/st.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/scsi/st.c b/drivers/scsi/st.c
index 7d2e036..e46e02b2 100644
--- a/drivers/scsi/st.c
+++ b/drivers/scsi/st.c
@@ -861,17 +861,16 @@ static int set_mode_densblk(struct scsi_tape * STp, 
struct st_modedef * STm)
 /* Lock or unlock the drive door. Don't use when st_request allocated. */
 static int do_door_lock(struct scsi_tape * STp, int do_lock)
 {
-       int retval, cmd;
+       int retval;
 
-       cmd = do_lock ? SCSI_IOCTL_DOORLOCK : SCSI_IOCTL_DOORUNLOCK;
        DEBC_printk(STp, "%socking drive door.\n", do_lock ? "L" : "Unl");
-       retval = scsi_ioctl(STp->device, cmd, NULL);
-       if (!retval) {
+
+       retval = scsi_set_medium_removal(STp->device,
+                       do_lock ? SCSI_REMOVAL_PREVENT : SCSI_REMOVAL_ALLOW);
+       if (!retval)
                STp->door_locked = do_lock ? ST_LOCKED_EXPLICIT : ST_UNLOCKED;
-       }
-       else {
+       else
                STp->door_locked = ST_LOCK_FAILS;
-       }
        return retval;
 }
 
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to