Эх сурвалжийг харах

[PATCH] fix semaphore handling in __unregister_chrdev_region

This up() should be down() instead.

Signed-off-by: Wen-chien Jesse Sung <jesse@cola.voip.idv.tw>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Wen-chien Jesse Sung 20 жил өмнө
parent
commit
8d451687ca
1 өөрчлөгдсөн 1 нэмэгдсэн , 1 устгасан
  1. 1 1
      fs/char_dev.c

+ 1 - 1
fs/char_dev.c

@@ -150,7 +150,7 @@ __unregister_chrdev_region(unsigned major, unsigned baseminor, int minorct)
 	struct char_device_struct *cd = NULL, **cp;
 	struct char_device_struct *cd = NULL, **cp;
 	int i = major_to_index(major);
 	int i = major_to_index(major);
 
 
-	up(&chrdevs_lock);
+	down(&chrdevs_lock);
 	for (cp = &chrdevs[i]; *cp; cp = &(*cp)->next)
 	for (cp = &chrdevs[i]; *cp; cp = &(*cp)->next)
 		if ((*cp)->major == major &&
 		if ((*cp)->major == major &&
 		    (*cp)->baseminor == baseminor &&
 		    (*cp)->baseminor == baseminor &&