aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/input/serio/serio_raw.c
diff options
context:
space:
mode:
authorArjan van de Ven <arjan@infradead.org>2006-02-19 00:21:55 -0500
committerDmitry Torokhov <dtor_core@ameritech.net>2006-02-19 00:21:55 -0500
commitc4e32e9faaaa83340dbbc00e07c48d38f032b7dc (patch)
treeaa3adb5073a8c4c70a7f4b7f2dda57e9d1c52d85 /drivers/input/serio/serio_raw.c
parente676c232e670e27d8b3783e1167f34288e17c83f (diff)
downloadkernel_goldelico_gta04-c4e32e9faaaa83340dbbc00e07c48d38f032b7dc.zip
kernel_goldelico_gta04-c4e32e9faaaa83340dbbc00e07c48d38f032b7dc.tar.gz
kernel_goldelico_gta04-c4e32e9faaaa83340dbbc00e07c48d38f032b7dc.tar.bz2
Input: serio - 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: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/serio/serio_raw.c')
-rw-r--r--drivers/input/serio/serio_raw.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/input/serio/serio_raw.c b/drivers/input/serio/serio_raw.c
index 47e08de..8734e7f 100644
--- a/drivers/input/serio/serio_raw.c
+++ b/drivers/input/serio/serio_raw.c
@@ -19,6 +19,7 @@
#include <linux/devfs_fs_kernel.h>
#include <linux/miscdevice.h>
#include <linux/wait.h>
+#include <linux/mutex.h>
#define DRIVER_DESC "Raw serio driver"
@@ -46,7 +47,7 @@ struct serio_raw_list {
struct list_head node;
};
-static DECLARE_MUTEX(serio_raw_sem);
+static DEFINE_MUTEX(serio_raw_mutex);
static LIST_HEAD(serio_raw_list);
static unsigned int serio_raw_no;
@@ -81,7 +82,7 @@ static int serio_raw_open(struct inode *inode, struct file *file)
struct serio_raw_list *list;
int retval = 0;
- retval = down_interruptible(&serio_raw_sem);
+ retval = mutex_lock_interruptible(&serio_raw_mutex);
if (retval)
return retval;
@@ -108,7 +109,7 @@ static int serio_raw_open(struct inode *inode, struct file *file)
list_add_tail(&list->node, &serio_raw->list);
out:
- up(&serio_raw_sem);
+ mutex_unlock(&serio_raw_mutex);
return retval;
}
@@ -130,12 +131,12 @@ static int serio_raw_release(struct inode *inode, struct file *file)
struct serio_raw_list *list = file->private_data;
struct serio_raw *serio_raw = list->serio_raw;
- down(&serio_raw_sem);
+ mutex_lock(&serio_raw_mutex);
serio_raw_fasync(-1, file, 0);
serio_raw_cleanup(serio_raw);
- up(&serio_raw_sem);
+ mutex_unlock(&serio_raw_mutex);
return 0;
}
@@ -194,7 +195,7 @@ static ssize_t serio_raw_write(struct file *file, const char __user *buffer, siz
int retval;
unsigned char c;
- retval = down_interruptible(&serio_raw_sem);
+ retval = mutex_lock_interruptible(&serio_raw_mutex);
if (retval)
return retval;
@@ -219,7 +220,7 @@ static ssize_t serio_raw_write(struct file *file, const char __user *buffer, siz
};
out:
- up(&serio_raw_sem);
+ mutex_unlock(&serio_raw_mutex);
return written;
}
@@ -280,7 +281,7 @@ static int serio_raw_connect(struct serio *serio, struct serio_driver *drv)
return -ENOMEM;
}
- down(&serio_raw_sem);
+ mutex_lock(&serio_raw_mutex);
memset(serio_raw, 0, sizeof(struct serio_raw));
snprintf(serio_raw->name, sizeof(serio_raw->name), "serio_raw%d", serio_raw_no++);
@@ -325,7 +326,7 @@ out_free:
serio_set_drvdata(serio, NULL);
kfree(serio_raw);
out:
- up(&serio_raw_sem);
+ mutex_unlock(&serio_raw_mutex);
return err;
}
@@ -350,7 +351,7 @@ static void serio_raw_disconnect(struct serio *serio)
{
struct serio_raw *serio_raw;
- down(&serio_raw_sem);
+ mutex_lock(&serio_raw_mutex);
serio_raw = serio_get_drvdata(serio);
@@ -361,7 +362,7 @@ static void serio_raw_disconnect(struct serio *serio)
if (!serio_raw_cleanup(serio_raw))
wake_up_interruptible(&serio_raw->wait);
- up(&serio_raw_sem);
+ mutex_unlock(&serio_raw_mutex);
}
static struct serio_device_id serio_raw_serio_ids[] = {