Jim Warner
39243fe306
top: address a defect with the library PROC_PID flag
The library does not weed out potential duplicate PID values when sampling with the PROC_PID flag. This was treated as merely an inefficiency by top and safely ignored prior to the advent of forest view mode. Now, however, if the -p switch duplicates certain PIDs, *and* those processes have no PPID, *and* top's forest view mode is active or activated, then a SEGV will be generated (and caught). This rather obscure buglet is thus limited to pid #1 (/sbin/init) and pid #2 (kthreadd). With any other duplicate PIDs the worse case scenario was a '?' in place of the usual forest view artwork. This commit silently ignores any duplicate process ids and thereby avoids the potential segmemtation fault. Signed-off-by: Jim Warner <james.warner@comcast.net>
…
…
…
COMPATIBILITY This code is intended for use with Linux 2.6.xx, 3.x and hopefully all future kernels. INSTALLATION If you are using git version of the project you need extra step. ./autogen.sh After that, and everyone using .tar.xz version of procps-ng, can do normal build. Read './configure --help' to select options for your needs. ./configure make make install If you have DejaGNU installed you can run optional test suite. make check HOW TO CONTRIBUTE See Documentation/BUGS file. PACKAGING If you are a downstream maintainer (packager) for a Linux distribution, please avoid causing troubles. This section applies to you. Avoid maintaining distribution specific patches. Send your patches to upstream, where they are at least reviewed, if not included. Please forward bug reports. If your bug database is public and busy enough to bother with, please make this known. Follow Debian's lead in making the bug database easy to comment on via email without need for an account. For normal packages, ensure that you do not add debugging flags to the CFLAGS variable. UPSTREAM & BUG REPORTS procps-ng <procps@freelists.org>
Description
Command line and full screen utilities for browsing procfs, a "pseudo" file system dynamically generated by Linux to provide information about the status of entries in its process table.
Languages
C
97.2%
Makefile
1%
Shell
0.9%
M4
0.9%