st: remove st_mutex
Subsystems (2)
PATCH v2 1/1 st: remove st_mutex
From: Hannes Reinecke <[email protected]>
The st_mutex was created when the BKL was removed, and prevents simultaneous st_open calls. It is better to protect just the necessary data.
This patch is based on the "misc" branch of the SCSI tree and the 5-patch series for st sent by Jeff Mahoney 8/18/2012 and Ack-ed by Kai on 8/20.
Changes in v2: patch meta-data corrected
--- drivers/scsi/st.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)
drivers/scsi/st.c +2 -6
@@ -75,7 +75,6 @@ static const char *verstr = "20101219";#include "st_options.h" #include "st.h" -static DEFINE_MUTEX (st_mutex);static int buffer_kbs;static int max_sg_segs;static int try_direct_io =TRY_DIRECT_IO ;
@@ -1185,7 +1184,6 @@ static int st_open(struct inode *inode, struct file *filp)int dev =TAPE_NR (inode);char *name; -mutex_lock (&st_mutex);/* * We really want to do nonseekable_open(inode, filp); here, but some * versions of tar incorrectly call lseek on tapes and bail out if that
@@ -1194,7 +1192,6 @@ static int st_open(struct inode *inode, struct file *filp) filp->f_mode &= ~(FMODE_PREAD |FMODE_PWRITE );if (!(STp =scsi_tape_get (dev))) { -mutex_unlock (&st_mutex);return -ENXIO ; }
@@ -1205,7 +1202,6 @@ static int st_open(struct inode *inode, struct file *filp)if (STp->in_use) {spin_unlock (&st_use_lock);scsi_tape_put (STp); -mutex_unlock (&st_mutex); DEB( printk(ST_DEB_MSG "%s: Device already in use.\n", name); ) return (-EBUSY); }
@@ -1259,16 +1255,16 @@ static int st_open(struct inode *inode, struct file *filp) retval = (-EIO ); goto err_out; } -mutex_unlock (&st_mutex);return 0 ; err_out:normalize_buffer (STp->buffer); +spin_lock (&st_use_lock); STp->in_use =0 ; +spin_unlock (&st_use_lock);scsi_tape_put (STp);if (resumed)scsi_autopm_put_device (STp->device); -mutex_unlock (&st_mutex);return retval; }
Signature · 1 line
1.7.11.5
Quoted 8 lines · Lee Duncan
From: Hannes Reinecke <[email protected]>
The
st_mutexwas created when the BKL was removed, and prevents simultaneousst_opencalls. It is better to protect just the necessary data.Signed-off-by Hannes Reinecke <[email protected]>Reviewed-by Lee Duncan <[email protected]>
Quoted 5 lines
This patch is based on the "misc" branch of the SCSI tree and the 5-patch series for st sent by Jeff Mahoney 8/18/2012 and Ack-ed by Kai on 8/20.
Thanks,
Kai
James Bottomley
maintainerQuoted 8 lines · Lee Duncan
From: Hannes Reinecke <[email protected]>
The
st_mutexwas created when the BKL was removed, and prevents simultaneousst_opencalls. It is better to protect just the necessary data.Signed-off-by Hannes Reinecke <[email protected]>Reviewed-by Lee Duncan <[email protected]>
That should be Signed-off-by since you sent the patch to me. Signoffs have to follow the chain of transmission. I've assumed this was just a mistype.
James
Quoted 7 lines · James Bottomley
Quoted 6 lines · Lee Duncan
From: Hannes Reinecke <[email protected]>
The
st_mutexwas created when the BKL was removed, and prevents simultaneousst_opencalls. It is better to protect just the necessary data.
Quoted 8 lines
Quoted 2 lines
Signed-off-by Hannes Reinecke <[email protected]>Reviewed-by Lee Duncan <[email protected]>That should be Signed-off-by since you sent the patch to me. Signoffs have to follow the chain of transmission. I've assumed this was just a mistype.
James
Thank you James.
Signature · 1 line
Lee Duncan