summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_environment.c
diff options
context:
space:
mode:
authorpeter <peter@FreeBSD.org>2001-06-08 05:24:21 +0000
committerpeter <peter@FreeBSD.org>2001-06-08 05:24:21 +0000
commit4b91e2ecf0aa1bb9c2c89a4f0ef1701e5aec268f (patch)
tree86b0161dd1235a75cc934e1a85ca5844895edd8f /sys/kern/kern_environment.c
parentaa18b0b03200ae9ae0c0f42a9a5253d50a170e64 (diff)
downloadFreeBSD-src-4b91e2ecf0aa1bb9c2c89a4f0ef1701e5aec268f.zip
FreeBSD-src-4b91e2ecf0aa1bb9c2c89a4f0ef1701e5aec268f.tar.gz
"Fix" the previous initial attempt at fixing TUNABLE_INT(). This time
around, use a common function for looking up and extracting the tunables from the kernel environment. This saves duplicating the same function over and over again. This way typically has an overhead of 8 bytes + the path string, versus about 26 bytes + the path string.
Diffstat (limited to 'sys/kern/kern_environment.c')
-rw-r--r--sys/kern/kern_environment.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/sys/kern/kern_environment.c b/sys/kern/kern_environment.c
index 0003062..561f63d 100644
--- a/sys/kern/kern_environment.c
+++ b/sys/kern/kern_environment.c
@@ -151,3 +151,18 @@ kernenv_next(char *cp)
return(cp);
}
+void
+tunable_int_init(void *data)
+{
+ struct tunable_int *d = (struct tunable_int *)data;
+
+ TUNABLE_INT_FETCH(d->path, d->var);
+}
+
+void
+tunable_str_init(void *data)
+{
+ struct tunable_str *d = (struct tunable_str *)data;
+
+ TUNABLE_STR_FETCH(d->path, d->var, d->size);
+}
OpenPOWER on IntegriCloud