Re: [PATCH 2/5] Use mutex instead of semaphore in the OnStream SCSI Tape driver

2007-07-29 Thread Satyam Sharma
Hi,


On Sun, 29 Jul 2007, Matthias Kaehlcke wrote:

> The OnStream SCSI Tape driver uses a semaphore as mutex. Use the mutex
> API instead of the (binary) semaphore.
> 
> Signed-off-by: Matthias Kaehlcke <[EMAIL PROTECTED]>
> [...]
> @@ -3298,7 +3298,7 @@ static ssize_t osst_write(struct file * filp, const 
> char __user * buf, size_t co
>   char* name = tape_name(STp);
>  
>  
> - if (down_interruptible(>lock))
> + if (mutex_lock_interruptible(>lock))
>   return (-ERESTARTSYS);

The () after return existed in the code already, but you could've felt
free to remove them :-)

> @@ -3619,7 +3619,7 @@ static ssize_t osst_read(struct file * filp, char 
> __user * buf, size_t count, lo
>   char* name  = tape_name(STp);
>  
>  
> - if (down_interruptible(>lock))
> + if (mutex_lock_interruptible(>lock))
>   return (-ERESTARTSYS);

Same here.

Reviewed-by: Satyam Sharma <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/5] Use mutex instead of semaphore in the OnStream SCSI Tape driver

2007-07-29 Thread Matthias Kaehlcke
The OnStream SCSI Tape driver uses a semaphore as mutex. Use the mutex
API instead of the (binary) semaphore.

Signed-off-by: Matthias Kaehlcke <[EMAIL PROTECTED]>

--

diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c
index 08060fb..0e2452c 100644
--- a/drivers/scsi/osst.c
+++ b/drivers/scsi/osst.c
@@ -3298,7 +3298,7 @@ static ssize_t osst_write(struct file * filp, const char 
__user * buf, size_t co
char* name = tape_name(STp);
 
 
-   if (down_interruptible(>lock))
+   if (mutex_lock_interruptible(>lock))
return (-ERESTARTSYS);
 
/*
@@ -3600,7 +3600,7 @@ if (SRpnt) printk(KERN_ERR "%s:A: Not supposed to have 
SRpnt at line %d\n", name
 out:
if (SRpnt != NULL) osst_release_request(SRpnt);
 
-   up(>lock);
+   mutex_unlock(>lock);
 
return retval;
 }
@@ -3619,7 +3619,7 @@ static ssize_t osst_read(struct file * filp, char __user 
* buf, size_t count, lo
char* name  = tape_name(STp);
 
 
-   if (down_interruptible(>lock))
+   if (mutex_lock_interruptible(>lock))
return (-ERESTARTSYS);
 
/*
@@ -3785,7 +3785,7 @@ static ssize_t osst_read(struct file * filp, char __user 
* buf, size_t count, lo
 out:
if (SRpnt != NULL) osst_release_request(SRpnt);
 
-   up(>lock);
+   mutex_unlock(>lock);
 
return retval;
 }
@@ -4852,7 +4852,7 @@ static int osst_ioctl(struct inode * inode,struct file * 
file,
char* name  = tape_name(STp);
void__user  * p = (void __user *)arg;
 
-   if (down_interruptible(>lock))
+   if (mutex_lock_interruptible(>lock))
return -ERESTARTSYS;
 
 #if DEBUG
@@ -5163,14 +5163,14 @@ static int osst_ioctl(struct inode * inode,struct file 
* file,
}
if (SRpnt) osst_release_request(SRpnt);
 
-   up(>lock);
+   mutex_unlock(>lock);
 
return scsi_ioctl(STp->device, cmd_in, p);
 
 out:
if (SRpnt) osst_release_request(SRpnt);
 
-   up(>lock);
+   mutex_unlock(>lock);
 
return retval;
 }
@@ -5866,7 +5866,7 @@ static int osst_probe(struct device *dev)
tpnt->modes[2].defined = 1;
tpnt->density_changed = tpnt->compression_changed = 
tpnt->blksize_changed = 0;
 
-   init_MUTEX(>lock);
+   mutex_init(>lock);
osst_nr_dev++;
write_unlock(_scsi_tapes_lock);
 
diff --git a/drivers/scsi/osst.h b/drivers/scsi/osst.h
index 2cc7b5a..5aa2274 100644
--- a/drivers/scsi/osst.h
+++ b/drivers/scsi/osst.h
@@ -4,6 +4,7 @@
 
 #include 
 #include 
+#include 
 
 /* FIXME - rename and use the following two types or delete them!
  *  and the types really should go to st.h anyway...
@@ -532,7 +533,7 @@ struct osst_tape {
   struct scsi_driver *driver;
   unsigned capacity;
   struct scsi_device *device;
-  struct semaphore lock;   /* for serialization */
+  struct mutex lock;   /* for serialization */
   struct completion wait;  /* for SCSI commands */
   struct osst_buffer * buffer; 

-- 
Matthias Kaehlcke
Linux Application Developer
Barcelona

Don't walk behind me, I may not lead
 Don't walk in front of me, I may not follow
Just walk beside me and be my friend
  (Albert Camus)
 .''`.
using free software / Debian GNU/Linux | http://debian.org  : :'  :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4  `-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 2/5] Use mutex instead of semaphore in the OnStream SCSI Tape driver

