Here it is.

        Oliver
--- drivers/usb/acm.c.alt	Mon Apr 30 14:58:56 2001
+++ drivers/usb/acm.c	Mon Apr 30 15:01:46 2001
@@ -51,6 +51,7 @@
 #include <linux/tty_driver.h>
 #include <linux/tty_flip.h>
 #include <linux/module.h>
+#include <linux/smp_lock.h>
 #undef DEBUG
 #include <linux/usb.h>
 
@@ -292,7 +293,14 @@
 
 	MOD_INC_USE_COUNT;
 
-	if (acm->used++) return 0;
+        lock_kernel();
+
+	if (acm->used++) {
+                unlock_kernel();
+                return 0;
+        }
+
+        unlock_kernel();
 
 	acm->ctrlurb.dev = acm->dev;
 	if (usb_submit_urb(&acm->ctrlurb))

Reply via email to