Commit Graph

45 Commits

Author SHA1 Message Date
ryo 567a3a02e7 Improved the performance of kernel profiling on MULTIPROCESSOR, and possible to get profiling data for each CPU.
In the current implementation, locks are acquired at the entrance of the mcount
internal function, so the higher the number of cores, the more lock conflict
occurs, making profiling performance in a MULTIPROCESSOR environment unusable
and slow. Profiling buffers has been changed to be reserved for each CPU,
improving profiling performance in MP by several to several dozen times.

- Eliminated cpu_simple_lock in mcount internal function, using per-CPU buffers.
- Add ci_gmon member to struct cpu_info of each MP arch.
- Add kern.profiling.percpu node in sysctl tree.
- Add new -c <cpuid> option to kgmon(8) to specify the cpuid, like openbsd.
  For compatibility, if the -c option is not specified, the entire system can be
  operated as before, and the -p option will get the total profiling data for
  all CPUs.
2021-08-14 17:51:18 +00:00
msaitoh 03e9d50adf Fix typo (s/supress/suppress/). 2019-07-11 03:49:51 +00:00
mrg 0537635d0c for 64 bit mips platforms where we built userland largely as n32 by
default, build a handful of tools as n64 so they work properly.

unfortunately, they're also static as dynamic n64 has a problem.

of these tools pstat is probably the lowest hanging fruit to convert
to sysctl.  systat would be close were it not for the netstat screen,
which includes netstat itself.

the rest are difficult to perhaps foolish.


the upside is that netstat, pmap and fstat all work properly now.
2016-12-23 10:19:57 +00:00
wiz d76f551343 Add option arguments to descriptions. From YOMURA Masanori. 2011-04-25 22:46:35 +00:00
uebayasi 5b00191068 Typo in an error message. 2010-10-17 16:13:56 +00:00
lukem d877c4c3c0 Enable WARNS=4 by default, except for:
cpuctl  dumplfs  hprop  ipf  iprop-log  kadmin  kcm  kdc  kdigest
	kimpersonate  kstash  ktutil  makefs  ndbootd  ntp  pppd  quot
	racoon  racoonctl  rtadvd  sntp  sup  tcpdchk  tcpdmatch  tcpdump
	traceroute  traceroute6  user  veriexecgen  wsmoused  zic
(Mostly third-party applications)
2009-04-22 15:23:01 +00:00
lukem e7dd2c7514 fix -Wsign-compare issues 2009-01-18 09:46:59 +00:00
lukem 9c1945664c Remove the \n and tabs from the __COPYRIGHT() strings.
Tweak to use a consistent format.
2008-07-21 13:36:57 +00:00
dogcow aec3ddbeb5 WARNS=4 makes gcc whine about missing initializers; add them. 2007-05-04 22:07:16 +00:00
christos a8bdc6a195 WARNS=4, pass lint 2007-05-04 16:19:43 +00:00
dyoung 595db2454b While I am here, KNF err(3) and errx(3) usage. Compare a pointer
with NULL instead of 0.
2006-08-13 00:20:25 +00:00
dyoung 4329d94fb4 Check for fwrite(3) error returns, and exit with an error message,
instead of silently failing.
2006-08-13 00:19:30 +00:00
christos 2a8477a7f9 Coverity CID 1860: Plug memory leak. 2006-05-25 00:07:59 +00:00
christos aa0a3ef501 Sprinkle static and use err/errx/warn instead of fprintf/perror 2006-05-25 00:05:45 +00:00
peter a9b411c198 Change all .Xr config 8 to .Xr config 1, following the recent move of
config from usr.sbin -> usr.bin.

Reviewed by wiz.
2005-06-20 13:25:23 +00:00
perry 1ef7bd2aae de-__P, ANSIfy function declarations, remove an obsolete register declaration. 2005-02-06 04:48:58 +00:00
wiz e914608b88 Put dot at end of sentence instead of in the middle; sort option descriptions. 2005-01-27 18:43:51 +00:00
drochner 9f230230dc There is no point in passing "/netbsd" as namelist to kvm_open.
libkvm knows better.
2005-01-27 18:12:47 +00:00
hira b1440f782d usage: Add -d. Use getprogname().
Reviewed by uebayasi@.  This closes PR bin/26685.
2004-11-17 13:32:16 +00:00
agc 326b2259b7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22366, verified by myself.
2003-08-07 11:25:11 +00:00
wiz 990562bfef .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
2003-02-25 10:34:36 +00:00
enami 69a28166e0 Fix .Nm usage. 2002-11-09 12:10:48 +00:00
wiz 3aebd5a62c Improve markup, sort sections. 2002-01-19 03:20:33 +00:00
lukem 279552d3db fix up various .Nm abuses:
- keep the case consistent between the actual name and what's referenced.
  e.g, if it's `foo', don't use '.Nm Foo' at the start of a sentence.
- remove unnecessary `.Nm foo' after the first occurrence (except for
  using `.Nm ""' if there's stuff following, or for the 2nd and so on
  occurrences in a SYNOPSIS
- use Sx, Ic, Li, Em, Sq, and Xr as appropriate
2000-11-07 06:43:24 +00:00
eeh 780f68fd71 Add a flag to turn on debugging so you don't need to recompile or patch
the binary to turn it on.
2000-08-03 21:14:19 +00:00
enami 511d11787c Use .Ar macro for the flag arguments. 2000-07-03 05:21:19 +00:00
garbled d1407362ba More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Many more to
come.
1999-03-22 18:43:46 +00:00
lukem 3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
enami a5372bf523 Add missing newline at the end of exit message. 1997-10-23 12:35:12 +00:00
enami 7ffe3c6167 Make this compile on NetBSD/alpha; to print size_t variable,
- use %lu instead of %d.
- cast the variable to (u_long) so that this also compiled on NetBSD/i386.
1997-10-23 12:26:02 +00:00
mrg d71f6e87ae clean up, WARNS. 1997-10-18 17:31:35 +00:00
lukem 149f1867d1 rcsid fascism 1997-10-18 04:36:50 +00:00
cgd 191b5f2e5b be safe with types 1994-12-23 16:45:33 +00:00
cgd d8806814a6 specify man pages the new way. 1994-12-22 11:32:57 +00:00
mycroft c250a07889 Fix up RCS ids. 1994-06-11 07:50:42 +00:00
pk 7bb1d93324 update to 4.4-lite. 1994-06-10 12:10:58 +00:00
cgd ee90943bd7 won't build right now... 1994-05-05 06:48:52 +00:00
cgd 7a6e889600 kill bad casts 1994-03-30 02:28:43 +00:00
mycroft e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00
mycroft c3e42d1c64 Add RCS indentifiers. 1993-08-01 07:22:47 +00:00
mycroft b465cf4697 Add RCS identifiers. 1993-07-30 22:11:51 +00:00
mycroft 77f1922b02 Fix up FILES sections. 1993-06-13 23:06:41 +00:00
mycroft e52e93dd80 Update file names. 1993-06-13 22:36:44 +00:00
mrg c78c6a22ab 4.4BSD-Lite2 1993-06-06 20:58:02 +00:00
cgd 36adb5cb3d added kgmon, from net-2. should work fine, because kernel does profiling
support correctly of config'd w/"-p"
1993-03-31 17:19:52 +00:00