diff options
| author | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-06 10:37:02 -0400 |
|---|---|---|
| committer | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-06 10:37:02 -0400 |
| commit | ab11b487402f97975f3ac1eeea09c82f4431481e (patch) | |
| tree | 86337c5cbbd2b0c4bd07c0847a1dc7de3d898147 /net/wanrouter/wanproc.c | |
| parent | 1c689cbcf2c2b7a35cd237abddd9206bb1b6fee1 (diff) | |
| parent | fc1caf6eafb30ea185720e29f7f5eccca61ecd60 (diff) | |
Merge branch 'master' into for-linus
Diffstat (limited to 'net/wanrouter/wanproc.c')
| -rw-r--r-- | net/wanrouter/wanproc.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/wanrouter/wanproc.c b/net/wanrouter/wanproc.c index c44d96b3a437..11f25c7a7a05 100644 --- a/net/wanrouter/wanproc.c +++ b/net/wanrouter/wanproc.c | |||
| @@ -27,7 +27,7 @@ | |||
| 27 | #include <linux/module.h> | 27 | #include <linux/module.h> |
| 28 | #include <linux/wanrouter.h> /* WAN router API definitions */ | 28 | #include <linux/wanrouter.h> /* WAN router API definitions */ |
| 29 | #include <linux/seq_file.h> | 29 | #include <linux/seq_file.h> |
| 30 | #include <linux/smp_lock.h> | 30 | #include <linux/mutex.h> |
| 31 | 31 | ||
| 32 | #include <net/net_namespace.h> | 32 | #include <net/net_namespace.h> |
| 33 | #include <asm/io.h> | 33 | #include <asm/io.h> |
| @@ -66,6 +66,7 @@ | |||
| 66 | * /proc/net/router | 66 | * /proc/net/router |
| 67 | */ | 67 | */ |
| 68 | 68 | ||
| 69 | static DEFINE_MUTEX(config_mutex); | ||
| 69 | static struct proc_dir_entry *proc_router; | 70 | static struct proc_dir_entry *proc_router; |
| 70 | 71 | ||
| 71 | /* Strings */ | 72 | /* Strings */ |
| @@ -85,7 +86,7 @@ static void *r_start(struct seq_file *m, loff_t *pos) | |||
| 85 | struct wan_device *wandev; | 86 | struct wan_device *wandev; |
| 86 | loff_t l = *pos; | 87 | loff_t l = *pos; |
| 87 | 88 | ||
| 88 | lock_kernel(); | 89 | mutex_lock(&config_mutex); |
| 89 | if (!l--) | 90 | if (!l--) |
| 90 | return SEQ_START_TOKEN; | 91 | return SEQ_START_TOKEN; |
| 91 | for (wandev = wanrouter_router_devlist; l-- && wandev; | 92 | for (wandev = wanrouter_router_devlist; l-- && wandev; |
| @@ -104,7 +105,7 @@ static void *r_next(struct seq_file *m, void *v, loff_t *pos) | |||
| 104 | static void r_stop(struct seq_file *m, void *v) | 105 | static void r_stop(struct seq_file *m, void *v) |
| 105 | __releases(kernel_lock) | 106 | __releases(kernel_lock) |
| 106 | { | 107 | { |
| 107 | unlock_kernel(); | 108 | mutex_unlock(&config_mutex); |
| 108 | } | 109 | } |
| 109 | 110 | ||
| 110 | static int config_show(struct seq_file *m, void *v) | 111 | static int config_show(struct seq_file *m, void *v) |
