History log of /src/bin/ps/ps.1
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base netbsd-10-1-RELEASE perseant-exfatfs-base-20240630 perseant-exfatfs-base netbsd-10-0-RELEASE netbsd-10-0-RC6 netbsd-10-0-RC5 netbsd-10-0-RC4 netbsd-10-0-RC3 netbsd-10-0-RC2 netbsd-10-0-RC1 netbsd-10-base
# 1.115 06-Nov-2021 msaitoh

s/maxiumum/maximum/


# 1.114 14-Sep-2021 christos

reflect reality on flags.


# 1.113 14-Sep-2021 christos

Provide symbolic printing of some keywords by capitalizing them.


Revision tags: cjep_sun2x-base1
# 1.112 04-Jun-2021 wiz

Sort options in synopsis.


# 1.111 04-Jun-2021 cjep

PR standards/11223

Add -G to take a single group argument heading towards POSIX.2 compliance.
Patch from jperkin and reviewed by simonb.


Revision tags: cjep_sun2x-base cjep_staticlib_x-base1 cjep_staticlib_x-base phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 phil-wifi-20191119
# 1.110 06-Aug-2019 kamil

branches: 1.110.6;
Restore maxrss, idrss, isrss, ixrss printing in ps(1)

The RSS related statistics are now back in the NetBSD kernel.

These values were disabled since day0 until today.

libkvm(3) users will still receive inappropriate values as RSS statistics
are updated upon sysctl(3) call.

Patch submitted by <Krzysztof Lasocki>


Revision tags: netbsd-9-base phil-wifi-20190609 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 phil-wifi-base pgoyette-compat-0625 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base
# 1.109 28-Aug-2017 wiz

branches: 1.109.4; 1.109.6;
Bump date for previous. Remove/replace bogus Tn uses.


# 1.108 28-Aug-2017 kamil

Remove the filesystem tracing feature

This is a legacy interface from 4.4BSD, and it was
introduced to overcome shortcomings of ptrace(2) at that time, which are
no longer relevant (performance). Today /proc/#/ctl offers a narrow
subset of ptrace(2) commands and is not applicable for modern
applications use beyond simplistic tracing scenarios.

This removal will simplify kernel internals. Users will still be able to
use all the other /proc files.

This change won't affect other procfs files neither Linux compat
features within mount_procfs(8). /proc/#/ctl isn't available on Linux.

Remove:
- /proc/#/ctl from mount_procfs(8)
- P_FSTRACE note from the documentation of ps(1)
- /proc/#/ctl and filesystem tracing documentation from mount_procfs(8)
- KAUTH_REQ_PROCESS_PROCFS_CTL documentation from kauth(9)
- source code file miscfs/procfs/procfs_ctl.c
- PFSctl and procfs_doctl() from sys/miscfs/procfs/procfs.h
- KAUTH_REQ_PROCESS_PROCFS_CTL from sys/sys/kauth.h
- PSL_FSTRACE (0x00010000) from sys/sys/proc.h
- P_FSTRACE (0x00010000) from sys/sys/sysctl.h

Reduce code complexity after removal of this functionality.

Update TODO.ptrace accordingly: remove two entries about /proc tracing.

Do not keep legacy notes as comments in the headers about removed
PSL_FSTRACE / P_FSTRACE, as this interface had little number of users
(close or equal to zero).

Proposed on tech-kern@.

All filesystem tracing utility users are encouraged to switch to ptrace(2).

Sponsored by <The NetBSD Foundation>


Revision tags: perseant-stdc-iso10646-base
# 1.107 03-Jul-2017 wiz

Remove workaround for ancient HTML generation code.


Revision tags: matt-nb8-mediatek-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107
# 1.106 02-Dec-2016 christos

branches: 1.106.6;
provide a tree like display with -d, from FreeBSD


Revision tags: pgoyette-localcount-20161104 localcount-20160914
# 1.105 10-Aug-2016 sevan

Earliest reference in the TUHS archive is v3
Unfortunately only the source code for the compiler is present for that
release. The v2 archive is missing the manuals & only contains a some of the
commands.
Switch to v3 and reference manual category eight, as per r1.32 of
src/bin/ps/ps.1 from OpenBSD.
Heads up from Ingo Schwarze.


