X-Git-Url: http://git.cascardo.info/?a=blobdiff_plain;f=include%2Flinux%2Frandom.h;h=7bd2403e4fef1ad7fb0a5f03b4e104e96234d26b;hb=1e90a13d0c3dc94512af1ccb2b6563e8297838fa;hp=3d6e9815cd854d6d093e8082df312b63790b3d11;hpb=2ab704a47e0f27df758840a589aec3298dbb98dd;p=cascardo%2Flinux.git diff --git a/include/linux/random.h b/include/linux/random.h index 3d6e9815cd85..7bd2403e4fef 100644 --- a/include/linux/random.h +++ b/include/linux/random.h @@ -18,9 +18,20 @@ struct random_ready_callback { }; extern void add_device_randomness(const void *, unsigned int); + +#if defined(CONFIG_GCC_PLUGIN_LATENT_ENTROPY) && !defined(__CHECKER__) +static inline void add_latent_entropy(void) +{ + add_device_randomness((const void *)&latent_entropy, + sizeof(latent_entropy)); +} +#else +static inline void add_latent_entropy(void) {} +#endif + extern void add_input_randomness(unsigned int type, unsigned int code, - unsigned int value); -extern void add_interrupt_randomness(int irq, int irq_flags); + unsigned int value) __latent_entropy; +extern void add_interrupt_randomness(int irq, int irq_flags) __latent_entropy; extern void get_random_bytes(void *buf, int nbytes); extern int add_random_ready_callback(struct random_ready_callback *rdy); @@ -34,7 +45,7 @@ extern const struct file_operations random_fops, urandom_fops; unsigned int get_random_int(void); unsigned long get_random_long(void); -unsigned long randomize_range(unsigned long start, unsigned long end, unsigned long len); +unsigned long randomize_page(unsigned long start, unsigned long range); u32 prandom_u32(void); void prandom_bytes(void *buf, size_t nbytes);