summaryrefslogtreecommitdiffstats
path: root/bin/ps/print.c
Commit message (Collapse)AuthorAgeFilesLines
* ps: Fix memory leak when showing start/lstart for swapped-out process.jilles2012-07-151-4/+6
| | | | Spotted by: scan-build (uqs)
* Remove unused variables.ed2012-01-171-96/+30
| | | | | Simply annotate the function parameters with __unused, instead of adding the ve-variables. This makes the code build with GCC 4.7 and -Werror.
* For processes with no controlling terminal, display "-" in the TTY columntrasz2011-10-301-3/+3
| | | | | | instead of "?". Submitted by: arundel
* Make ps(1) automatically size its column widths.trasz2011-09-291-354/+231
|
* Get rid of major/minor number distinction.ed2011-09-281-6/+2
| | | | | | | | | | | | | | | | | | | | | | As of FreeBSD 6, devices can only be opened through devfs. These device nodes don't have major and minor numbers anymore. The st_rdev field in struct stat is simply based a copy of st_ino. Simply display device numbers as hexadecimal, using "%#jx". This is allowed by POSIX, since it explicitly states things like the following (example taken from ls(1)): "If the file is a character special or block special file, the size of the file may be replaced with implementation-defined information associated with the device in question." This makes the output of these commands more compact. For example, ls(1) now uses approximately four columns less. While there, simplify the column length calculation from ls(1) by calling snprintf() with a NULL buffer. Don't be afraid; if needed one can still obtain individual major/minor numbers using stat(1).
* Rename ki_ocomm to ki_tdname and OCOMMLEN to TDNAMLEN.bz2011-07-181-7/+7
| | | | | | | | | Provide backward compatibility defines under BURN_BRIDGES. Suggested by: jhb Reviewed by: emaste Sponsored by: Sandvine Incorporated Approved by: re (kib)
* Add "gid" and "group" keywords to display the effective group IDtrasz2011-06-141-0/+16
| | | | | | | and effective group name. Also, add "egid", "egroup" and "euid" aliases. PR: bin/146331 Submitted by: Jeremie Le Hen <jeremie at le-hen dot org>
* Add proper width calculation for time fields (time, cputime and usertime).trasz2011-03-241-1/+43
| | | | This fixes the ugly overflow in "ps aux" output for "[idle]".
* Make "LOGIN" and "CLASS" columns width scale properly instead of wasting space.trasz2011-03-241-1/+28
|
* Implement the usertime and systime keywords for ps, printing thekib2011-03-171-18/+51
| | | | | | | corresponding times reported by getrusage(). Submitted by: Dan Nelson <dnelson allantgroup com> MFC after: 1 week
* Export login class information via kinfo and make it possible to viewtrasz2011-03-051-0/+20
| | | | it using "ps -o class".
* Move repeated MAXSLP definition from machine/vmparam.h to sys/vmmeter.h.kib2011-01-091-0/+1
| | | | | | | Update the outdated comments describing MAXSLP and the process selection algorithm for swap out. Comments wording and reviewed by: alc
* o) Add a keyword to displaying elapsed time in integer seconds, "etimes".jmallett2010-03-171-0/+16
| | | | | | o) Give slightly better (i.e. any) documentation of the format of "etime". Reviewed by: jilles
* Fix elapsed (etime) field for swapped out processes in ps:jilles2009-05-241-0/+4
| | | | | | | | | show '-' instead of time since the Epoch. PR: bin/123069 Submitted by: Vladimir Kozbin Approved by: ed (mentor) MFC after: 3 weeks
* Add a -d option to ps to display descendant info with the output.brian2009-05-171-10/+23
| | | | | | This is similar to linux's -H (or -f) switch. MFC after: 3 weeks
* [1] When showing threads, the thread name just appears if the commattilio2009-02-261-2/+24
| | | | | | | | | | | | | | | | | | | label is choosen as last printout (ucomm suffers of this such bug too). That bug is caused by the fact that the fixed size of printout doesn't leave enough space for them to be printed out. Implement ucomm and comm commands with a dynamic size lenght for buffers. [2] On AMD64 architecture pointers don't have enough chars space to be shown (8 chars while they need 16). Fix them by providing a variadic space so that it fits well on both 64 and 32 bits architectures. [3] Check a return value of malloc() that wasn't checked before. PR: bin/128841, bin/128842 Reviewed by: jhb, emaste Sponsored by: Sandvine Incorporated
* Fix whitespace.emaste2008-11-131-3/+2
|
* Introduce a way to make pure kernal threads.julian2007-10-261-4/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | kthread_add() takes the same parameters as the old kthread_create() plus a pointer to a process structure, and adds a kernel thread to that process. kproc_kthread_add() takes the parameters for kthread_add, plus a process name and a pointer to a pointer to a process instead of just a pointer, and if the proc * is NULL, it creates the process to the specifications required, before adding the thread to it. All other old kthread_xxx() calls return, but act on (struct thread *) instead of (struct proc *). One reason to change the name is so that any old kernel modules that are lying around and expect kthread_create() to make a process will not just accidentally link. fix top to show kernel threads by their thread name in -SH mode add a tdnam formatting option to ps to show thread names. make all idle threads actual kthreads and put them into their own idled process. make all interrupt threads kthreads and put them in an interd process (mainly for aesthetic and accounting reasons) rename proc 0 to be 'kernel' and it's swapper thread is now 'swapper' man page fixes to follow.
* - Move all of the PS_ flags into either p_flag or td_flags.jeff2007-09-171-5/+4
| | | | | | | | | | | | | | - p_sflag was mostly protected by PROC_LOCK rather than the PROC_SLOCK or previously the sched_lock. These bugs have existed for some time. - Allow swapout to try each thread in a process individually and then swapin the whole process if any of these fail. This allows us to move most scheduler related swap flags into td_flags. - Keep ki_sflag for backwards compat but change all in source tools to use the new and more correct location of P_INMEM. Reported by: pho Reviewed by: attilio, kib Approved by: re (kensmith)
* For pts, print the pts number, instead of the full name. As it was, we endedcognet2006-02-211-0/+2
| | | | | | up always printing "pts". Submitted by: Michal Mertl <mime at traveller dot cz>
* Use warn() instead of perror().tjr2004-07-201-2/+2
|
* Change the "rtprio" format so it prints an informative string forgad2004-06-271-0/+3
| | | | | | the PRI_ITHD case (instead of just printing the digit '1'). Submitted by: Cyrille Lefevre
* Change "struct varent" to use the standard queue(8) macros, instead ofgad2004-06-231-14/+12
| | | | | | using it's own version of the same basic algorithm. Submitted by: part by Cyrille Lefevre, part of it done by me
* Avoid padding the value of "ucomm" when it is the last column in the line.gad2004-06-231-1/+4
| | | | Submitted by: Cyrille Lefevre
* Make sure the value of "upr" (scheduling priority on return from system call)gad2004-06-231-1/+13
| | | | | | is scaled in the same way that "pri" (scheduling priority) is scaled. Submitted by: Cyrille Lefevre
* Have `ps' return the cputimes for zombies, with the assumption thatgad2004-06-211-1/+1
| | | | | | | kvm_getprocs() will provide useful information if it can, or *it* will provide a zero value if it can not find something appropriate. Submitted by: bde
* Add the `-O emul' format option, which prints the name of the system-callgad2004-06-201-0/+9
| | | | | | | | emulation environment the process is in. "emul" as a keyword is picked up from OpenBSD. PR: bin/65803 Submitted by: Cyrille Lefevre
* From SUSv3:gad2004-06-201-1/+1
| | | | | | | | | | | Any [standard output] field need not be meaningful in all implementations. In such a case a hyphen ('-') should be output in place of the field value So have the `-O label' option print out the string " -" if the process has no label. Approved by: Silence from rwatson and green (when asked in March...)
* Remove clause 3 from the UCB licenses.markm2004-04-061-4/+0
| | | | OK'ed by: imp, core
* Fix `-o rtprio' so it prints the correct value.gad2004-03-281-2/+2
| | | | | | PR: bin/59417 Submitted by: Jan Willem Knopper This fix by: bde (in the audit-trail of the PR)
* Implement the nwchan keyword that has been in the man page, but washarti2003-08-131-0/+13
| | | | | not implemented. This is just handy if you want to ddb the address some process is waiting on.
* Revert the zombie part of previous commitcharnier2003-04-151-1/+1
|
* Correct style bugs. Don't skip zombies in cputime(), according to Bruce,charnier2003-04-141-58/+42
| | | | | | zombie CPU times are valid. Adjust array size in strftime(3). Submitted by: Bruce
* Display residency and sleep times (re and sl fields) larger than 127 as 127.tjr2003-04-121-1/+3
| | | | | | | This is what the manual page says ps should do, and what OpenBSD and NetBSD do. Based on a patch from Ken Stailey. PR: 27433, 46232
* Display elapsed time (-o etime) using [[dd-]hh:]mm:ss, which according tocharnier2003-02-051-3/+20
| | | | | | Solaris man page is the POSIX way. Reviewed by: jmallett
* Per-variable\ entry headers, to allow the 'ps -otime -otime=FOO' or similarjmallett2003-01-191-4/+4
| | | | | case to do the right thing and affect exactly one column. This is consistent with GNU ps(1) in BSD mode, and POLA.
* Refer to the process label as proclabel, as there is a function called label,jmallett2003-01-181-10/+10
| | | | and that's what these locals were called before.
* Do not print a header line if it would be empty; required by 1003.1-2001.tjr2002-10-311-0/+9
|
* Use the MAC interface to list process MAC labels rather than usingrwatson2002-10-241-3/+46
| | | | | | | | | | the LOMAC-specific interface (which is being deprecated). The revised LOMAC using the MAC framework will export levels listable using this mechanism. Approved by: re Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* Catch up to SMTX -> SLOCK changes.jhb2002-10-021-9/+9
|
* Rename new PLONG type to PGTOK as the conversion is more important than thejmallett2002-09-171-1/+1
| | | | | | size (which is mostly undefined anyway). Submitted by: bde
* Conglomerate printing of ps_pgtok'd data into a PLONG type. I couldn't thinkjmallett2002-09-171-18/+3
| | | | | of a better name, except PINT, but I decided to go with assuming LONG to be safe, rather than assuming INT.
* Perform keyword.c:1.27 properly, implement -orss in the New World Order ofjmallett2002-09-161-0/+10
| | | | | | | | ps(1) formatting, using pgtok() to get the value in K, rather than printing it in pages. This is consistent with behaviour before keyword.c:1.26 (et al) which exists in STABLE today, and which uses the same metric as VSZ. Submitted by: bde
* Do not risk using the kernel pgtok() which assumes the page size ispeter2002-09-131-6/+2
| | | | constant.
* Fixed a printf format error that was fatal on alphas. Adding WFORMAT=0bde2002-07-111-2/+1
| | | | | | | | to the Makefile didn't affect this bug because WFORMAT only controls higher- level format checking (not the -Wformat that is implicit in -Wall). Fixed a nearby printf format error that was benign and 3 nearby style bugs.
* Make printval() take a 'void *' thus negating any assumptions the compilerjmallett2002-07-071-2/+2
| | | | may try to make about the alignment of the dereferenced datum.
* Consistently use FBSDIDobrien2002-06-301-4/+2
|
* Cast to long to match format. Hidden by revision 1.18 of Makefile.jmallett2002-06-071-1/+2
|
* Use a global `now' variable for the current time, and initialise it atjmallett2002-06-061-6/+0
| | | | startup, right after calling setlocale(3).
* Implement a SUSv3-ignorant but "time"-similar format for "etime", elapsedjmallett2002-06-061-0/+17
| | | | | run time (NOT cpu time). cputime() and elapsed() both need to honour SUSv3 now.
OpenPOWER on IntegriCloud