diff options
Diffstat (limited to 'drivers/staging')
-rw-r--r-- | drivers/staging/frontier/alphatrack.c | 3 | ||||
-rw-r--r-- | drivers/staging/frontier/tranzport.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/drivers/staging/frontier/alphatrack.c b/drivers/staging/frontier/alphatrack.c index 15aed87fe1b..e2f82f0dbad 100644 --- a/drivers/staging/frontier/alphatrack.c +++ b/drivers/staging/frontier/alphatrack.c @@ -41,6 +41,7 @@ #include <linux/mutex.h> #include <linux/uaccess.h> +#include <linux/smp_lock.h> #include <linux/input.h> #include <linux/usb.h> #include <linux/poll.h> @@ -325,6 +326,7 @@ static int usb_alphatrack_open(struct inode *inode, struct file *file) int retval = 0; struct usb_interface *interface; + lock_kernel(); nonseekable_open(inode, file); subminor = iminor(inode); @@ -394,6 +396,7 @@ unlock_exit: unlock_disconnect_exit: mutex_unlock(&disconnect_mutex); + unlock_kernel(); return retval; } diff --git a/drivers/staging/frontier/tranzport.c b/drivers/staging/frontier/tranzport.c index ef8fcc8c67b..1d3f7dc90f4 100644 --- a/drivers/staging/frontier/tranzport.c +++ b/drivers/staging/frontier/tranzport.c @@ -40,6 +40,7 @@ #include <linux/mutex.h> #include <linux/uaccess.h> +#include <linux/smp_lock.h> #include <linux/input.h> #include <linux/usb.h> #include <linux/poll.h> @@ -343,6 +344,7 @@ static int usb_tranzport_open(struct inode *inode, struct file *file) int retval = 0; struct usb_interface *interface; + lock_kernel(); nonseekable_open(inode, file); subminor = iminor(inode); @@ -413,6 +415,7 @@ unlock_exit: unlock_disconnect_exit: mutex_unlock(&disconnect_mutex); + unlock_kernel(); return retval; } |