]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - drivers/char/random.c
random: warn when kernel uses unseeded randomness
[mirror_ubuntu-artful-kernel.git] / drivers / char / random.c
index 3853dd4f92e79b69c7acd8fc3ad78b268af91d8e..fa5bbd5a7ca0fb589a7924b16fa7d96462260189 100644 (file)
 #define SEC_XFER_SIZE          512
 #define EXTRACT_SIZE           10
 
-#define DEBUG_RANDOM_BOOT 0
 
 #define LONGS(x) (((x) + sizeof(unsigned long) - 1)/sizeof(unsigned long))
 
@@ -1481,7 +1480,7 @@ void get_random_bytes(void *buf, int nbytes)
 {
        __u8 tmp[CHACHA20_BLOCK_SIZE];
 
-#if DEBUG_RANDOM_BOOT > 0
+#ifdef CONFIG_WARN_UNSEEDED_RANDOM
        if (!crng_ready())
                printk(KERN_NOTICE "random: %pF get_random_bytes called "
                       "with crng_init = %d\n", (void *) _RET_IP_, crng_init);
@@ -2075,6 +2074,12 @@ u64 get_random_u64(void)
            return ret;
 #endif
 
+#ifdef CONFIG_WARN_UNSEEDED_RANDOM
+       if (!crng_ready())
+               printk(KERN_NOTICE "random: %pF get_random_u64 called "
+                      "with crng_init = %d\n", (void *) _RET_IP_, crng_init);
+#endif
+
        batch = &get_cpu_var(batched_entropy_u64);
        if (use_lock)
                read_lock_irqsave(&batched_entropy_reset_lock, flags);
@@ -2101,6 +2106,12 @@ u32 get_random_u32(void)
        if (arch_get_random_int(&ret))
                return ret;
 
+#ifdef CONFIG_WARN_UNSEEDED_RANDOM
+       if (!crng_ready())
+               printk(KERN_NOTICE "random: %pF get_random_u32 called "
+                      "with crng_init = %d\n", (void *) _RET_IP_, crng_init);
+#endif
+
        batch = &get_cpu_var(batched_entropy_u32);
        if (use_lock)
                read_lock_irqsave(&batched_entropy_reset_lock, flags);