Commit Graph

673 Commits

Author SHA1 Message Date
Jim Warner
0ebe397345 redhat analysis: proc/slab 2011-10-15 08:26:27 +02:00
Jim Warner
b49055e657 redhat analysis: proc/sysinfo 2011-10-15 08:26:27 +02:00
Jim Warner
4820619f15 redhat analysis: proc/readproc 2011-10-15 08:26:27 +02:00
Jim Warner
f9ae59f5df libtool accommodation: kill, skill, snice 2011-10-11 09:57:01 +02:00
Sami Kerola
ab27c0050c build-sys: add BUGS, FAQ and README.top to distribution
After `make install' I expect to see some files in
<prefix>/share/doc/procps-ng directory, this commit adds few most
obvious ones to there.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-10-11 09:56:56 +02:00
Craig Small
13ce6ebdf0 Use 7 cpu numbers not 4 for Hertz Hack
For the small number of devices that we cannot get Hertz out of ELF
notes but the cpu numbers make sense (ie not kFreeBSD) there is a hack
by using the CPU numbers. The problem is there was 4 numbers, now there
are 7. This fixes the hack by adding all 7 to get a more correct number.

This is from Debian patch sysinfo_7_numbers
Bug-Debian: http://bugs.debian.org/460331
2011-10-07 14:35:16 +11:00
Craig Small
a5750100a0 Fix Hertz calculation for FreeBSD
FreeBSD has no good way of finding the Hertz value. ELF notes don't
work, you can't find it in a function and even asm/params.h does
not have it.  Lucky for us, it is always 100.

Based upon Debian patch patch sysinfo_kfreebsd_hertz by Petr Salinger
Bug-Debian: http://bugs.debian.org/460331
Caution, 460331 has lots of overlapping bugs all around the Hertz
problem across many arches.
2011-10-07 10:22:24 +11:00
Craig Small
aae3d318d4 Elf note AT_CLKTCK is only found on Linux
Suppresses a message about elf notes not found on non-Linux systems.
kFreeBSD systems, for one, don't have this so the message appears
every time you run a procps program otherwise.

Based upon Debian patch sysinfo_elfnote by Petr Salinger
Bug-Debian: http://bugs.debian.org/378157
2011-10-07 10:08:42 +11:00
jimmy jam
d73bd233ca adapt redhat FAQ for procps-ng 2011-10-06 21:46:34 +02:00
jimmy jam
ee2e674182 add the customary redhat FAQ 2011-10-06 21:46:34 +02:00
Sami Kerola
6d42a58200 build-sys: add --enable-w-from build option
Some distributions apparently want to have w command to print FROM
field by default.

Reported-by: Jaromir Capik <jcapik@redhat.com>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-10-06 21:46:33 +02:00
Sami Kerola
c8b820d04f build-sys: add --disable-kill build option
The kill from procps-ng is not always wanted. For example RedHat
seems to prefer kill from util-linux package.

Reported-by: Jaromir Capik <jcapik@redhat.com>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-10-06 21:46:33 +02:00
Craig Small
b9a408372e Merge branch 'master', remote-tracking branch 'sami/ng' 2011-10-01 23:23:30 +10:00
Sami Kerola
367fd902da build-sys: add ./configure --enable-oomem option
Add out-of-memory fields to the library and top.

Refrences:
http://www.freelists.org/post/procps/PATCH-12-Add-missed-oom-support-to-libproc
http://www.freelists.org/post/procps/PATCH-22-Initialize-smp-num-cpus-only-if-really-required

Signed-off-by: Jim Warner <james.warner@comcast.net>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-09-29 20:28:31 +02:00
Sami Kerola
1b687fbaef build-sys: sensible errors when autogen.sh requirements are is missing
<quote="Jim">
I tested the build on several "new" linux installs that didn't yet have any
development tools beyond gcc. On those systems the following error messages
were received:

  ./autogen.sh: line 46: libtoolize: command not found
  ./autogen.sh: line 47: test: =: unary operator expected
</quote>

This commit also removes few unnecessary empty lines, and makes all shell
variables to be wrote in caps & quoted properly.

Cc: Jim Warner <james.warner@comcast.net>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-09-28 21:21:16 +02:00
Craig Small
f7fb8bddf4 miscellaneous top and library cleanup
top changes
 . refined column header width calculations
 . added error messages for:
     invalid signal ('k')
     invalad max tasks ('n')
 . corrected narrative for summary_show

library changes
 . corrected some comments (only)
2011-09-25 00:27:37 +10:00
Jim Warner
b7638e7ae9 build-sys: rename libproc to libprog-ng
The library file version string is taken from configure.ac AC_INIT.

Reference: http://www.freelists.org/archive/procps/09-2011

Signed-off-by: Jim Warner <james.warner@comcast.net>
Signed-off-by: Craig Small <csmall-procps@enc.com.au>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-09-23 22:07:15 +02:00
Jim Warner
bf4c442699 build-sys: check strverscmp
This function is a GNU extension.

Signed-off-by: Jim Warner <james.warner@comcast.net>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-09-23 05:57:02 +02:00
Jim Warner
655a4b88d1 build-sys: use AC_HEADER_STDBOOL in configure.ac
The AC_CHECK_HEADER_STDBOOL, which was used earlier, requires
autoconf 2.68 (2010-09-22), without great functional benefit in
comparison AC_HEADER_STDBOOL.  The only thing newer macro does is
a problem for many user who has older autoconf in use.

Reference: http://lists.gnu.org/archive/html/autoconf-commit/2011-02/msg00000.html

Signed-off-by: Jim Warner <james.warner@comcast.net>
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-09-23 05:57:02 +02:00
Craig Small
e4c45d6984 added ps etimes, miscellaneous top enhancements
ps program
 . etimes added for ELAPSED expressed in seconds
 . time_t used in place of former unsigned long

top program
 . corrected scroll message bug when 'x' toggle on
 . fixed forest view potential missing libflags bug
 . improved 'k' default signal invocation logic
 . enhanced logic for %CPU maximums displayed
 . made signal handling more robust and efficient
2011-09-12 22:18:23 +10:00
Craig Small
73ade5e2cb top now has a forest view mode 2011-08-30 22:05:45 +10:00
Craig Small
0e6ac0db3e added tgid support plus miscellaneous cleanup
ps
   . added tgid support
   . made process/task naming consistent
 top
   . added tgid support
   . standardized pid related width logic
 documents
   . added tgid to ps & top man documents
 library
   . fixed OOMEM_ENABLE readtask bug
   . corrected header typo for tgid
2011-08-17 21:01:35 +10:00
Craig Small
bb4f08ba29 refined library i/f and improved performance
Library changes
   readproc
    . added readeither to more efficiently
      fill both process and thread proc_t
    . added readproctab3, uses readeither
    . included task path support in:
        fill_cgroup_cvt, fill_cmdline_cvt,
        read_unvectored
    . QUICK_THREADS #define allows copying
      process info vs. repeatedly reading
    . simple_nexttid no longer values ppid
    . path var made non-static in readtask
    . documented 'proc_data_t' in .h file
    . tweaked some c comments & formatting
   library.map
    . added new readeither, readproctab3
 Program changes
   ps
    . exploits readproctab3 where possible
    . improved args/comm compliance
   top
    . exploits readeither
2011-08-11 07:42:14 +10:00
Craig Small
3ef4823f90 supgid/supgrp support, improved library interface
Library changes
   readproc
    . added support for supplementary groups
    . eliminated 2 potential mem leak sources
       . shortcut used for multi-threaded str
         vectors & ptrs was obsoleted
       . freeing of proc_t related dynamic
         memory now rests with the library
    . standardized/normalized many c comments
   sysinfo
    . corrected note regarding glibc & cpuinfo
   library.map
    . made the visible freeproc accessable
 Program changes
   pmap
    . initialized buffer for new readproc i/f
    . eliminated now obsolete free() call
   ps
    . added width aware supgrp support
    . initialized buffers for new readproc i/f
    . eliminated now obsolete free() calls
   top
    . added supgrp support as variable width
    . eliminated now obsolete free() calls
    . expoilted library freeproc function
    . corrected -h|v args text & spacing
    . updated some c comments
 Documentation changes
   ps.1
    . added supgid and supgrp
   top.1
    . added supgid and supgrp
    . addition of above required renumbering
      many fields in section 3a. DESCRIPTIONS
2011-08-01 21:28:46 +10:00
Craig Small
3f59ff5a16 Revert -n flag for w 2011-07-15 08:52:45 +10:00
Craig Small
a26c3bfa39 top hotplug memory support
Another patch from Jim for top to support hot-pluggable memory. Not
fully tested on real hot-pluggable memory because neither of us have
it
2011-07-14 21:16:02 +10:00
Jim Warner
29b8775c39 miscellaneous top program/man document cleanup
Program changes
  . corrected eolcap handling if EQUCOLHDRYES defined
  . added missing terminator for OOMEM_ENABLE comment
  . tightened logic in display_fields
  . eliminated some warnings via type or cast
  . updated miscellaneous source comments
 Man Document changes
  . corrected/expanded CGROUPS narrative
  . standardized/normalized PPID narrative

Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-06-23 15:45:09 +02:00
Jim Warner
16f8bc685f miscellaneous library documentation changes
Library changes
  . standardized comments in proc_t statm/status memory definitions

Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-06-23 15:39:32 +02:00
Jaromír Cápík
f2e4b9f601 Kernel 3.0 version format support 2011-06-20 17:54:06 +02:00
Sami Kerola
a425a65d46 build-sys: add contrib directory
Move files that are not compiled to <build-root>/contrib
directory. The files consist two unmaintained commands,
alternative ps & w, and and broken utmp examination / printing
utility. The dummy.c became unnecessary at the point when
autotools where re-introduced.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-05 12:44:35 +02:00
Sami Kerola
71d10d3a49 name change: procps -> procps-ng
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 20:50:12 +02:00
Sami Kerola
17affc6637 watch.c: fix version printing
Print same style version string as other procps utilities. Also
the number makes now more sense, when it's coming from autotools
config.h

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 17:22:44 +02:00
Sami Kerola
72da1d663a sysctl.c: crash due missing include
Missinc include made help printing to crash.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 17:22:44 +02:00
Sami Kerola
33fb22b169 proc/sysinfo.c: autotools caused a regression
For some reason necessary variable was commented out at June
2003, see commit bellow for details.

commit 5c99a21b72

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 17:22:44 +02:00
Sami Kerola
68c73c864c proc/version.c: use autotools version
The old version output does not work, or make sense, after
autotools are in use again.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 17:22:44 +02:00
Sami Kerola
06d491f9e4 build-sys: take autotools in use again
This will revert change at Oct 2002 when autotools support was
removed.

Unlike before the package developers are expected to use
./autogen.sh to generate ./configure script, and run make after
that. The build system is also able to create, with make dist, a
tar ball release which compiles correctly, and has files which
seemed to be important to have.

The patch removes few unnecessary files, but no everything. Files
procps.lsm and procps.spec in git repository are useless as is,
but I left them lying around for someone who can make more
justified call about removal of them.

Last, but not least package version number is set 3.3.0 to
distinct this procps from the sourceforge's upstream procps.
Please notice that libproc relese is kept as 3.2.8.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-06-04 17:22:44 +02:00
Jan Görig
f43de0df19 Added 'vm_swap' variable nullifying.
Thanks to KOSAKI Motohiro.

Bug-Redhat: https://bugzilla.redhat.com/show_bug.cgi?id=532668
2011-06-02 12:22:31 +02:00
Jan Görig
034612c480 Fixed per-process swap information in top and related cleanup.
Thanks to KOSAKI Motohiro and Jim.

Bug-Redhat: https://bugzilla.redhat.com/show_bug.cgi?id=532668
2011-06-02 12:15:14 +02:00
Jim Warner
91edf89810 remove trailing spaces in top batch mode
Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-06-01 13:58:06 +02:00
Jim Warner
c2dcbef482 added output width/height override support to top, + misc
This source patch addresses the following:
 Enhancements
  . added -w command line switch, with optional argument
   ( offers complete control over width and height, in  )
   ( combination with env variables COLUMNS= and LINES= )
  . updated man document to reflect the new capability
  . reengineered Fields Management to be more flexible
    thus no longer requiring a normal sized tty
 Buglets fixed
  . forced View_SCROLL off when in 'Batch' mode
  . for narrow xterm, fixed return val in show_pmt
  . for narrow xterm, fixed cursor pos in linein
  . added a window specific end-of-line termcap ptr
   ( so clr_eol does not overwrite last printable char )
 Cosmetic changes
  . eliminated TTYGETENVYES define, incorporated as -w
  . eliminated RESIZE_LIMIT define, no longer needed
  . eliminated FIELD_CURSOR define, no longer possible
  . eliminated extra text on Fields Management screen
  . fixed miscellaneous man document typos/formatting

Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-05-26 11:33:32 +02:00
Jan Görig
c3b7310149 Merge branch 'newtop' 2011-05-25 11:05:04 +02:00
Jim Warner
7b0fc19e9d enhanced libproc cgroup/cmdline support, exploited by top
Library Changes
. added PROC_EDITCMDLCVT flag
. added an internal (static) fill_cmdline_cvt function:
  - reads and "escapes" /proc/#/cmdline
  - returns result as a single string in a single vector
  - callers are guaranteed a cmdline (no more NULL)
. added vectorize_this_str function, exploited by
  fill_cgroup_cvt, fill_cmdline_cvt
. generalized read_cmdline function as read_unvectored, now
  exploited by fill_cgroup_cvt, fill_cmdline_cvt, read_cmdline
  ( cgroup and cmdline no longer need be converted to string )
  ( vectors before being transformed to final representation )
. fixed bug regarding skipped group numbers (when enabled)
. escape_str made responsible for all single byte translation
  with distinction between control chars + other unprintable
. added escaped_copy function for already escaped strings
. reorganized parts of proc_t to restore formatting standards
  ( displacement changes shouldn't matter with new version # )
. former ZAP_SUSEONLY #define now OOMEM_ENABLE
. added to library.map: escaped_copy; read_cmdline

Top Program Changes
. exploited the new PROC_EDITCMDLCVT provision
. eliminated now obsolete #include "proc/escape.h"
. changed the P_WCH display format if no kernel symbol table
. fixed very old bug in lflgs for out-of-view sort fields
. former ZAP_SUSEONLY #define now OOMEM_ENABLE

Ps Program Changes
. exploited the new PROC_EDITCMDLCVT provision
. exploited the new escaped_copy function
. consolidated pr_args and pr_comm into pr_argcom

Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-05-18 10:33:44 +02:00
Jan Görig
8621387c77 Updated ps to use new cgroup interface 2011-05-05 12:20:30 +02:00
Jim Warner
57031319d6 cgroup support migrated to libproc, plus miscellaneous re-formatting
This source patchset addresses the following:
Library Extension (readproc)
 . added PROC_EDITCGRPCVT flag
 . added an internal (static) fill_cgroup_cvt function:
   . reads AND parses /proc/#/cgroup
   . returns result as a single string in a single vector
   . thus no changes to proc_t structure or free memory logic
Program Enhancements (top)
 . removed parse_cgroup logic in favor of libproc
 . eliminated cgroup sort recurring overhead
 . converted WCHAN field to variable width
 . generalized variable width field logic in task_show
 . real-time notation under P col more distinctive as 'rt'
Program Cosmetic (top)
 . CGROUP now known as CGROUPS (plural)
 . moved jan's attribution from top.c to 'Notes' in top.h
 . numerous comments tweaked
Document Enhancements (top)
 . documented CGROUPS field (required renumbering all fields)
 . adapted narratives for the 3 current variable width fields
 . expanded real-time scheduling notes, 'RT' now shown as 'rt'

Signed-off-by: Jan Görig <jgorig@redhat.com>
2011-05-05 12:12:27 +02:00
Sami Kerola
11049a7c98 docs: free great modernization manual page fixes
Mention long options, and new options, in manual page.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-04-28 10:10:02 +02:00
Sami Kerola
d13fbc34a7 free: great modernization
Support long options, use program_invocation_short_name, print
version up on request, new giga & tera byte sizes switches, exit
when numeric arguments has garbage... and for rest see the diff.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
2011-04-28 10:10:02 +02:00
Jan Görig
2a2fa20656 Fixed initialization and thread problems in top - changed by Jim 2011-04-18 16:06:54 +02:00
Werner Fink
aac0de8994 Initialize smp_num_cpus only if really required
Initialize smp_num_cpus only if really required

Signed-off-by: Werner Fink <werner@suse.de>
2011-04-15 15:53:20 +02:00
Werner Fink
e646984924 Add missed oom support to libproc
Add missed oom support to libproc
Signed-off-by: Werner Fink <werner@suse.de>
2011-04-15 15:52:40 +02:00
Craig Small
3ec6a27e8a cgroup support. rcfile errors default to fatal
This source patch addresses the following:
 Conceivable Buglets Avoided
  . added sanity checks for previous assumptions re: pid size, num cpus
  . changed response for rcfile errors to fatal, vs. silent default
 Enhancements
  . reorganized WIN_t struct for reduced padding and better readability
  . generalized code for multiple var-width cols (divorced from pflags)
  . absorbed jan gorig's cgroup patch, with attribution
 Cosmetic
  . reduced numerous #ifdef directives, especially in calibrate_fields
2011-04-15 09:24:29 +10:00