diff --git a/[refs] b/[refs] index d946f764793f..e29800848b64 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0410e689b19b6ca010a6a44abfa820968ae15733 +refs/heads/master: f8f2c79d594463427f7114cedb1555110d547d89 diff --git a/trunk/drivers/char/sonypi.c b/trunk/drivers/char/sonypi.c index 58533de59027..85e0eb76eeab 100644 --- a/trunk/drivers/char/sonypi.c +++ b/trunk/drivers/char/sonypi.c @@ -49,6 +49,7 @@ #include #include #include +#include #include #include @@ -906,12 +907,14 @@ static int sonypi_misc_release(struct inode *inode, struct file *file) static int sonypi_misc_open(struct inode *inode, struct file *file) { + lock_kernel(); mutex_lock(&sonypi_device.lock); /* Flush input queue on first open */ if (!sonypi_device.open_count) kfifo_reset(sonypi_device.fifo); sonypi_device.open_count++; mutex_unlock(&sonypi_device.lock); + unlock_kernel(); return 0; }