[PATCH 9/9] random: group sysctl functions

From: Jason A. Donenfeld
Date: Fri Feb 11 2022 - 07:36:46 EST


This pulls all of the sysctl-focused functions into the sixth labeled
section.

No functional changes.

Cc: Theodore Ts'o <tytso@xxxxxxx>
Cc: Dominik Brodowski <linux@xxxxxxxxxxxxxxxxxxxx>
Signed-off-by: Jason A. Donenfeld <Jason@xxxxxxxxx>
---
drivers/char/random.c | 30 ++++++++++++++++++++++++------
1 file changed, 24 insertions(+), 6 deletions(-)

diff --git a/drivers/char/random.c b/drivers/char/random.c
index a4229474d7fa..bff77654910c 100644
--- a/drivers/char/random.c
+++ b/drivers/char/random.c
@@ -1537,7 +1537,25 @@ const struct file_operations urandom_fops = {

/********************************************************************
*
- * Sysctl interface
+ * Sysctl interface.
+ *
+ * These are mostly unused legacy knobs with dummy values to not break
+ * userspace. Still in use, however, are:
+ *
+ * - /proc/sys/kernel/random/boot_id - a UUID representing the current
+ * boot.
+ *
+ * - /proc/sys/kernel/random/uuid - a random UUID, fresh each time.
+ *
+ * - /proc/sys/kernel/random/poolsize - the total amount of entropy
+ * that the input pool can hold.
+ *
+ * - /proc/sys/kernel/random/write_wakeup_threshold - the amount of
+ * entropy in the input pool below which write polls to
+ * /dev/random will unblock, requesting more entropy. This is
+ * currently the same value as the previous "poolsize" sysctl. It
+ * is writable to avoid breaking old userspaces, but writing to it
+ * does not change any behavior of the RNG.
*
********************************************************************/

@@ -1545,8 +1563,8 @@ const struct file_operations urandom_fops = {

#include <linux/sysctl.h>

-static int random_min_urandom_seed = 60;
-static int random_write_wakeup_bits = POOL_MIN_BITS;
+static int sysctl_random_min_urandom_seed = 60;
+static int sysctl_random_write_wakeup_bits = POOL_MIN_BITS;
static int sysctl_poolsize = POOL_BITS;
static char sysctl_bootid[16];

@@ -1603,14 +1621,14 @@ static struct ctl_table random_table[] = {
},
{
.procname = "write_wakeup_threshold",
- .data = &random_write_wakeup_bits,
+ .data = &sysctl_random_write_wakeup_bits,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = proc_dointvec,
},
{
.procname = "urandom_min_reseed_secs",
- .data = &random_min_urandom_seed,
+ .data = &sysctl_random_min_urandom_seed,
.maxlen = sizeof(int),
.mode = 0644,
.proc_handler = proc_dointvec,
@@ -1641,4 +1659,4 @@ static int __init random_sysctls_init(void)
return 0;
}
device_initcall(random_sysctls_init);
-#endif /* CONFIG_SYSCTL */
+#endif
--
2.35.0