diff --git a/[refs] b/[refs] index ec1eb55e10d0..ceb26550a49c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1bcaa0bd6fd5b510dd9f1ba2da114d3f1253af61 +refs/heads/master: 20613f24bcd1cbfb08e64f0bb00c44481313b448 diff --git a/trunk/drivers/usb/core/file.c b/trunk/drivers/usb/core/file.c index 8133c99c6c5c..c6a95395e52a 100644 --- a/trunk/drivers/usb/core/file.c +++ b/trunk/drivers/usb/core/file.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include "usb.h" @@ -33,6 +34,7 @@ static int usb_open(struct inode * inode, struct file * file) int err = -ENODEV; const struct file_operations *old_fops, *new_fops = NULL; + lock_kernel(); down_read(&minor_rwsem); c = usb_minors[minor]; @@ -51,6 +53,7 @@ static int usb_open(struct inode * inode, struct file * file) fops_put(old_fops); done: up_read(&minor_rwsem); + unlock_kernel(); return err; }