summaryrefslogtreecommitdiffstats
path: root/arch/um/drivers/random.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2008-05-20 19:16:57 +0200
committerJonathan Corbet <corbet@lwn.net>2008-07-02 15:06:26 -0600
commit7eb500d1a0408c37d0c0360f066f8b7701835d68 (patch)
tree5ef59f59e2f79dcb35a5c8947d41ce1855811ca6 /arch/um/drivers/random.c
parentbd6859fe836491d20ea6e57fee93e0e08ee69443 (diff)
downloadlinux-7eb500d1a0408c37d0c0360f066f8b7701835d68.tar.bz2
uml-random: BKL pushdown
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/um/drivers/random.c')
-rw-r--r--arch/um/drivers/random.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/um/drivers/random.c b/arch/um/drivers/random.c
index 4949044773ba..6eabb7022a2d 100644
--- a/arch/um/drivers/random.c
+++ b/arch/um/drivers/random.c
@@ -7,6 +7,7 @@
* of the GNU General Public License, incorporated herein by reference.
*/
#include <linux/sched.h>
+#include <linux/smp_lock.h>
#include <linux/module.h>
#include <linux/fs.h>
#include <linux/interrupt.h>
@@ -33,6 +34,8 @@ static DECLARE_WAIT_QUEUE_HEAD(host_read_wait);
static int rng_dev_open (struct inode *inode, struct file *filp)
{
+ cycle_kernel_lock();
+
/* enforce read-only access to this chrdev */
if ((filp->f_mode & FMODE_READ) == 0)
return -EINVAL;