History

Merge tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random

Pull randomness updates from Ted Ts'o: "Cleanups and bug fixes to /dev/random, add a new getrandom(2) system call, which is a superset of OpenBSD's getentropy(2) call, for use with userspace crypto libraries such as LibreSSL. Also add the ability to have a kernel thread to pull entropy from hardware rng devices into /dev/random" * tag 'random_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/random: hwrng: Pass entropy to add_hwgenerator_randomness() in bits, not bytes random: limit the contribution of the hw rng to at most half random: introduce getrandom(2) system call hw_random: fix sparse warning (NULL vs 0 for pointer) random: use registers from interrupted code for CPU's w/o a cycle counter hwrng: add per-device entropy derating hwrng: create filler thread random: add_hwgenerator_randomness() for feeding entropy from devices random: use an improved fast_mix() function random: clean up interrupt entropy accounting for archs w/o cycle counters random: only update the last_pulled time if we actually transferred entropy random: remove unneeded hash of a portion of the entropy pool random: always update the entropy pool under the spinlock

Linus Torvalds committed 12 years ago

Commit f4f142e2 parents bb2cbf5 e02b8768 files · +274 −131Browse files

Showing the changes to include/uapi (2 of 8 files). Show all

Unified · Split

2 files
  1. include/uapi/asm-generic/unistd.h +3 −1
  2. include/uapi/linux/random.h +9 −0
include/uapi/asm-generic/unistd.h+3−1
@@ -701,9 +701,11 @@ __SYSCALL(__NR_sched_getattr, sys_sched_getattr) · 700 unmodified lines
701__SYSCALL(__NR_renameat2, sys_renameat2)701__SYSCALL(__NR_renameat2, sys_renameat2)
702#define __NR_seccomp 277702#define __NR_seccomp 277
703__SYSCALL(__NR_seccomp, sys_seccomp)703__SYSCALL(__NR_seccomp, sys_seccomp)
704#define __NR_getrandom 278
705__SYSCALL(__NR_getrandom, sys_getrandom)
704 706
705#undef __NR_syscalls707#undef __NR_syscalls
706#define __NR_syscalls 278708#define __NR_syscalls 279
707 709
708/*710/*
709 * All syscalls below here should go away really,711 * All syscalls below here should go away really,
include/uapi/linux/random.h+9−0
@@ -40,4 +40,13 @@ struct rand_pool_info { · 39 unmodified lines
40 __u32 buf[0];40 __u32 buf[0];
41};41};
42 42
43/*
44 * Flags for getrandom(2)
45 *
46 * GRND_NONBLOCK Don't block and return EAGAIN instead
47 * GRND_RANDOM Use the /dev/random pool instead of /dev/urandom
48 */
49#define GRND_NONBLOCK 0x0001
50#define GRND_RANDOM 0x0002
51
43#endif /* _UAPI_LINUX_RANDOM_H */52#endif /* _UAPI_LINUX_RANDOM_H */