Module Name:    src
Committed By:   christos
Date:           Mon Mar 24 20:07:41 UTC 2014

Modified Files:
        src/sys/kern: init_sysctl.c kern_cpu.c
        src/sys/sys: cpu.h systm.h

Log Message:
- create  cpu_{g,s}etmodel() and hide cpu_model from direct access.


To generate a diff of this commit:
cvs rdiff -u -r1.201 -r1.202 src/sys/kern/init_sysctl.c
cvs rdiff -u -r1.63 -r1.64 src/sys/kern/kern_cpu.c
cvs rdiff -u -r1.39 -r1.40 src/sys/sys/cpu.h
cvs rdiff -u -r1.260 -r1.261 src/sys/sys/systm.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/kern/init_sysctl.c
diff -u src/sys/kern/init_sysctl.c:1.201 src/sys/kern/init_sysctl.c:1.202
--- src/sys/kern/init_sysctl.c:1.201	Tue Feb 25 13:30:11 2014
+++ src/sys/kern/init_sysctl.c	Mon Mar 24 16:07:41 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: init_sysctl.c,v 1.201 2014/02/25 18:30:11 pooka Exp $ */
+/*	$NetBSD: init_sysctl.c,v 1.202 2014/03/24 20:07:41 christos Exp $ */
 
 /*-
  * Copyright (c) 2003, 2007, 2008, 2009 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: init_sysctl.c,v 1.201 2014/02/25 18:30:11 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: init_sysctl.c,v 1.202 2014/03/24 20:07:41 christos Exp $");
 
 #include "opt_sysv.h"
 #include "opt_compat_netbsd.h"
@@ -635,6 +635,7 @@ SYSCTL_SETUP(sysctl_hw_setup, "sysctl hw
 {
 	u_int u;
 	u_quad_t q;
+	const char *model = cpu_getmodel();
 
 	sysctl_createv(clog, 0, NULL, NULL,
 		       CTLFLAG_PERMANENT,
@@ -646,7 +647,7 @@ SYSCTL_SETUP(sysctl_hw_setup, "sysctl hw
 		       CTLFLAG_PERMANENT,
 		       CTLTYPE_STRING, "model",
 		       SYSCTL_DESCR("Machine model"),
-		       NULL, 0, cpu_model, 0,
+		       NULL, 0, __UNCONST(model), 0,
 		       CTL_HW, HW_MODEL, CTL_EOL);
 	sysctl_createv(clog, 0, NULL, NULL,
 		       CTLFLAG_PERMANENT,

Index: src/sys/kern/kern_cpu.c
diff -u src/sys/kern/kern_cpu.c:1.63 src/sys/kern/kern_cpu.c:1.64
--- src/sys/kern/kern_cpu.c:1.63	Sun Mar 16 01:20:30 2014
+++ src/sys/kern/kern_cpu.c	Mon Mar 24 16:07:41 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: kern_cpu.c,v 1.63 2014/03/16 05:20:30 dholland Exp $	*/
+/*	$NetBSD: kern_cpu.c,v 1.64 2014/03/24 20:07:41 christos Exp $	*/
 
 /*-
  * Copyright (c) 2007, 2008, 2009, 2010, 2012 The NetBSD Foundation, Inc.
@@ -56,7 +56,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.63 2014/03/16 05:20:30 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kern_cpu.c,v 1.64 2014/03/24 20:07:41 christos Exp $");
 
 #include "opt_cpu_ucode.h"
 #include "opt_compat_netbsd.h"
@@ -127,6 +127,9 @@ struct cpu_info **cpu_infos		__read_most
 kcpuset_t *	kcpuset_attached	__read_mostly	= NULL;
 kcpuset_t *	kcpuset_running		__read_mostly	= NULL;
 
+
+static char cpu_model[128];
+
 /*
  * mi_cpu_init: early initialisation of MI CPU related structures.
  *
@@ -475,6 +478,24 @@ cpu_setstate(struct cpu_info *ci, bool o
 	return 0;
 }
 
+int
+cpu_setmodel(const char *fmt, ...)
+{
+	int len;
+	va_list ap;
+
+	va_start(ap, fmt);
+	len = snprintf(cpu_model, sizeof(cpu_model), fmt, ap);
+	va_end(ap);
+	return len;
+}
+
+const char *
+cpu_getmodel(void)
+{
+	return cpu_model;
+}
+
 #ifdef __HAVE_INTR_CONTROL
 static void
 cpu_xc_intr(struct cpu_info *ci)

Index: src/sys/sys/cpu.h
diff -u src/sys/sys/cpu.h:1.39 src/sys/sys/cpu.h:1.40
--- src/sys/sys/cpu.h:1.39	Sun Nov 24 22:06:08 2013
+++ src/sys/sys/cpu.h	Mon Mar 24 16:07:40 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: cpu.h,v 1.39 2013/11/25 03:06:08 christos Exp $	*/
+/*	$NetBSD: cpu.h,v 1.40 2014/03/24 20:07:40 christos Exp $	*/
 
 /*-
  * Copyright (c) 2007 YAMAMOTO Takashi,
@@ -79,6 +79,8 @@ void	cpu_offline_md(void);
 
 struct lwp *cpu_switchto(struct lwp *, struct lwp *, bool);
 struct	cpu_info *cpu_lookup(u_int);
+int	cpu_setmodel(const char *fmt, ...)	__printflike(1, 2);
+const char *cpu_getmodel(void);
 int	cpu_setstate(struct cpu_info *, bool);
 int	cpu_setintr(struct cpu_info *, bool);
 bool	cpu_intr_p(void);

Index: src/sys/sys/systm.h
diff -u src/sys/sys/systm.h:1.260 src/sys/sys/systm.h:1.261
--- src/sys/sys/systm.h:1.260	Sat Feb  1 04:04:57 2014
+++ src/sys/sys/systm.h	Mon Mar 24 16:07:40 2014
@@ -1,4 +1,4 @@
-/*	$NetBSD: systm.h,v 1.260 2014/02/01 09:04:57 matt Exp $	*/
+/*	$NetBSD: systm.h,v 1.261 2014/03/24 20:07:40 christos Exp $	*/
 
 /*-
  * Copyright (c) 1982, 1988, 1991, 1993
@@ -67,7 +67,6 @@ extern const char *panicstr;	/* panic me
 extern int doing_shutdown;	/* shutting down */
 
 extern const char copyright[];	/* system copyright */
-extern char cpu_model[];	/* machine/cpu model name */
 extern char machine[];		/* machine type */
 extern char machine_arch[];	/* machine architecture */
 extern const char osrelease[];	/* short system version */

Reply via email to