# 1.104 10-Aug-2016 sevan

Document the version ps first appeared.


Revision tags: netbsd-7-2-RELEASE netbsd-7-1-2-RELEASE netbsd-7-1-1-RELEASE netbsd-7-1-RELEASE netbsd-7-1-RC2 netbsd-7-nhusb-base-20170116 netbsd-7-1-RC1 netbsd-7-0-2-RELEASE netbsd-7-nhusb-base pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.103 15-Jan-2014 wiz

branches: 1.103.8;
Bump date for previous.


# 1.102 15-Jan-2014 mlelstv

Add an LTIME column that prints lwp cputime.


Revision tags: riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base agc-symver-base yamt-pagecache-base8 yamt-pagecache-base7 yamt-pagecache-base6
# 1.101 03-Jun-2012 joerg

branches: 1.101.2;
Switch device database to cdb(5). Rework ttyname(3) and ttyname_r(3) to
depend on new devname_r(3) as heart. Add /dev/pts magic directly to
devname(3). While it can lead to returning non-existing paths, the
behavior is more consistent that way. Drop caching layer in devname(3),
it doesn't buy anything for the common case of having access to the
database. Teach devname(3) proper fallback behavior of scanning /dev.
Create both old-style and new-style database for now in /etc/rc.d/sysdb.


Revision tags: yamt-pagecache-base5 yamt-pagecache-base4
# 1.100 15-Apr-2012 wiz

Increase width of table column so it formats more nicely.


# 1.99 15-Apr-2012 wiz

