diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2013-03-12 09:37:17 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2013-03-12 09:37:17 +0000 |
commit | f0edf71d0715678b64251c85b679f3192b0020d8 (patch) | |
tree | ecfdecfd831ac54a526ebf9f664903cfddf09372 /sys/arch/hppa64 | |
parent | 22d6176c7a5b0d9982db2ad3b4a2e6befb249d3b (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/hppa64')
-rw-r--r-- | sys/arch/hppa64/include/cpu.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/arch/hppa64/include/cpu.h b/sys/arch/hppa64/include/cpu.h index 509a8a21b14..193a1bc7588 100644 --- a/sys/arch/hppa64/include/cpu.h +++ b/sys/arch/hppa64/include/cpu.h @@ -1,4 +1,4 @@ -/* $OpenBSD: cpu.h,v 1.30 2013/02/12 08:06:22 mpi Exp $ */ +/* $OpenBSD: cpu.h,v 1.31 2013/03/12 09:37:16 mpi Exp $ */ /* * Copyright (c) 2005 Michael Shalayeff @@ -109,6 +109,9 @@ struct cpu_info { #ifdef DIAGNOSTIC int ci_mutex_level; #endif +#ifdef GPROF + struct gmonparam *ci_gmon; +#endif }; struct cpu_info *curcpu(void); |