Commit 38e9efcd authored by Daniel Borkmann's avatar Daniel Borkmann Committed by David S. Miller
Browse files

random32: move rnd_state to linux/random.h

struct rnd_state got mistakenly pulled into uapi header. It is not
used anywhere and does also not belong there!

Commit 5960164f

 ("lib/random32: export pseudo-random number
generator for modules"), the last commit on rnd_state before it
got moved to uapi, says:

  This patch moves the definition of struct rnd_state and the inline
  __seed() function to linux/random.h.  It renames the static __random32()
  function to prandom32() and exports it for use in modules.

Hence, the structure was moved from lib/random32.c to linux/random.h
so that it can be used within modules (FCoE-related code in this
case), but not from user space. However, it seems to have been
mistakenly moved to uapi header through the uapi script. Since no-one
should make use of it from the linux headers, move the structure back
to the kernel for internal use, so that it can be modified on demand.

Joint work with Hannes Frederic Sowa.

Cc: Joe Eykholt <>
Signed-off-by: default avatarDaniel Borkmann <>
Signed-off-by: default avatarHannes Frederic Sowa <>
Signed-off-by: default avatarDavid S. Miller <>
parent 4af712e8
......@@ -31,6 +31,10 @@ void prandom_bytes(void *buf, int nbytes);
void prandom_seed(u32 seed);
void prandom_reseed_late(void);
struct rnd_state {
__u32 s1, s2, s3;
u32 prandom_u32_state(struct rnd_state *);
void prandom_bytes_state(struct rnd_state *state, void *buf, int nbytes);
......@@ -40,11 +40,4 @@ struct rand_pool_info {
__u32 buf[0];
struct rnd_state {
__u32 s1, s2, s3;
/* Exported functions */
#endif /* _UAPI_LINUX_RANDOM_H */
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment