From ccd7886a779a242f0fccf4f2113763469891f2ec Mon Sep 17 00:00:00 2001 From: Jonathan Corbet Date: Thu, 15 May 2008 11:24:23 -0600 Subject: [PATCH] --- yaml --- r: 100284 b: refs/heads/master c: 12ead6b098b65dd21d3ed4fcccf20025dbe86cc2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/char/mbcs.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 84fe66b121f2..1ba6dac37fba 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 2d863e92ec1b1deb8167d7f5266f754f258e876a +refs/heads/master: 12ead6b098b65dd21d3ed4fcccf20025dbe86cc2 diff --git a/trunk/drivers/char/mbcs.c b/trunk/drivers/char/mbcs.c index f4716ad7348a..acd8e9ed474a 100644 --- a/trunk/drivers/char/mbcs.c +++ b/trunk/drivers/char/mbcs.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -382,15 +383,19 @@ static int mbcs_open(struct inode *ip, struct file *fp) struct mbcs_soft *soft; int minor; + lock_kernel(); minor = iminor(ip); + /* Nothing protects access to this list... */ list_for_each_entry(soft, &soft_list, list) { if (soft->nasid == minor) { fp->private_data = soft->cxdev; + unlock_kernel(); return 0; } } + unlock_kernel(); return -ENODEV; }