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))