summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormjg <mjg@FreeBSD.org>2016-12-31 13:05:48 +0000
committermjg <mjg@FreeBSD.org>2016-12-31 13:05:48 +0000
commit34f684e838cb21d18ccb1c5d7db662d87ee2c37a (patch)
tree198bf93b1b46326efcb599905827846cc70447ab
parent57c2919e0d0e8bc07f304a2d1ef2fc9071204598 (diff)
downloadFreeBSD-src-34f684e838cb21d18ccb1c5d7db662d87ee2c37a.zip
FreeBSD-src-34f684e838cb21d18ccb1c5d7db662d87ee2c37a.tar.gz
MFC r307653:
Mark a bunch of mpsafe sysctls as such. This gives me a sysctl Giant-free buildworld.
-rw-r--r--sys/kern/kern_exec.c8
-rw-r--r--sys/kern/kern_mib.c11
-rw-r--r--sys/x86/x86/identcpu.c10
3 files changed, 15 insertions, 14 deletions
diff --git a/sys/kern/kern_exec.c b/sys/kern/kern_exec.c
index e573672..7d9adb0 100644
--- a/sys/kern/kern_exec.c
+++ b/sys/kern/kern_exec.c
@@ -118,14 +118,14 @@ static int do_execve(struct thread *td, struct image_args *args,
struct mac *mac_p);
/* XXX This should be vm_size_t. */
-SYSCTL_PROC(_kern, KERN_PS_STRINGS, ps_strings, CTLTYPE_ULONG|CTLFLAG_RD,
- NULL, 0, sysctl_kern_ps_strings, "LU", "");
+SYSCTL_PROC(_kern, KERN_PS_STRINGS, ps_strings, CTLTYPE_ULONG|CTLFLAG_RD|
+ CTLFLAG_MPSAFE, NULL, 0, sysctl_kern_ps_strings, "LU", "");
/* XXX This should be vm_size_t. */
SYSCTL_PROC(_kern, KERN_USRSTACK, usrstack, CTLTYPE_ULONG|CTLFLAG_RD|
- CTLFLAG_CAPRD, NULL, 0, sysctl_kern_usrstack, "LU", "");
+ CTLFLAG_CAPRD|CTLFLAG_MPSAFE, NULL, 0, sysctl_kern_usrstack, "LU", "");
-SYSCTL_PROC(_kern, OID_AUTO, stackprot, CTLTYPE_INT|CTLFLAG_RD,
+SYSCTL_PROC(_kern, OID_AUTO, stackprot, CTLTYPE_INT|CTLFLAG_RD|CTLFLAG_MPSAFE,
NULL, 0, sysctl_kern_stackprot, "I", "");
u_long ps_arg_cache_limit = PAGE_SIZE / 16;
diff --git a/sys/kern/kern_mib.c b/sys/kern/kern_mib.c
index 60c8b7e..875d2b9 100644
--- a/sys/kern/kern_mib.c
+++ b/sys/kern/kern_mib.c
@@ -135,7 +135,7 @@ SYSCTL_INT(_kern, KERN_SAVED_IDS, saved_ids, CTLFLAG_RD|CTLFLAG_CAPRD,
char kernelname[MAXPATHLEN] = "/kernel"; /* XXX bloat */
-SYSCTL_STRING(_kern, KERN_BOOTFILE, bootfile, CTLFLAG_RW,
+SYSCTL_STRING(_kern, KERN_BOOTFILE, bootfile, CTLFLAG_RW | CTLFLAG_MPSAFE,
kernelname, sizeof kernelname, "Name of kernel file booted");
SYSCTL_INT(_hw, HW_NCPU, ncpu, CTLFLAG_RD|CTLFLAG_CAPRD,
@@ -254,8 +254,9 @@ sysctl_hw_machine_arch(SYSCTL_HANDLER_ARGS)
return (error);
}
-SYSCTL_PROC(_hw, HW_MACHINE_ARCH, machine_arch, CTLTYPE_STRING | CTLFLAG_RD,
- NULL, 0, sysctl_hw_machine_arch, "A", "System architecture");
+SYSCTL_PROC(_hw, HW_MACHINE_ARCH, machine_arch, CTLTYPE_STRING | CTLFLAG_RD |
+ CTLFLAG_MPSAFE, NULL, 0, sysctl_hw_machine_arch, "A",
+ "System architecture");
SYSCTL_STRING(_kern, OID_AUTO, supported_archs, CTLFLAG_RD | CTLFLAG_MPSAFE,
#ifdef COMPAT_FREEBSD32
@@ -383,8 +384,8 @@ SYSCTL_PROC(_kern, KERN_SECURELVL, securelevel,
/* Actual kernel configuration options. */
extern char kernconfstring[];
-SYSCTL_STRING(_kern, OID_AUTO, conftxt, CTLFLAG_RD, kernconfstring, 0,
- "Kernel configuration file");
+SYSCTL_STRING(_kern, OID_AUTO, conftxt, CTLFLAG_RD | CTLFLAG_MPSAFE,
+ kernconfstring, 0, "Kernel configuration file");
#endif
static int
diff --git a/sys/x86/x86/identcpu.c b/sys/x86/x86/identcpu.c
index 11627ce..d4cc223 100644
--- a/sys/x86/x86/identcpu.c
+++ b/sys/x86/x86/identcpu.c
@@ -148,15 +148,15 @@ sysctl_hw_machine(SYSCTL_HANDLER_ARGS)
return (error);
}
-SYSCTL_PROC(_hw, HW_MACHINE, machine, CTLTYPE_STRING | CTLFLAG_RD,
- NULL, 0, sysctl_hw_machine, "A", "Machine class");
+SYSCTL_PROC(_hw, HW_MACHINE, machine, CTLTYPE_STRING | CTLFLAG_RD |
+ CTLFLAG_MPSAFE, NULL, 0, sysctl_hw_machine, "A", "Machine class");
#else
SYSCTL_STRING(_hw, HW_MACHINE, machine, CTLFLAG_RD,
machine, 0, "Machine class");
#endif
static char cpu_model[128];
-SYSCTL_STRING(_hw, HW_MODEL, model, CTLFLAG_RD,
+SYSCTL_STRING(_hw, HW_MODEL, model, CTLFLAG_RD | CTLFLAG_MPSAFE,
cpu_model, 0, "Machine model");
static int hw_clockrate;
@@ -165,8 +165,8 @@ SYSCTL_INT(_hw, OID_AUTO, clockrate, CTLFLAG_RD,
u_int hv_high;
char hv_vendor[16];
-SYSCTL_STRING(_hw, OID_AUTO, hv_vendor, CTLFLAG_RD, hv_vendor, 0,
- "Hypervisor vendor");
+SYSCTL_STRING(_hw, OID_AUTO, hv_vendor, CTLFLAG_RD | CTLFLAG_MPSAFE, hv_vendor,
+ 0, "Hypervisor vendor");
static eventhandler_tag tsc_post_tag;
OpenPOWER on IntegriCloud