summaryrefslogtreecommitdiff
path: root/sys/arch/i386
diff options
context:
space:
mode:
authorMartin Pieuchot <mpi@cvs.openbsd.org>2013-03-12 09:37:17 +0000
committerMartin Pieuchot <mpi@cvs.openbsd.org>2013-03-12 09:37:17 +0000
commitf0edf71d0715678b64251c85b679f3192b0020d8 (patch)
treeecfdecfd831ac54a526ebf9f664903cfddf09372 /sys/arch/i386
parent22d6176c7a5b0d9982db2ad3b4a2e6befb249d3b (diff)
Fix kernel profiling on MP systems by using per-CPU buffers and teach
kgmon(8) to deal with them, this time without public header changes. Previously various CPUs were iterating over the same global buffer at the same time to modify it and never ended. This diff includes some ideas submited by Thor Simon to NetBSD via miod@. ok deraadt@, mikeb@, haesbaert@
Diffstat (limited to 'sys/arch/i386')
-rw-r--r--sys/arch/i386/include/cpu.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/arch/i386/include/cpu.h b/sys/arch/i386/include/cpu.h
index 2fe58c1d2a5..99a7448a763 100644
--- a/sys/arch/i386/include/cpu.h
+++ b/sys/arch/i386/include/cpu.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpu.h,v 1.127 2013/02/12 08:06:22 mpi Exp $ */
+/* $OpenBSD: cpu.h,v 1.128 2013/03/12 09:37:16 mpi Exp $ */
/* $NetBSD: cpu.h,v 1.35 1996/05/05 19:29:26 christos Exp $ */
/*-
@@ -148,6 +148,9 @@ struct cpu_info {
struct ksensordev ci_sensordev;
struct ksensor ci_sensor;
+#ifdef GPROF
+ struct gmonparam *ci_gmon;
+#endif
};
/*