No locking actually needed.

Signed-off-by: Matt Mackall <[EMAIL PROTECTED]>

diff -r f814137b0bfc -r 6f8bed9c59f7 drivers/char/random.c
--- a/drivers/char/random.c     Thu Jan 17 20:25:23 2008 -0600
+++ b/drivers/char/random.c     Thu Jan 17 20:25:23 2008 -0600
@@ -1063,8 +1063,7 @@
        return (ssize_t)count;
 }
 
-static int random_ioctl(struct inode *inode, struct file *file,
-                       unsigned int cmd, unsigned long arg)
+static long random_ioctl(struct file *f, unsigned int cmd, unsigned long arg)
 {
        int size, ent_count;
        int __user *p = (int __user *)arg;
@@ -1072,8 +1071,8 @@
 
        switch (cmd) {
        case RNDGETENTCNT:
-               ent_count = input_pool.entropy_count;
-               if (put_user(ent_count, p))
+               /* inherently racy, no point locking */
+               if (put_user(input_pool.entropy_count, p))
                        return -EFAULT;
                return 0;
        case RNDADDTOENTCNT:
@@ -1116,13 +1115,13 @@
        .read  = random_read,
        .write = random_write,
        .poll  = random_poll,
-       .ioctl = random_ioctl,
+       .unlocked_ioctl = random_ioctl,
 };
 
 const struct file_operations urandom_fops = {
        .read  = urandom_read,
        .write = random_write,
-       .ioctl = random_ioctl,
+       .unlocked_ioctl = random_ioctl,
 };
 
 /***************************************************************
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to