From: Daniel Walker <[email protected]>
The plug_mem_mutex is already used as a mutex since it's using DECLARE_MUTEX(),
but the underlying construct is still a semaphore .. This patch switches
it over to a struct mutex.
Signed-off-by: Daniel Walker <[email protected]>
Signed-off-by: Jeff Dike <[email protected]>
---
arch/um/drivers/mconsole_kern.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
Index: linux-2.6-git/arch/um/drivers/mconsole_kern.c
===================================================================
--- linux-2.6-git.orig/arch/um/drivers/mconsole_kern.c 2008-01-17 14:35:43.000000000 -0500
+++ linux-2.6-git/arch/um/drivers/mconsole_kern.c 2008-01-17 14:37:29.000000000 -0500
@@ -17,6 +17,7 @@
#include "linux/syscalls.h"
#include "linux/utsname.h"
#include "linux/workqueue.h"
+#include "linux/mutex.h"
#include "asm/uaccess.h"
#include "init.h"
#include "irq_kern.h"
@@ -360,7 +361,7 @@ struct unplugged_pages {
void *pages[UNPLUGGED_PER_PAGE];
};
-static DECLARE_MUTEX(plug_mem_mutex);
+static DEFINE_MUTEX(plug_mem_mutex);
static unsigned long long unplugged_pages_count = 0;
static LIST_HEAD(unplugged_pages);
static int unplug_index = UNPLUGGED_PER_PAGE;
@@ -396,7 +397,7 @@ static int mem_config(char *str, char **
diff /= PAGE_SIZE;
- down(&plug_mem_mutex);
+ mutex_lock(&plug_mem_mutex);
for (i = 0; i < diff; i++) {
struct unplugged_pages *unplugged;
void *addr;
@@ -453,7 +454,7 @@ static int mem_config(char *str, char **
err = 0;
out_unlock:
- up(&plug_mem_mutex);
+ mutex_unlock(&plug_mem_mutex);
out:
return err;
}