- choose better argument name for `-U';
- add argument names for options in man page;
- improve wording, punctuation, capitalization.

From Bug Hunting in email.


# 1.98 15-Mar-2012 wiz

Remove trailing whitespace.


# 1.97 15-Mar-2012 christos

Fix obsolete example (that referred to letters in process state that are
not set anymore), and clarify their meaning.


# 1.96 23-Feb-2012 dholland

The 'lstart' column uses strftime %c, not %C. Noted by mrg.


Revision tags: netbsd-6-base
# 1.95 27-Jan-2012 dholland

branches: 1.95.2;
Minor English improvements for -w, partly from Snader_LB.


Revision tags: yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base
# 1.94 13-Feb-2011 dholland

branches: 1.94.4;
fix typo, from Randolf Richardson in PR 44559


Revision tags: matt-mips64-premerge-20101231
# 1.93 14-May-2010 joerg

branches: 1.93.2;
Don't break lines in .It, there be dragons in groff.


# 1.92 22-Mar-2010 joerg

Use .In instead of .Aq Pa for header files


Revision tags: matt-premerge-20091211
# 1.91 21-Oct-2009 wiz

Bump date for uarea swap-out removal.


# 1.90 21-Oct-2009 rmind

Remove uarea swap-out functionality:

- Addresses the issue described in PR/38828.
- Some simplification in threading and sleepq subsystems.
- Eliminates pmap_collect() and, as a side note, allows pmap optimisations.
- Eliminates XS_CTL_DATA_ONSTACK in scsipi code.
- Avoids few scans on LWP list and thus potentially long holds of proc_lock.
- Cuts ~1.5k lines of code. Reduces amd64 kernel size by ~4k.
- Removes __SWAP_BROKEN cases.

Tested on x86, mips, acorn32 (thanks <mpumford>) and partly tested on
acorn26 (thanks to <bjh21>).

Discussed on <tech-kern>, reviewed by <ad>.


# 1.89 03-Aug-2009 wiz

Bump date for previous.


# 1.88 03-Aug-2009 dsl

Remove reference to P_SYSTRACE.
Fixes PR/41426
(leave defn in sys/sysctl.h since the bit shouldn't be reused!)


Revision tags: jym-xensuspend-nbase jym-xensuspend-base
# 1.87 13-Mar-2009 joerg

Fix number of columns in .Bl. Escape %C.


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2
# 1.86 19-Oct-2008 wiz

branches: 1.86.4;
Improve wording.


# 1.85 19-Oct-2008 christos

Use 'O' for LSONPROC like solaris instead of bundling LSIDL, LSRUN, LSONPROC
to 'R'


# 1.84 26-Sep-2008 wiz

Sort options.
Remove systrace reference.


# 1.83 26-Sep-2008 apb

Add "ps -A" option. This displays information about all processes,
like BSD "ps -ax" or SYSV "ps -ef". It's specified in SUSv3.

Also make some minor clarifications to the man page.


Revision tags: wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase hpcarm-cleanup-base
# 1.82 10-Feb-2008 christos

Add a CPUID keyword; idea and some of the code from Anon Ymous


Revision tags: matt-armv6-base
# 1.81 31-Dec-2007 ad

Remove systrace. Ok core@.


Revision tags: cube-autoconf-base
# 1.80 09-Sep-2007 apb

Document "emul" keyword. Fixes PR 36935.
Also sort list of keywords, and bump date.


# 1.79 01-Sep-2007 yamt

add a keyword "lname", to print l_name.


Revision tags: matt-mips64-base
# 1.78 25-Jun-2007 yamt

branches: 1.78.4;
remove descriptions of some states. ('A', 'S', '>')
- they are wrong. (madvise is not vadvise)
- they don't exist anymore.


Revision tags: netbsd-4-0-1-RELEASE wrstuden-fixsa-newbase wrstuden-fixsa-base-1 netbsd-4-0-RELEASE netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 wrstuden-fixsa-base netbsd-4-base
# 1.77 09-Oct-2006 wiz

Remove trailing whitespace.
Remove a partially duplicated sentence.


# 1.76 07-Oct-2006 apb

Make it clear that multiple sort keys may be specified.
Closes PR 34271.


# 1.75 03-Oct-2006 wiz

Avoid .No if easily possible.


# 1.74 02-Oct-2006 apb

Add some markup missed in previous.


# 1.73 02-Oct-2006 apb

Document changes to -o and -O options, and improve markup.


Revision tags: abandoned-netbsd-4-base
# 1.72 11-Nov-2005 chs

add "uaddr" and improve text for "laddr".


Revision tags: netbsd-3-base
# 1.71 29-Dec-2004 skrll

branches: 1.71.2;
Add the missing suspended state 'U'.

Bump date.


# 1.70 23-Aug-2004 wiz

Bump date for laddr.


# 1.69 23-Aug-2004 nathanw

Add a "laddr" keyword, analagous to "paddr". Useful for finding
struct pcb's.


# 1.68 23-Apr-2004 simonb

s/the the/the/ (only in sources that aren't regularly imported from
elsewhere).


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 1.67 27-Mar-2004 simonb

Add support for the POSIX.2 "args" and "comm" keywords. "args" is just
an alias for "command", and "comm" shows just argv[0] and not the whole
argument list.

Fix for part of PR standards/11224.


# 1.66 27-Mar-2004 simonb

Add support for the POSIX.2 "etime" keyword - shows the elapsed time
since the process was started. Fix a couple of style nits as well.

Fix for part of PR standards/11224.


# 1.65 13-Feb-2004 wiz

Uppercase CPU where appropriate.


# 1.64 16-Oct-2003 wiz

Add Xr for dev_mkdb(8), per PR 23168. Increase width in FILES section while here.


# 1.63 07-Aug-2003 agc

Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22249, verified by myself.


# 1.62 16-Apr-2003 wiz

More mdoc.


# 1.61 17-Mar-2003 wiz

Update date for recent changes.


# 1.60 06-Mar-2003 dsl

- add keywords for utime, stime and ctime (output sss.ssssss if small)
- fiddle with keyword table - mainly to keep width under 80 cols
- add -k keylist so sort output
- don't use logs to work out field width, get -MAXINT right
- user defined headers can be 1 char (actually they can be zero length)
so ?? in tty column isn't guaranteed to be wider than header
- remove some long long casts (compiles on sparc64 still)
- use kvm_openfiles(NULL, NULL, NULL, KVN_NO_FILES, ..) unless core file
specified,
(approved by christos)


# 1.59 01-Mar-2003 atatat

Add p_svuid and p_svgid to kinfo_proc2. Populate them in the kernel
and in libkvm. Then teach ps how to show them to you.

Also, teach ps how to show the names for all the uids, the rest of the
group numbers, and the "group access list".


# 1.58 25-Feb-2003 wiz

.Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.


# 1.57 18-Jan-2003 thorpej

Merge the nathanw_sa branch.


Revision tags: nathanw_sa_before_merge fvdl_fs64_base nathanw_sa_base
# 1.56 01-Oct-2002 wiz

Use more mdoc.


# 1.55 25-Sep-2002 wiz

New policy: New sentences start on a new line.
Patches by Robert Elz <kre at munnari oz au>, with minimal changes by me.


# 1.54 19-Jun-2002 jdolecek

g/c procfs fallback code, it's redundant now that we use sysctl to get
process info


# 1.53 17-Jun-2002 wiz

Sort SEE ALSO.


# 1.52 17-Jun-2002 christos

Document some missing flags and add systrace(1) 'x' flag.


Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 1.51 24-Apr-2002 wiz

"a, b, c, and d", not "a, b, c and d".


# 1.50 04-Mar-2002 wiz

branches: 1.50.2;
Drop trailing space.


# 1.49 04-Mar-2002 ad

Xref pkill/pgrep.


# 1.48 08-Feb-2002 ross

Generate <>& symbolically. I'm avoiding .../dist/... directories for now.


# 1.47 20-Dec-2001 wiz

Properly quote punctuation.


# 1.46 20-Dec-2001 wiz

Whitespace nits.


# 1.45 20-Aug-2001 wiz

precede, not preceed.


# 1.44 07-Aug-2001 christos

Print system processes/kernel threads as [kprocname] as top(1) does.


# 1.43 04-Jul-2001 sommerfeld

correct the description of paddr


# 1.42 15-Jan-2001 christos

clarify things a bit more (from hubertf)


# 1.41 15-Jan-2001 christos

Really explain what parenthesized names mean and why we parenthesize names!


# 1.40 15-Jan-2001 hubertf

Document the meaning of commands shown in parantheses.

Patches submitted by Jeremy C. Reed <reed@reedmedia.net> in PR 11930.


# 1.39 23-Oct-2000 simonb

Add a K flag to the state information - K is for kernel thread or system
process (ie, P_SYSTEM set in p_flag). The L flag (locked in core) is
only used for non-P_SYSTEM processes.


# 1.38 28-Aug-2000 nathanw

Update description of process flag 0x20000 to match reality:
P_NOCLDWAIT, not P_SSTEP.


# 1.37 24-Jun-2000 simonb

Remove the 'poip' (pageouts in progress) keyword from the manpage.
From PR bin/8843 by Brian Stark.


Revision tags: netbsd-1-5-base minoura-xpg4dl-base
# 1.36 15-Apr-2000 simonb

branches: 1.36.4;
Use tty "?" to select processes with no controlling tty and tty "-" to
select processes with a revoked controlling tty.

Idea from SunOS/Solaris, suggested by Alexis Rosen.


# 1.35 10-Apr-2000 chs

make -M imply -K. the current system is not likely to be
a reasonable approximation of a crash dump.


# 1.34 22-Feb-2000 dbj

name database is kvm.db not kvm_netbsd.db


Revision tags: wrstuden-devbsize-19991221 wrstuden-devbsize-base
# 1.33 04-Dec-1999 hubertf

Document -U switch (displays processes belonging to given user/uid).
Reported in PR 8943 by WL <wliao@dura.spc.uchicago.edu>


# 1.32 03-Dec-1999 simonb

"ps -e" only shows the environment for the processes owned by the
current user id or all process if run by root.

Fixes PR security/5967 from Todd Vierling.


Revision tags: netbsd-1-4-PATCH003 netbsd-1-4-PATCH002 comdex-fall-1999-base netbsd-1-4-PATCH001 netbsd-1-4-RELEASE netbsd-1-4-base
# 1.31 27-Mar-1999 bgrayson

branches: 1.31.6;
Minor fixes:
1. Use statfs() to verify that /proc is a procfs.
2. Add -K option to disable /proc-based method.
3. Make warnings less verbose, but still accurate.


# 1.30 26-Mar-1999 bgrayson

Added experimental fallback /proc-based lookup. Warnings are printed when the
fallback method is used, as the results could be untrustworthy if an
intruder is present. It is highly likely that NetBSD-1.5 will have
an improved kvm interface for reading process information, at which
point this code can be garbage-collected. Also added a word to the
man page -x option description while I was here.


# 1.29 22-Mar-1999 garbled

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.


# 1.28 17-Mar-1999 msaitoh

ps's information is sorted by controlling terminal and (among processes with
the same controlling terminal) by PID.


# 1.27 07-Mar-1999 mycroft

Clean up SYNOPSIS formatting.


# 1.26 07-Mar-1999 mycroft

Fix formatting errors.


# 1.25 02-Jan-1999 tron

The system namelist database is called "/var/db/kvm.db" not
"/var/db/kvm_netbsd.db". Fixes PR bin/6712 by Brian Grayson.


# 1.24 28-Apr-1998 fair

change references to vadvise to madvise; remove reference to lisp(1)


# 1.23 24-Mar-1998 bouyer

Sync with reality: the uprocp keyword doesn't exist.


# 1.22 06-Feb-1998 mrg

remove old OLD BSD VM code.


Revision tags: netbsd-1-3-PATCH001 netbsd-1-3-RELEASE netbsd-1-3-BETA netbsd-1-3-base
# 1.21 11-Oct-1997 enami

branches: 1.21.2;
Use .Nm "" instead of .Nm ps in SYNOPSIS.


# 1.20 10-Oct-1997 lukem

all but the first .Nm in SYNOPSIS need to be spelt out. [bin/4256]


# 1.19 14-Sep-1997 lukem

getopt returns -1 not EOF
cleanup manpage


# 1.18 27-Aug-1997 mikel

default swap device is /dev/drum, not nonexistent /dev/swap; from
<entropy@tardis.bernstein.com> in PR bin/4042


# 1.17 23-Jun-1997 pk

Refer to execve(2), add section to `vfork' ref. (almost per PR#3627).