2007-07-29 Thread Matthias Kaehlcke
The OnStream SCSI Tape driver uses a semaphore as mutex. Use the mutex
API instead of the (binary) semaphore.

Signed-off-by: Matthias Kaehlcke [EMAIL PROTECTED]

--

diff --git a/drivers/scsi/osst.c b/drivers/scsi/osst.c
index 08060fb..0e2452c 100644
--- a/drivers/scsi/osst.c
+++ b/drivers/scsi/osst.c
@@ -3298,7 +3298,7 @@ static ssize_t osst_write(struct file * filp, const char 
__user * buf, size_t co
char* name = tape_name(STp);
 
 
-   if (down_interruptible(STp-lock))
+   if (mutex_lock_interruptible(STp-lock))
return (-ERESTARTSYS);
 
/*
@@ -3600,7 +3600,7 @@ if (SRpnt) printk(KERN_ERR %s:A: Not supposed to have 
SRpnt at line %d\n, name
 out:
if (SRpnt != NULL) osst_release_request(SRpnt);
 
-   up(STp-lock);
+   mutex_unlock(STp-lock);
 
return retval;
 }
@@ -3619,7 +3619,7 @@ static ssize_t osst_read(struct file * filp, char __user 
* buf, size_t count, lo
char* name  = tape_name(STp);
 
 
-   if (down_interruptible(STp-lock))
+   if (mutex_lock_interruptible(STp-lock))
return (-ERESTARTSYS);
 
/*
@@ -3785,7 +3785,7 @@ static ssize_t osst_read(struct file * filp, char __user 
* buf, size_t count, lo
 out:
if (SRpnt != NULL) osst_release_request(SRpnt);
 
-   up(STp-lock);
+   mutex_unlock(STp-lock);
 
return retval;
 }
@@ -4852,7 +4852,7 @@ static int osst_ioctl(struct inode * inode,struct file * 
file,
char* name  = tape_name(STp);
void__user  * p = (void __user *)arg;
 
-   if (down_interruptible(STp-lock))
+   if (mutex_lock_interruptible(STp-lock))
return -ERESTARTSYS;
 
 #if DEBUG
@@ -5163,14 +5163,14 @@ static int osst_ioctl(struct inode * inode,struct file 
* file,
}
if (SRpnt) osst_release_request(SRpnt);
 
-   up(STp-lock);
+   mutex_unlock(STp-lock);
 
return scsi_ioctl(STp-device, cmd_in, p);
 
 out:
if (SRpnt) osst_release_request(SRpnt);
 
-   up(STp-lock);
+   mutex_unlock(STp-lock);
 
return retval;
 }
@@ -5866,7 +5866,7 @@ static int osst_probe(struct device *dev)
tpnt-modes[2].defined = 1;
tpnt-density_changed = tpnt-compression_changed = 
tpnt-blksize_changed = 0;
 
-   init_MUTEX(tpnt-lock);
+   mutex_init(tpnt-lock);
osst_nr_dev++;
write_unlock(os_scsi_tapes_lock);
 
diff --git a/drivers/scsi/osst.h b/drivers/scsi/osst.h
index 2cc7b5a..5aa2274 100644
--- a/drivers/scsi/osst.h
+++ b/drivers/scsi/osst.h
@@ -4,6 +4,7 @@
 
 #include asm/byteorder.h
 #include linux/completion.h
+#include linux/mutex.h
 
 /* FIXME - rename and use the following two types or delete them!
  *  and the types really should go to st.h anyway...
@@ -532,7 +533,7 @@ struct osst_tape {
   struct scsi_driver *driver;
   unsigned capacity;
   struct scsi_device *device;
-  struct semaphore lock;   /* for serialization */
+  struct mutex lock;   /* for serialization */
   struct completion wait;  /* for SCSI commands */
   struct osst_buffer * buffer; 

-- 
Matthias Kaehlcke
Linux Application Developer
Barcelona

Don't walk behind me, I may not lead
 Don't walk in front of me, I may not follow
Just walk beside me and be my friend
  (Albert Camus)
 .''`.
using free software / Debian GNU/Linux | http://debian.org  : :'  :
`. `'`
gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4  `-
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH 2/5] Use mutex instead of semaphore in the OnStream SCSI Tape driver

2007-07-29 Thread Satyam Sharma
Hi,


On Sun, 29 Jul 2007, Matthias Kaehlcke wrote:

 The OnStream SCSI Tape driver uses a semaphore as mutex. Use the mutex
 API instead of the (binary) semaphore.
 
 Signed-off-by: Matthias Kaehlcke [EMAIL PROTECTED]
 [...]
 @@ -3298,7 +3298,7 @@ static ssize_t osst_write(struct file * filp, const 
 char __user * buf, size_t co
   char* name = tape_name(STp);
  
  
 - if (down_interruptible(STp-lock))
 + if (mutex_lock_interruptible(STp-lock))
   return (-ERESTARTSYS);

The () after return existed in the code already, but you could've felt
free to remove them :-)

 @@ -3619,7 +3619,7 @@ static ssize_t osst_read(struct file * filp, char 
 __user * buf, size_t count, lo
   char* name  = tape_name(STp);
  
  
 - if (down_interruptible(STp-lock))
 + if (mutex_lock_interruptible(STp-lock))
   return (-ERESTARTSYS);

Same here.

Reviewed-by: Satyam Sharma [EMAIL PROTECTED]
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/