From: Wen-chien Jesse Sung Date: Thu, 30 Jun 2005 03:42:10 +0000 (+0800) Subject: [PATCH] fix semaphore handling in __unregister_chrdev_region X-Git-Tag: v2.6.12.3~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b4a3c2ae79b275a58192f418aa33f156fb648f38;p=thirdparty%2Fkernel%2Fstable.git [PATCH] fix semaphore handling in __unregister_chrdev_region This up() should be down() instead. Signed-off-by: Wen-chien Jesse Sung Signed-off-by: Chris Wright Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/char_dev.c b/fs/char_dev.c index c1e3537909fc1..e8fb88b7521f6 100644 --- a/fs/char_dev.c +++ b/fs/char_dev.c @@ -139,7 +139,7 @@ __unregister_chrdev_region(unsigned major, unsigned baseminor, int minorct) struct char_device_struct *cd = NULL, **cp; int i = major_to_index(major); - up(&chrdevs_lock); + down(&chrdevs_lock); for (cp = &chrdevs[i]; *cp; cp = &(*cp)->next) if ((*cp)->major == major && (*cp)->baseminor == baseminor &&