u64 get_random_u64(void)
 {
        u64 ret;
-       bool use_lock = READ_ONCE(crng_init) < 2;
+       bool use_lock;
        unsigned long flags = 0;
        struct batched_entropy *batch;
        static void *previous;
 
        warn_unseeded_randomness(&previous);
 
+       use_lock = READ_ONCE(crng_init) < 2;
        batch = &get_cpu_var(batched_entropy_u64);
        if (use_lock)
                read_lock_irqsave(&batched_entropy_reset_lock, flags);
 u32 get_random_u32(void)
 {
        u32 ret;
-       bool use_lock = READ_ONCE(crng_init) < 2;
+       bool use_lock;
        unsigned long flags = 0;
        struct batched_entropy *batch;
        static void *previous;
 
        warn_unseeded_randomness(&previous);
 
+       use_lock = READ_ONCE(crng_init) < 2;
        batch = &get_cpu_var(batched_entropy_u32);
        if (use_lock)
                read_lock_irqsave(&batched_entropy_reset_lock, flags);