[IRDA] sem2mutex: drivers/net/irda
Arjan van de Ven [Tue, 21 Mar 2006 06:32:53 +0000 (22:32 -0800)]
Semaphore to mutex conversion.

The conversion was generated via scripts, and the result was validated
automatically via a script as well.

Signed-off-by: Arjan van de Ven <arjan@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/net/irda/irtty-sir.c
drivers/net/irda/sir_dongle.c

index 101750b..6a98b7a 100644 (file)
@@ -33,6 +33,7 @@
 #include <asm/uaccess.h>
 #include <linux/smp_lock.h>
 #include <linux/delay.h>
+#include <linux/mutex.h>
 
 #include <net/irda/irda.h>
 #include <net/irda/irda_device.h>
@@ -338,7 +339,7 @@ static inline void irtty_stop_receiver(struct tty_struct *tty, int stop)
 /*****************************************************************/
 
 /* serialize ldisc open/close with sir_dev */
-static DECLARE_MUTEX(irtty_sem);
+static DEFINE_MUTEX(irtty_mutex);
 
 /* notifier from sir_dev when irda% device gets opened (ifup) */
 
@@ -348,11 +349,11 @@ static int irtty_start_dev(struct sir_dev *dev)
        struct tty_struct *tty;
 
        /* serialize with ldisc open/close */
-       down(&irtty_sem);
+       mutex_lock(&irtty_mutex);
 
        priv = dev->priv;
        if (unlikely(!priv || priv->magic!=IRTTY_MAGIC)) {
-               up(&irtty_sem);
+               mutex_unlock(&irtty_mutex);
                return -ESTALE;
        }
 
@@ -363,7 +364,7 @@ static int irtty_start_dev(struct sir_dev *dev)
        /* Make sure we can receive more data */
        irtty_stop_receiver(tty, FALSE);
 
-       up(&irtty_sem);
+       mutex_unlock(&irtty_mutex);
        return 0;
 }
 
@@ -375,11 +376,11 @@ static int irtty_stop_dev(struct sir_dev *dev)
        struct tty_struct *tty;
 
        /* serialize with ldisc open/close */
-       down(&irtty_sem);
+       mutex_lock(&irtty_mutex);
 
        priv = dev->priv;
        if (unlikely(!priv || priv->magic!=IRTTY_MAGIC)) {
-               up(&irtty_sem);
+               mutex_unlock(&irtty_mutex);
                return -ESTALE;
        }
 
@@ -390,7 +391,7 @@ static int irtty_stop_dev(struct sir_dev *dev)
        if (tty->driver->stop)
                tty->driver->stop(tty);
 
-       up(&irtty_sem);
+       mutex_unlock(&irtty_mutex);
 
        return 0;
 }
@@ -514,13 +515,13 @@ static int irtty_open(struct tty_struct *tty)
        priv->dev = dev;
 
        /* serialize with start_dev - in case we were racing with ifup */
-       down(&irtty_sem);
+       mutex_lock(&irtty_mutex);
 
        dev->priv = priv;
        tty->disc_data = priv;
        tty->receive_room = 65536;
 
-       up(&irtty_sem);
+       mutex_unlock(&irtty_mutex);
 
        IRDA_DEBUG(0, "%s - %s: irda line discipline opened\n", __FUNCTION__, tty->name);
 
index 8d22592..d7e32d9 100644 (file)
@@ -16,6 +16,7 @@
 #include <linux/init.h>
 #include <linux/smp_lock.h>
 #include <linux/kmod.h>
+#include <linux/mutex.h>
 
 #include <net/irda/irda.h>
 
@@ -28,7 +29,7 @@
  */
 
 static LIST_HEAD(dongle_list);                 /* list of registered dongle drivers */
-static DECLARE_MUTEX(dongle_list_lock);                /* protects the list */
+static DEFINE_MUTEX(dongle_list_lock);         /* protects the list */
 
 int irda_register_dongle(struct dongle_driver *new)
 {
@@ -38,25 +39,25 @@ int irda_register_dongle(struct dongle_driver *new)
        IRDA_DEBUG(0, "%s : registering dongle \"%s\" (%d).\n",
                   __FUNCTION__, new->driver_name, new->type);
 
-       down(&dongle_list_lock);
+       mutex_lock(&dongle_list_lock);
        list_for_each(entry, &dongle_list) {
                drv = list_entry(entry, struct dongle_driver, dongle_list);
                if (new->type == drv->type) {
-                       up(&dongle_list_lock);
+                       mutex_unlock(&dongle_list_lock);
                        return -EEXIST;
                }
        }
        list_add(&new->dongle_list, &dongle_list);
-       up(&dongle_list_lock);
+       mutex_unlock(&dongle_list_lock);
        return 0;
 }
 EXPORT_SYMBOL(irda_register_dongle);
 
 int irda_unregister_dongle(struct dongle_driver *drv)
 {
-       down(&dongle_list_lock);
+       mutex_lock(&dongle_list_lock);
        list_del(&drv->dongle_list);
-       up(&dongle_list_lock);
+       mutex_unlock(&dongle_list_lock);
        return 0;
 }
 EXPORT_SYMBOL(irda_unregister_dongle);
@@ -75,7 +76,7 @@ int sirdev_get_dongle(struct sir_dev *dev, IRDA_DONGLE type)
                return -EBUSY;
        
        /* serialize access to the list of registered dongles */
-       down(&dongle_list_lock);
+       mutex_lock(&dongle_list_lock);
 
        list_for_each(entry, &dongle_list) {
                drv = list_entry(entry, struct dongle_driver, dongle_list);
@@ -109,14 +110,14 @@ int sirdev_get_dongle(struct sir_dev *dev, IRDA_DONGLE type)
        if (!drv->open  ||  (err=drv->open(dev))!=0)
                goto out_reject;                /* failed to open driver */
 
-       up(&dongle_list_lock);
+       mutex_unlock(&dongle_list_lock);
        return 0;
 
 out_reject:
        dev->dongle_drv = NULL;
        module_put(drv->owner);
 out_unlock:
-       up(&dongle_list_lock);
+       mutex_unlock(&dongle_list_lock);
        return err;
 }