Revision tags: netbsd-1-2-PATCH001 netbsd-1-2-RELEASE netbsd-1-2-BETA netbsd-1-2-base
# 1.16 21-Mar-1996 jtc

fix damage caused by sccs (long ago)


Revision tags: netbsd-1-1-PATCH001 netbsd-1-1-RELEASE netbsd-1-1-base
# 1.15 08-May-1995 cgd

add a 'holdcnt' keyword and document it.


# 1.14 07-May-1995 pk

Sync process flags with sys/proc.h


# 1.13 21-Mar-1995 cgd

convert to new RCS id conventions.


# 1.12 16-Sep-1994 mycroft

Integrate `-c' option, from Arne Juul.


# 1.11 06-Aug-1994 jtc

vmunix -> netbsd (PR #375)


Revision tags: netbsd-1-0-base
# 1.10 09-May-1994 cgd

branches: 1.10.2;
clean up import


# 1.9 11-Jan-1994 jtc

Fix spelling errors.


# 1.8 07-Oct-1993 cgd

fix from Thomas Eberhardt <thomas@mathematik.uni-Bremen.de>:
don't try to display the resident text size; we can't do that anymore


# 1.7 01-Aug-1993 mycroft

Add RCS indentifiers.


Revision tags: netbsd-0-9-RELEASE netbsd-0-9-BETA netbsd-0-9-ALPHA2 netbsd-0-9-ALPHA netbsd-0-9-base
# 1.6 13-Jun-1993 mycroft

Fix up FILES sections.


# 1.5 13-Jun-1993 mycroft

Update file names.


# 1.4 01-Jun-1993 cgd

add support and documentation for the 'e' option, to print out
the process environment.


Revision tags: netbsd-0-8 netbsd-alpha-1
# 1.3 23-Mar-1993 cgd

changed "Id" to "Header" for rcsids


# 1.2 22-Mar-1993 cgd

added rcs ids to all files


# 1.1 21-Mar-1993 cgd

branches: 1.1.1;
Initial revision