backport: Add an implementation of get_random_int() for <3.10 kernels.
authorSolomon Peachy <pizza@shaftnet.org>
Sat, 17 Aug 2013 13:02:56 +0000 (09:02 -0400)
committerLuis R. Rodriguez <mcgrof@do-not-panic.com>
Tue, 27 Aug 2013 18:15:28 +0000 (11:15 -0700)
get_random_int() was present, but simply not exported for use in modules
until 3.10.  Implement it in terms of the more expensive get_random_bytes()

This is needed by the cw1200 driver.

Signed-off-by: Solomon Peachy <pizza@shaftnet.org>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
backport/compat/backport-3.10.c

index 980ed59d8e4e6032c9314f2d96e526f3ea8e692b..5273758eeae14cd8626b517c91af57a7463ee2fa 100644 (file)
@@ -12,6 +12,7 @@
 #include <linux/module.h>
 #include <linux/err.h>
 #include <linux/proc_fs.h>
+#include <linux/random.h>
 
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,6,0))
 #include <linux/init.h>
@@ -77,3 +78,15 @@ void proc_set_user(struct proc_dir_entry *de, kuid_t uid, kgid_t gid)
        de->gid = gid;
 }
 EXPORT_SYMBOL_GPL(proc_set_user);
+
+/* get_random_int() was not exported for module use until 3.10-rc.
+   Implement it here in terms of the more expensive get_random_bytes()
+ */
+unsigned int get_random_int(void)
+{
+       unsigned int r;
+       get_random_bytes(&r, sizeof(r));
+
+       return r;
+}
+EXPORT_SYMBOL_GPL(get_random_int);