diff --git a/0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch b/0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch deleted file mode 100644 index 8cd4b3c..0000000 --- a/0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 14ef47af57f48d1e51ab91e80fd8f132fabb665a Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Tue, 3 Dec 2013 15:00:00 -0600 -Subject: [PATCH] top: do not forget the fscanf %s terminating null byte - -Reference(s): -http://www.freelists.org/post/procps/procpsng-339-defects-found - -Signed-off-by: Jim Warner ---- - top/top.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git top/top.c top/top.c -index 4d1d912..bb15d01 100644 ---- top/top.c -+++ top/top.c -@@ -3445,8 +3445,8 @@ static void configs_read (void) { - WIN_t *w = &Winstk[i]; - p = fmtmk(N_fmt(RC_bad_entry_fmt), i+1, Rc_name); - -- // note: "fieldscur=%__s" on next line should equal PFLAGSSIZ ! -- if (2 != fscanf(fp, "%3s\tfieldscur=%80s\n" -+ // note: "fieldscur=%__s" on next line should equal (PFLAGSSIZ -1) ! -+ if (2 != fscanf(fp, "%3s\tfieldscur=%79s\n" - , w->rc.winname, w->rc.fieldscur)) - goto default_or_error; - #if PFLAGSSIZ > 80 --- -1.7.9.2 - diff --git a/0024-sysctl-system-loads-default-config-file.patch b/0024-sysctl-system-loads-default-config-file.patch deleted file mode 100644 index 8bdb1bd..0000000 --- a/0024-sysctl-system-loads-default-config-file.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 7f6efed9bb85d1e212e06985ea3e06720f6ca949 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Fri, 27 Dec 2013 23:08:14 +1100 -Subject: [PATCH] sysctl --system loads default config file - -Commit cdca71e94506fbb921ab2c626be3ad05c4287498 fixed -the loading the sysctl.conf file, but had the logic -for checking the file exists reversed incorrectly. ---- - NEWS | 4 ++++ - sysctl.c | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git NEWS NEWS -index 287f867..1c710a3 100644 ---- NEWS -+++ NEWS -@@ -1,3 +1,7 @@ -+procps-ng-3.3.10 -+---------------- -+ * sysctl --system loads default config file - Debian #732920 -+ - procps-ng-3.3.9 - --------------- - * kernel namespaces support added to skill, pgrep, ps and top -diff --git sysctl.c sysctl.c -index bb3e6b7..33c9403 100644 ---- sysctl.c -+++ sysctl.c -@@ -640,7 +640,7 @@ static int PreloadSystem(void) - } - - -- if (stat(DEFAULT_PRELOAD, &ts) < 0 && S_ISREG(ts.st_mode)) { -+ if (stat(DEFAULT_PRELOAD, &ts) < 0 || S_ISREG(ts.st_mode)) { - if (!Quiet) - printf(_("* Applying %s ...\n"), DEFAULT_PRELOAD); - rc |= Preload(DEFAULT_PRELOAD); --- -1.7.9.2 - diff --git a/0025-Split-help-lines-to-help-translators.patch b/0025-Split-help-lines-to-help-translators.patch deleted file mode 100644 index c05e380..0000000 --- a/0025-Split-help-lines-to-help-translators.patch +++ /dev/null @@ -1,371 +0,0 @@ -From 8a38cd5eb449c47450e31aa093635e8cfaaf2f73 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Sat, 28 Dec 2013 09:25:39 +1100 -Subject: [PATCH] Split help lines to help translators - -To assist translators, the help lines are split so that each translation -chunk has one option. This gives bonus of if we add or change an option, -only that option remains untranslated rather than the entire help block. - -Reference: - http://www.freelists.org/post/procps/procpsng-for-Translation-Project,1 - -Signed-off-by: Craig Small ---- - pidof.c | 8 ++-- - pmap.c | 26 ++++++------ - ps/help.c | 131 +++++++++++++++++++++++++++++-------------------------------- - skill.c | 42 ++++++++++---------- - slabtop.c | 28 ++++++------- - watch.c | 20 +++++----- - 6 files changed, 125 insertions(+), 130 deletions(-) - -diff --git pidof.c pidof.c -index 2e0911d..6a38675 100644 ---- pidof.c -+++ pidof.c -@@ -60,10 +60,10 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - fputs(USAGE_HEADER, fp); - fprintf(fp, _(" %s [options] [program [...]]\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, fp); -- fputs(_(" -s, --single-shot return one PID only\n" -- " -c, --check-root omit processes with different root\n" -- " -x scripts too\n" -- " -o, --omit-pid omit processes with PID\n"), fp); -+ fputs(_(" -s, --single-shot return one PID only\n"), fp); -+ fputs(_(" -c, --check-root omit processes with different root\n"), fp); -+ fputs(_(" -x scripts too\n"), fp); -+ fputs(_(" -o, --omit-pid omit processes with PID\n"), fp); - fputs(USAGE_SEPARATOR, fp); - fputs(USAGE_HELP, fp); - fputs(USAGE_VERSION, fp); -diff --git pmap.c pmap.c -index 8f111a0..4ecabce 100644 ---- pmap.c -+++ pmap.c -@@ -108,19 +108,19 @@ usage(FILE * out) - fprintf(out, - _(" %s [options] pid [pid ...]\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, out); -- fputs(_(" -x, --extended show details\n" -- " -X show even more details\n" -- " WARNING: format changes according to /proc/PID/smaps\n" -- " -XX show everything the kernel provides\n" -- " -c, --read-rc read the default rc\n" -- " -C, --read-rc-from= read the rc from file\n" -- " -n, --create-rc create new default rc\n" -- " -N, --create-rc-to= create new rc to file\n" -- " NOTE: pid arguments are not allowed with -n, -N\n" -- " -d, --device show the device format\n" -- " -q, --quiet do not display header and footer\n" -- " -p, --show-path show path in the mapping\n" -- " -A, --range=[,] limit results to the given range\n"), out); -+ fputs(_(" -x, --extended show details\n"), out); -+ fputs(_(" -X show even more details\n"), out); -+ fputs(_(" WARNING: format changes according to /proc/PID/smaps\n"), out); -+ fputs(_(" -XX show everything the kernel provides\n"), out); -+ fputs(_(" -c, --read-rc read the default rc\n"), out); -+ fputs(_(" -C, --read-rc-from= read the rc from file\n"), out); -+ fputs(_(" -n, --create-rc create new default rc\n"), out); -+ fputs(_(" -N, --create-rc-to= create new rc to file\n"), out); -+ fputs(_(" NOTE: pid arguments are not allowed with -n, -N\n"), out); -+ fputs(_(" -d, --device show the device format\n"), out); -+ fputs(_(" -q, --quiet do not display header and footer\n"), out); -+ fputs(_(" -p, --show-path show path in the mapping\n"), out); -+ fputs(_(" -A, --range=[,] limit results to the given range\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_HELP, out); - fputs(USAGE_VERSION, out); -diff --git ps/help.c ps/help.c -index b536f1a..9133903 100644 ---- ps/help.c -+++ ps/help.c -@@ -96,85 +96,80 @@ void do_help (const char *opt, int rc) { - " %s [options]\n"), myname); - - if (section == HELP_SMP || section == HELP_ALL) { -- fprintf(out, _("\n" -- "Basic options:\n" -- " -A, -e all processes\n" -- " -a all with tty, except session leaders\n" -- " a all with tty, including other users\n" -- " -d all except session leaders\n" -- " -N, --deselect negate selection\n" -- " r only running processes\n" -- " T all processes on this terminal\n" -- " x processes without controlling ttys\n")); -+ fputs(_("\nBasic options:\n"), out); -+ fputs(_(" -A, -e all processes\n"), out); -+ fputs(_(" -a all with tty, except session leaders\n"), out); -+ fputs(_(" a all with tty, including other users\n"), out); -+ fputs(_(" -d all except session leaders\n"), out); -+ fputs(_(" -N, --deselect negate selection\n"), out); -+ fputs(_(" r only running processes\n"), out); -+ fputs(_(" T all processes on this terminal\n"), out); -+ fputs(_(" x processes without controlling ttys\n"), out); - } - if (section == HELP_LST || section == HELP_ALL) { -- fprintf(out, _("\n" -- "Selection by list:\n" -- " -C command name\n" -- " -G, --Group real group id or name\n" -- " -g, --group session or effective group name\n" -- " -p, --pid process id\n" -- " --ppid select by parent process id\n" -- " -s, --sid session id\n" -- " -t, t, --tty terminal\n" -- " -u, U, --user effective user id or name\n" -- " -U, --User real user id or name\n" -- "\n" -+ fputs(_("\nSelection by list:\n"), out); -+ fputs(_(" -C command name\n"), out); -+ fputs(_(" -G, --Group real group id or name\n"), out); -+ fputs(_(" -g, --group session or effective group name\n"), out); -+ fputs(_(" -p, --pid process id\n"), out); -+ fputs(_(" --ppid select by parent process id\n"), out); -+ fputs(_(" -s, --sid session id\n"), out); -+ fputs(_(" -t, t, --tty terminal\n"), out); -+ fputs(_(" -u, U, --user effective user id or name\n"), out); -+ fputs(_(" -U, --User real user id or name\n"), out); -+ fputs(_("\n" - " selection take either:\n" - " comma-separated list e.g. '-u root,nobody' or\n" -- " blank-separated list e.g. '-p 123 4567'\n")); -+ " blank-separated list e.g. '-p 123 4567'\n"), out); - } - if (section == HELP_OUT || section == HELP_ALL) { -- fprintf(out, _("\n" -- "Output formats:\n" -- " -F extra full\n" -- " -f full-format, including command lines\n" -- " f, --forest ascii art process tree\n" -- " -H show process hierarchy\n" -- " -j jobs format\n" -- " j BSD job control format\n" -- " -l long format\n" -- " l BSD long format\n" -- " -M, Z add security data (for SELinux)\n" -- " -O preloaded with default columns\n" -- " O as -O, with BSD personality\n" -- " -o, o, --format \n" -- " user defined format\n" -- " s signal format\n" -- " u user-oriented format\n" -- " v virtual memory format\n" -- " X register format\n" -- " -y do not show flags, show rrs vs. addr (used with -l)\n" -- " --context display security context (for SELinux)\n" -- " --headers repeat header lines, one per page\n" -- " --no-headers do not print header at all\n" -- " --cols, --columns, --width \n" -- " set screen width\n" -- " --rows, --lines \n" -- " set screen height\n")); -+ fputs(_("\nOutput formats:\n"), out); -+ fputs(_(" -F extra full\n"), out); -+ fputs(_(" -f full-format, including command lines\n"), out); -+ fputs(_(" f, --forest ascii art process tree\n"), out); -+ fputs(_(" -H show process hierarchy\n"), out); -+ fputs(_(" -j jobs format\n"), out); -+ fputs(_(" j BSD job control format\n"), out); -+ fputs(_(" -l long format\n"), out); -+ fputs(_(" l BSD long format\n"), out); -+ fputs(_(" -M, Z add security data (for SELinux)\n"), out); -+ fputs(_(" -O preloaded with default columns\n"), out); -+ fputs(_(" O as -O, with BSD personality\n"), out); -+ fputs(_(" -o, o, --format \n" -+ " user defined format\n"), out); -+ fputs(_(" s signal format\n"), out); -+ fputs(_(" u user-oriented format\n"), out); -+ fputs(_(" v virtual memory format\n"), out); -+ fputs(_(" X register format\n"), out); -+ fputs(_(" -y do not show flags, show rrs vs. addr (used with -l)\n"), out); -+ fputs(_(" --context display security context (for SELinux)\n"), out); -+ fputs(_(" --headers repeat header lines, one per page\n"), out); -+ fputs(_(" --no-headers do not print header at all\n"), out); -+ fputs(_(" --cols, --columns, --width \n" -+ " set screen width\n"), out); -+ fputs(_(" --rows, --lines \n" -+ " set screen height\n"), out); - } - if (section == HELP_THD || section == HELP_ALL) { -- fprintf(out, _("\n" -- "Show threads:\n" -- " H as if they where processes\n" -- " -L possibly with LWP and NLWP columns\n" -- " -m, m after processes\n" -- " -T possibly with SPID column\n")); -+ fputs(_("\nShow threads:\n"), out); -+ fputs(_(" H as if they where processes\n"), out); -+ fputs(_(" -L possibly with LWP and NLWP columns\n"), out); -+ fputs(_(" -m, m after processes\n"), out); -+ fputs(_(" -T possibly with SPID column\n"), out); - } - if (section == HELP_MSC || section == HELP_ALL) { -+ fputs(_("\nMiscellaneous options:\n"), out); -+ fputs(_(" -c show scheduling class with -l option\n"), out); -+ fputs(_(" c show true command name\n"), out); -+ fputs(_(" e show the environment after command\n"), out); -+ fputs(_(" k, --sort specify sort order as: [+|-]key[,[+|-]key[,...]]\n"), out); -+ fputs(_(" L list format specifiers\n"), out); -+ fputs(_(" n display numeric uid and wchan\n"), out); -+ fputs(_(" S, --cumulative include some dead child process data\n"), out); -+ fputs(_(" -y do not show flags, show rss (only with -l)\n"), out); -+ fputs(_(" -V, V, --version display version information and exit\n"), out); -+ fputs(_(" -w, w unlimited output width\n"), out); - fprintf(out, _("\n" -- "Miscellaneous options:\n" -- " -c show scheduling class with -l option\n" -- " c show true command name\n" -- " e show the environment after command\n" -- " k, --sort specify sort order as: [+|-]key[,[+|-]key[,...]]\n" -- " L list format specifiers\n" -- " n display numeric uid and wchan\n" -- " S, --cumulative include some dead child process data\n" -- " -y do not show flags, show rss (only with -l)\n" -- " -V, V, --version display version information and exit\n" -- " -w, w unlimited output width\n" -- "\n" - " --%s <%s|%s|%s|%s|%s|%s>\n" - " display help and exit\n") - , the_word_help -diff --git skill.c skill.c -index 01b29cb..5c8192a 100644 ---- skill.c -+++ skill.c -@@ -324,11 +324,11 @@ static void __attribute__ ((__noreturn__)) kill_usage(FILE * out) - fprintf(out, - _(" %s [options] [...]\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, out); -- fputs(_(" [...] send signal to every listed\n" -- " -, -s, --signal \n" -- " specify the to be sent\n" -- " -l, --list=[] list all signal names, or convert one to a name\n" -- " -L, --table list all signal names in a nice table\n"), out); -+ fputs(_(" [...] send signal to every listed\n"), out); -+ fputs(_(" -, -s, --signal \n" -+ " specify the to be sent\n"), out); -+ fputs(_(" -l, --list=[] list all signal names, or convert one to a name\n"), out); -+ fputs(_(" -L, --table list all signal names in a nice table\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_HELP, out); - fputs(USAGE_VERSION, out); -@@ -351,25 +351,25 @@ static void __attribute__ ((__noreturn__)) skillsnice_usage(FILE * out) - program_invocation_short_name); - } - fputs(USAGE_OPTIONS, out); -- fputs(_(" -f, --fast fast mode (not implemented)\n" -- " -i, --interactive interactive\n" -- " -l, --list list all signal names\n" -- " -L, --table list all signal names in a nice table\n" -- " -n, --no-action no action\n" -- " -v, --verbose explain what is being done\n" -- " -w, --warnings enable warnings (not implemented)\n"), out); -+ fputs(_(" -f, --fast fast mode (not implemented)\n"), out); -+ fputs(_(" -i, --interactive interactive\n"), out); -+ fputs(_(" -l, --list list all signal names\n"), out); -+ fputs(_(" -L, --table list all signal names in a nice table\n"), out); -+ fputs(_(" -n, --no-action no action\n"), out); -+ fputs(_(" -v, --verbose explain what is being done\n"), out); -+ fputs(_(" -w, --warnings enable warnings (not implemented)\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(_("Expression can be: terminal, user, pid, command.\n" -- "The options below may be used to ensure correct interpretation.\n" -- " -c, --command expression is a command name\n" -- " -p, --pid expression is a process id number\n" -- " -t, --tty expression is a terminal\n" -- " -u, --user expression is a username\n"), out); -+ "The options below may be used to ensure correct interpretation.\n"), out); -+ fputs(_(" -c, --command expression is a command name\n"), out); -+ fputs(_(" -p, --pid expression is a process id number\n"), out); -+ fputs(_(" -t, --tty expression is a terminal\n"), out); -+ fputs(_(" -u, --user expression is a username\n"), out); - fputs(USAGE_SEPARATOR, out); -- fputs(_("Alternatively, expression can be:\n" -- " --ns match the processes that belong to the same\n" -- " namespace as \n" -- " --nslist list which namespaces will be considered for\n" -+ fputs(_("Alternatively, expression can be:\n"), out); -+ fputs(_(" --ns match the processes that belong to the same\n" -+ " namespace as \n"), out); -+ fputs(_(" --nslist list which namespaces will be considered for\n" - " the --ns option.\n" - " Available namespaces: ipc, mnt, net, pid, user, uts\n"), out); - -diff --git slabtop.c slabtop.c -index dc89c4d..c135ec5 100644 ---- slabtop.c -+++ slabtop.c -@@ -188,24 +188,24 @@ static void __attribute__((__noreturn__)) usage(FILE *out) - fputs(USAGE_HEADER, out); - fprintf(out, _(" %s [options]\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, out); -- fputs(_(" -d, --delay delay updates\n" -- " -o, --once only display once, then exit\n" -- " -s, --sort specify sort criteria by character (see below)\n"), out); -+ fputs(_(" -d, --delay delay updates\n"), out); -+ fputs(_(" -o, --once only display once, then exit\n"), out); -+ fputs(_(" -s, --sort specify sort criteria by character (see below)\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_HELP, out); - fputs(USAGE_VERSION, out); - -- fputs(_("\nThe following are valid sort criteria:\n" -- " a: sort by number of active objects\n" -- " b: sort by objects per slab\n" -- " c: sort by cache size\n" -- " l: sort by number of slabs\n" -- " v: sort by number of active slabs\n" -- " n: sort by name\n" -- " o: sort by number of objects (the default)\n" -- " p: sort by pages per slab\n" -- " s: sort by object size\n" -- " u: sort by cache utilization\n"), out); -+ fputs(_("\nThe following are valid sort criteria:\n"), out); -+ fputs(_(" a: sort by number of active objects\n"), out); -+ fputs(_(" b: sort by objects per slab\n"), out); -+ fputs(_(" c: sort by cache size\n"), out); -+ fputs(_(" l: sort by number of slabs\n"), out); -+ fputs(_(" v: sort by number of active slabs\n"), out); -+ fputs(_(" n: sort by name\n"), out); -+ fputs(_(" o: sort by number of objects (the default)\n"), out); -+ fputs(_(" p: sort by pages per slab\n"), out); -+ fputs(_(" s: sort by object size\n"), out); -+ fputs(_(" u: sort by cache utilization\n"), out); - fprintf(out, USAGE_MAN_TAIL("slabtop(1)")); - - exit(out == stderr ? EXIT_FAILURE : EXIT_SUCCESS); -diff --git watch.c watch.c -index 436d213..032dfb7 100644 ---- watch.c -+++ watch.c -@@ -88,16 +88,16 @@ static void __attribute__ ((__noreturn__)) - fprintf(out, - _(" %s [options] command\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, out); -- fputs(_(" -b, --beep beep if command has a non-zero exit\n" -- " -c, --color interpret ANSI color sequences\n" -- " -d, --differences[=]\n" -- " highlight changes between updates\n" -- " -e, --errexit exit if command has a non-zero exit\n" -- " -g, --chgexit exit when output from command changes\n" -- " -n, --interval seconds to wait between updates\n" -- " -p, --precise attempt run command in precise intervals\n" -- " -t, --no-title turn off header\n" -- " -x, --exec pass command to exec instead of \"sh -c\"\n"), out); -+ fputs(_(" -b, --beep beep if command has a non-zero exit\n"), out); -+ fputs(_(" -c, --color interpret ANSI color sequences\n"), out); -+ fputs(_(" -d, --differences[=]\n" -+ " highlight changes between updates\n"), out); -+ fputs(_(" -e, --errexit exit if command has a non-zero exit\n"), out); -+ fputs(_(" -g, --chgexit exit when output from command changes\n"), out); -+ fputs(_(" -n, --interval seconds to wait between updates\n"), out); -+ fputs(_(" -p, --precise attempt run command in precise intervals\n"), out); -+ fputs(_(" -t, --no-title turn off header\n"), out); -+ fputs(_(" -x, --exec pass command to exec instead of \"sh -c\"\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_HELP, out); - fputs(_(" -v, --version output version information and exit\n"), out); --- -1.7.9.2 - diff --git a/0026-library-fixing-uninitialized-variable-pos-in-whattim.patch b/0026-library-fixing-uninitialized-variable-pos-in-whattim.patch deleted file mode 100644 index 24c1c35..0000000 --- a/0026-library-fixing-uninitialized-variable-pos-in-whattim.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 38cbeedeb7dc94c95482343e547addc1748344b0 Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Thu, 2 Jan 2014 18:21:31 +0100 -Subject: [PATCH] library: fixing uninitialized variable 'pos' in whattime.c - ---- - proc/whattime.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git proc/whattime.c proc/whattime.c -index 9d6abb3..eb345fb 100644 ---- proc/whattime.c -+++ proc/whattime.c -@@ -58,6 +58,8 @@ char *sprint_uptime(int human_readable) { - realtime = localtime(&realseconds); - pos = sprintf(buf, " %02d:%02d:%02d ", - realtime->tm_hour, realtime->tm_min, realtime->tm_sec); -+ } else { -+ pos = 0; - } - - /* read and calculate the amount of uptime */ --- -1.7.9.2 - diff --git a/0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch b/0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch deleted file mode 100644 index 3abd15c..0000000 --- a/0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 69de8db3e27b63fdcd8e3dce4d63e725d80bf05b Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Thu, 2 Jan 2014 18:39:27 +0100 -Subject: [PATCH] pgrep: Fixing memory leak in do_regcomp() - ---- - pgrep.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git pgrep.c pgrep.c -index 6290ec5..93a7c89 100644 ---- pgrep.c -+++ pgrep.c -@@ -460,6 +460,9 @@ static regex_t * do_regcomp (void) - } - - re_err = regcomp (preg, re, REG_EXTENDED | REG_NOSUB | opt_case); -+ -+ if (opt_exact) free(re); -+ - if (re_err) { - regerror (re_err, preg, errbuf, sizeof(errbuf)); - fputs(errbuf,stderr); --- -1.7.9.2 - diff --git a/0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch b/0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch deleted file mode 100644 index caee073..0000000 --- a/0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 8622b582da06fb93a8f06d302215269835fca9a9 Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Thu, 2 Jan 2014 19:49:36 +0100 -Subject: [PATCH] sysctl: Fixing memory leaks in PreloadSystem() - ---- - sysctl.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git sysctl.c sysctl.c -index 33c9403..51af15d 100644 ---- sysctl.c -+++ sysctl.c -@@ -645,6 +645,13 @@ static int PreloadSystem(void) - printf(_("* Applying %s ...\n"), DEFAULT_PRELOAD); - rc |= Preload(DEFAULT_PRELOAD); - } -+ -+ /* cleaning */ -+ for (i = 0; i < ncfgs; ++i) { -+ free(cfgs[i]); -+ } -+ if (cfgs) free(cfgs); -+ - return rc; - } - --- -1.7.9.2 - diff --git a/0029-ps-ignore-SIGCONT.patch b/0029-ps-ignore-SIGCONT.patch deleted file mode 100644 index 190b7b2..0000000 --- a/0029-ps-ignore-SIGCONT.patch +++ /dev/null @@ -1,47 +0,0 @@ -From d06aaaaf2bd8f3b5f0235e75f4f04c0ad69c7d6d Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Tue, 14 Jan 2014 22:23:58 +1100 -Subject: [PATCH] ps: ignore SIGCONT - -SIGCONT is a continue signal. It seems that some zsh setups can send -this signal, causing ps to abort. This is not what "continue" means. -This change just uses the default handler which will continue a stopped -process. - -References: - http://bugs.debian.org/732410 - http://www.zsh.org/cgi-bin/mla/redirect?WORKERNUMBER=32251 - -Signed-off-by: Craig Small ---- - NEWS | 1 + - ps/display.c | 1 + - 2 files changed, 2 insertions(+) - -diff --git NEWS NEWS -index 1c710a3..a2afaa3 100644 ---- NEWS -+++ NEWS -@@ -1,6 +1,7 @@ - procps-ng-3.3.10 - ---------------- - * sysctl --system loads default config file - Debian #732920 -+ * ps doesn't exit on SIGCONT - - procps-ng-3.3.9 - --------------- -diff --git ps/display.c ps/display.c -index c20285d..693154b 100644 ---- ps/display.c -+++ ps/display.c -@@ -563,6 +563,7 @@ int main(int argc, char *argv[]){ - default: - sigaction(i,&sa,NULL); - case 0: -+ case SIGCONT: - case SIGINT: /* ^C */ - case SIGTSTP: /* ^Z */ - case SIGTTOU: /* see stty(1) man page */ --- -1.7.9.2 - diff --git a/0031-vmstat-wide-output-still-not-wide-enough.patch b/0031-vmstat-wide-output-still-not-wide-enough.patch deleted file mode 100644 index fd36594..0000000 --- a/0031-vmstat-wide-output-still-not-wide-enough.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 1baf31be9bbfd6fb82629176e595d2d2cef85ef3 Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Mon, 20 Jan 2014 19:59:39 +0100 -Subject: [PATCH] vmstat: wide output still not wide enough? - -8 digits per memory column is apparently still too low -for systems with 128TB of RAM. Anyway, setting the limit -to 999TB (12 digits) must be sufficient for now as it -produces wide gaps on "regular" computers. -This commit also increases the number of digits per cpu -columns from 2 to 3 as some of them can hit the 100% -maximum in corner cases. ---- - vmstat.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git vmstat.c vmstat.c -index 67515c1..c01351d 100644 ---- vmstat.c -+++ vmstat.c -@@ -187,12 +187,12 @@ static void new_header(void) - const char header[] = - "procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----\n"; - const char wide_header[] = -- "procs ---------------memory-------------- ---swap-- -----io---- -system-- ------cpu-----\n"; -+ "procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu--------\n"; - - const char format[] = - "%2s %2s %6s %6s %6s %6s %4s %4s %5s %5s %4s %4s %2s %2s %2s %2s %2s\n"; - const char wide_format[] = -- "%2s %2s %8s %8s %8s %8s %4s %4s %5s %5s %4s %4s %2s %2s %2s %2s %2s\n"; -+ "%2s %2s %12s %12s %12s %12s %4s %4s %5s %5s %4s %4s %3s %3s %3s %3s %3s\n"; - - printf(w_option ? _(wide_header) : _(header)); - printf( -@@ -249,7 +249,7 @@ static void new_format(void) - const char format[] = - "%2u %2u %6lu %6lu %6lu %6lu %4u %4u %5u %5u %4u %4u %2u %2u %2u %2u %2u\n"; - const char wide_format[] = -- "%2u %2u %8lu %8lu %8lu %8lu %4u %4u %5u %5u %4u %4u %2u %2u %2u %2u %2u\n"; -+ "%2u %2u %12lu %12lu %12lu %12lu %4u %4u %5u %5u %4u %4u %3u %3u %3u %3u %3u\n"; - - unsigned int tog = 0; /* toggle switch for cleaner code */ - unsigned int i; --- -1.7.9.2 - diff --git a/0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch b/0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch deleted file mode 100644 index 63815b4..0000000 --- a/0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch +++ /dev/null @@ -1,43 +0,0 @@ -From ae9676a337e38526b994d189444f3fd02ab800ad Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Fri, 24 Jan 2014 18:07:34 +0100 -Subject: [PATCH] library: skip replacement of trailing '\0' in - read_unvectored() - -Under some circumstances the ksh shell doesn't fork new processes -when executing scripts and the script is interpreted by the -parent process. That makes the execution faster, but it means -ksh needs to reuse the /proc/PID/cmdline for the new script name -and arguments while the file length needs to stay untouched. -The fork is skipped only when the new cmdline is shorter than -the parent's cmdline and the rest of the file is filled -with '\0'. This is perfectly ok until we try to read the cmdline -of such process. As the read_unvectored() function replaces -all zeros with chosen separator, these trailing zeros are replaced -with spaces in case of the ps tool. Consequently it appends -multiple spaces at the end of the arguments string even when these -zeros do not represent any separators and therefore shouldn't -be replaced. -With this commit the read_unvectored() function skips the -replacement of trailing zeros and separates valid content only. - -Reference: https://bugzilla.redhat.com/show_bug.cgi?id=1057600 ---- - proc/readproc.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git proc/readproc.c proc/readproc.c -index 286e173..46dfa10 100644 ---- proc/readproc.c -+++ proc/readproc.c -@@ -686,6 +686,7 @@ static int read_unvectored(char *restrict const dst, unsigned sz, const char* wh - close(fd); - if(n){ - int i=n; -+ while(i && dst[i-1]=='\0') --i; // skip trailing zeroes - while(i--) - if(dst[i]=='\n' || dst[i]=='\0') dst[i]=sep; - if(dst[n-1]==' ') dst[n-1]='\0'; --- -1.7.9.2 - diff --git a/0033-kill-for-PID-1-restored.patch b/0033-kill-for-PID-1-restored.patch deleted file mode 100644 index 19ff40a..0000000 --- a/0033-kill-for-PID-1-restored.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 4359cf069819d9fb53493933e00d9af5c37bced5 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Tue, 28 Jan 2014 22:35:26 +1100 -Subject: [PATCH] kill for PID -1 restored - -Both the man page and the shell builtin kill mention you can -use PID -1, which means nuke everything you can get at. -Alas this "fun" option was missing and the only way to get -around it was with "kill -HUP -- -1". - -This small change means kill -HUP -1 is back for all those -destructive types. The error was introduced when the argument -parser was fixed for other problems. - -Thanks to Mike for pointing this out. - -Signed-off-by: Craig Small ---- - skill.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git skill.c skill.c -index 5c8192a..1c99985 100644 ---- skill.c -+++ skill.c -@@ -477,6 +477,12 @@ static void __attribute__ ((__noreturn__)) - display_kill_version(); - exit(EXIT_SUCCESS); - case '?': -+ /* Special case is -1 which means all except init */ -+ if (optopt == '1') { -+ if (kill(-1, signo) != 0) -+ exitvalue = EXIT_FAILURE; -+ exit(exitvalue); -+ } - if (!isdigit(optopt)) { - xwarnx(_("invalid argument %c"), optopt); - kill_usage(stderr); --- -1.7.9.2 - diff --git a/0034-Check-for-presence-of-disks-in-vmstat.patch b/0034-Check-for-presence-of-disks-in-vmstat.patch deleted file mode 100644 index 788dd3a..0000000 --- a/0034-Check-for-presence-of-disks-in-vmstat.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 5a34ff0a99a3c5e7ba4f7982d5de3d0dcc9e3045 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Wed, 29 Jan 2014 22:22:11 +1100 -Subject: [PATCH] Check for presence of disks in vmstat - -vmstat -d or vmstat -p would crash mysteriously under different -circumstances. The problem was eventually tracked down to /sys not -being mounted which meant is_disk() always returned false. -The partition would then be attempted to be linked to a non-existent -disk causing a segfault. - -vmstat will now not link to a disk if none exists. -The change in testing will skip those tests when /sys/block doesn't -exist. - -Many thanks to Daniel Schepler for his analysis and suggestions. - -Bug-Debian: http://bugs.debian.org/736628 ---- - proc/sysinfo.c | 7 +++++-- - testsuite/vmstat.test/vmstat.exp | 22 +++++++++++++++------- - 2 files changed, 20 insertions(+), 9 deletions(-) - -diff --git proc/sysinfo.c proc/sysinfo.c -index f318376..1680cc4 100644 ---- proc/sysinfo.c -+++ proc/sysinfo.c -@@ -938,8 +938,11 @@ unsigned int getdiskstat(struct disk_stat **disks, struct partition_stat **parti - &(*partitions)[cPartition].writes, - &(*partitions)[cPartition].requested_writes - ); -- (*partitions)[cPartition++].parent_disk = cDisk-1; -- (*disks)[cDisk-1].partitions++; -+ -+ if (cDisk > 0) { -+ (*partitions)[cPartition++].parent_disk = cDisk-1; -+ (*disks)[cDisk-1].partitions++; -+ } - } - } - -diff --git testsuite/vmstat.test/vmstat.exp testsuite/vmstat.test/vmstat.exp -index fb5de14..f470afc 100644 ---- testsuite/vmstat.test/vmstat.exp -+++ testsuite/vmstat.test/vmstat.exp -@@ -26,15 +26,23 @@ expect_pass "$test" "^Cache\\s+Num\\s+Total\\s+Size\\s+Pages\\s+\(\[\(\)A-Za-z0- - } - - set test "vmstat disk information (-d option)" --spawn $vmstat -d --expect_pass "$test" "^disk\[ -\]+reads\[ -\]+writes\[ -\]+IO\[ -\]+\\s+total\\s+merged\\s+sectors\\s+ms\\s+total\\s+merged\\s+sectors\\s+ms\\s+cur\\s+sec\\s+" -+if { [ file readable "/sys/block" ] == 0 } { -+ unsupported "$test /sys/block not readable" -+} else { -+ spawn $vmstat -d -+ expect_pass "$test" "^disk\[ -\]+reads\[ -\]+writes\[ -\]+IO\[ -\]+\\s+total\\s+merged\\s+sectors\\s+ms\\s+total\\s+merged\\s+sectors\\s+ms\\s+cur\\s+sec\\s+" -+} - - # Need a partition - set diskstats [ exec cat /proc/diskstats ] --if [ regexp "\\s+\\d+\\s+\\d+\\s+\(\[a-z\]+\\d+\)\\s+\[0-9\]\[0-9\]+" $diskstats line partition == 1 ] { -- set test "vmstat partition (using $partition)" -- spawn $vmstat -p $partition -- expect_pass "$test" "^${partition}\\s+reads" -+if { [ file readable "/sys/block" ] == 0 } { -+ unsupported "vmstat partition /sys/block not readable" - } else { -- unsupported "vmstat partition (cannot find partition)" -+ if [ regexp "\\s+\\d+\\s+\\d+\\s+\(\[a-z\]+\\d+\)\\s+\[0-9\]\[0-9\]+" $diskstats line partition == 1 ] { -+ set test "vmstat partition (using $partition)" -+ spawn $vmstat -p $partition -+ expect_pass "$test" "^${partition}\\s+reads" -+ } else { -+ unsupported "vmstat partition (cannot find partition)" -+ } - } --- -1.7.9.2 - diff --git a/0035-PID-2-to-9-for-kill-too.patch b/0035-PID-2-to-9-for-kill-too.patch deleted file mode 100644 index 1744ff3..0000000 --- a/0035-PID-2-to-9-for-kill-too.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 39210a89debaff023fa97250bee63c57fe9dfcfb Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Wed, 29 Jan 2014 22:28:02 +1100 -Subject: [PATCH] PID -2 to -9 for kill too - -Commit 4359cf069819d9fb53493933e00d9af5c37bced5 restored kill's ability -to kill PID -1. This however left PIDs -2 to -9 (or rather process -groups 2 to 9) still having this problem. The check is now generically -looking for a digit and parses it correctly. ---- - skill.c | 16 +++++++++------- - 1 file changed, 9 insertions(+), 7 deletions(-) - -diff --git skill.c skill.c -index 1c99985..60ed274 100644 ---- skill.c -+++ skill.c -@@ -195,7 +195,8 @@ static void check_proc(int pid, struct run_time_conf_t *run_time) - if (i == -1) - goto closure; - } -- read(fd, buf, 128); -+ if (read(fd, buf, 128) <= 0) -+ goto closure; - buf[127] = '\0'; - tmp = strrchr(buf, ')'); - *tmp++ = '\0'; -@@ -477,15 +478,16 @@ static void __attribute__ ((__noreturn__)) - display_kill_version(); - exit(EXIT_SUCCESS); - case '?': -- /* Special case is -1 which means all except init */ -- if (optopt == '1') { -- if (kill(-1, signo) != 0) -- exitvalue = EXIT_FAILURE; -- exit(exitvalue); -- } - if (!isdigit(optopt)) { - xwarnx(_("invalid argument %c"), optopt); - kill_usage(stderr); -+ } else { -+ /* Special case for signal digit negative -+ * PIDs */ -+ pid = (long)('0' - optopt); -+ if (kill((pid_t)pid, signo) != 0) -+ exitvalue = EXIT_FAILURE; -+ exit(exitvalue); - } - loop=0; - break; --- -1.7.9.2 - diff --git a/0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch b/0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch deleted file mode 100644 index 488bfe1..0000000 --- a/0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch +++ /dev/null @@ -1,139 +0,0 @@ -From b6fcb602ce0f80e818004340e6ddb5a788bb832d Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Sun, 5 Jan 2014 00:00:00 -0600 -Subject: [PATCH] top: provide for discontinuous (not active) NUMA nodes - -Apparently there are occasions when NUMA nodes may not -always be contiguous. Under such conditions nodes that -were not used would still occupy precious Summary Area -space showing 100% idle, under the '2' command toggle. - -With this commit top will no longer display numa nodes -that have no associated cpu when the '2' toggle is on. -But just in case we wish to return to former behavior, -a new #define called OFF_NUMASKIP has been introduced. - -And as an aside, a recent refactor mentioned below set -the stage for this patch to be 'self-tuning'. In other -words, if an inactive/non-displayed node should become -active (if even possible), then top will begin showing -such a node automatically with the next screen update. - -Unfortunately, all inactive nodes now 'suppressed' are -still accessible via the '3' command. Those nodes will -just be displayed as empty (no associated cpus shown). -This is not really a top problem but more of a libnuma -and/or user deficiency. The library lacks the means to -validate a node id and the user then input a node that -was not even shown under a '2' toggle Summary display. - -( too bad libnuma does not offer an 'is_node_active' ) -( type function so top could warn a user when such a ) -( discontinuous node was requested using his '3' cmd ) - -( sure, top could achieve this objective himself but ) -( that would require making yet another array global ) -( which i'm just not in the mood to do - besides, we ) -( have already made enough concessions to libnuma.so ) - -Lastly, an existing #define (PRETEND_NUMA) was changed -to 'disable' node #1 so as to simulate a discontinuous -node. This allows testing of the '2' and '3' commands. - -Reference(s): -http://www.spinics.net/lists/util-linux-ng/msg08671.html -. set stage for self tuning -commit f12c0d5c6e84f9409ac3a73c066841a8ff5aab0b - -Signed-off-by: Jim Warner ---- - top/top.c | 16 +++++++++++++++- - top/top.h | 8 ++++++-- - 2 files changed, 21 insertions(+), 3 deletions(-) - -diff --git top/top.c top/top.c -index bb15d01..cb1a063 100644 ---- top/top.c -+++ top/top.c -@@ -223,7 +223,11 @@ static void *Libnuma_handle; - static int Stderr_save = -1; - #if defined(PRETEND_NUMA) || defined(PRETEND8CPUS) - static int Numa_max_node(void) { return 3; } -+#ifndef OFF_NUMASKIP -+static int Numa_node_of_cpu(int num) { return (1 == (num % 4)) ? 0 : (num % 4); } -+#else - static int Numa_node_of_cpu(int num) { return (num % 4); } -+#endif - #else - static int (*Numa_max_node)(void); - static int (*Numa_node_of_cpu)(int num); -@@ -2430,6 +2434,9 @@ static CPU_t *cpus_refresh (CPU_t *cpus) { - nod_ptr->edge = sum_ptr->edge; - #endif - cpu_ptr->node = node; -+#ifndef OFF_NUMASKIP -+ nod_ptr->id = -1; -+#endif - } - #endif - } // end: for each cpu -@@ -5056,10 +5063,17 @@ static void summary_show (void) { - Msg_row += 1; - // display each cpu node's states - for (i = 0; i < Numa_node_tot; i++) { -+ CPU_t *nod_ptr = &smpcpu[1 + smp_num_cpus + i]; - if (!isROOM(anyFLG, 1)) break; -+#ifndef OFF_NUMASKIP -+ if (nod_ptr->id) { -+#endif - snprintf(tmp, sizeof(tmp), N_fmt(NUMA_nodenam_fmt), i); -- summary_hlp(&smpcpu[1 + smp_num_cpus + i], tmp); -+ summary_hlp(nod_ptr, tmp); - Msg_row += 1; -+#ifndef OFF_NUMASKIP -+ } -+#endif - } - } else { - // display the node summary, then the associated cpus (if room) -diff --git top/top.h top/top.h -index 16f7668..8e83b61 100644 ---- top/top.h -+++ top/top.h -@@ -41,12 +41,13 @@ - //#define INSP_SAVEBUF /* preserve 'Insp_buf' contents in a file */ - //#define INSP_SLIDE_1 /* when scrolling left/right don't move 8 */ - //#define OFF_HST_HASH /* use BOTH qsort+bsrch vs. hashing scheme */ -+//#define OFF_NUMASKIP /* do NOT skip numa nodes if discontinuous */ - //#define OFF_SCROLLBK /* disable tty emulators scrollback buffer */ - //#define OFF_STDIOLBF /* disable our own stdout _IOFBF override */ - //#define PRETEND2_5_X /* pretend we're linux 2.5.x (for IO-wait) */ - //#define PRETEND8CPUS /* pretend we're smp with 8 ticsers (sic) */ - //#define PRETENDNOCAP /* use a terminal without essential caps */ --//#define PRETEND_NUMA /* pretend we've got some linux NUMA Nodes */ -+//#define PRETEND_NUMA /* pretend 4 (or 3 w/o OFF_NUMASKIP) Nodes */ - //#define RCFILE_NOERR /* rcfile errs silently default, vs. fatal */ - //#define RECALL_FIXED /* don't reorder saved strings if recalled */ - //#define RMAN_IGNORED /* don't consider auto right margin glitch */ -@@ -277,7 +278,7 @@ typedef struct CPU_t { - #ifndef CPU_ZEROTICS - SIC_t edge; // tics adjustment threshold boundary - #endif -- int id; // the cpu id number (0 - nn) -+ int id; // cpu number (0 - nn), or numa active flag - #ifndef NUMA_DISABLE - int node; // the numa node it belongs to - #endif -@@ -628,6 +629,9 @@ typedef struct WIN_t { - #if defined(PRETEND_NUMA) && defined(NUMA_DISABLE) - # error 'PRETEND_NUMA' confilcts with 'NUMA_DISABLE' - #endif -+#if defined(OFF_NUMASKIP) && defined(NUMA_DISABLE) -+# error 'OFF_NUMASKIP' confilcts with 'NUMA_DISABLE' -+#endif - #if (LRGBUFSIZ < SCREENMAX) - # error 'LRGBUFSIZ' must NOT be less than 'SCREENMAX' - #endif --- -1.7.9.2 - diff --git a/0036-pgrep-fails-to-show-full-command-line-with-au.patch b/0036-pgrep-fails-to-show-full-command-line-with-au.patch deleted file mode 100644 index 516196a..0000000 --- a/0036-pgrep-fails-to-show-full-command-line-with-au.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 6f1c04259d979ff04d129f235c950e48e94c7e76 Mon Sep 17 00:00:00 2001 -From: Elliott Forney -Date: Thu, 30 Jan 2014 21:36:26 +1100 -Subject: [PATCH] pgrep fails to show full command line with -au - -pgrep does not show the full command line when the -a and -u flags are -combined. The -a flag is ignored when the -u flag is used as well. - -In addition, the supplied patch by Elliot did not fix the problem -when invert flag ( -v ) was used; a very small tweak to the patch -fixed this problem as well. This problem existed before. - -Signed-off-by: Craig Small ---- - pgrep.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git pgrep.c pgrep.c -index 93a7c89..2a0ee19 100644 ---- pgrep.c -+++ pgrep.c -@@ -417,7 +417,7 @@ static PROCTAB *do_openproc (void) - PROCTAB *ptp; - int flags = 0; - -- if (opt_pattern || opt_full) -+ if (opt_pattern || opt_full || opt_longlong) - flags |= PROC_FILLCOM; - if (opt_ruid || opt_rgid) - flags |= PROC_FILLSTATUS; -@@ -538,7 +538,7 @@ static struct el * select_procs (int *num) - match = match_strlist (tty, opt_term); - } - } -- if (task.cmdline && (opt_longlong || opt_full) && match && opt_pattern) { -+ if (task.cmdline && (opt_longlong || opt_full) ) { - int i = 0; - int bytes = sizeof (cmdline) - 1; - --- -1.7.9.2 - diff --git a/0036-top-restore-the-former-behavior-after-stderr-redirec.patch b/0036-top-restore-the-former-behavior-after-stderr-redirec.patch deleted file mode 100644 index 15cbf66..0000000 --- a/0036-top-restore-the-former-behavior-after-stderr-redirec.patch +++ /dev/null @@ -1,124 +0,0 @@ -From bcf4f5a830ad008e0bd9341105db825a22ea3906 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Thu, 20 Feb 2014 00:00:00 -0600 -Subject: [PATCH] top: restore the former behavior after stderr redirect - -When top originally responded to the potential libnuma -stderr write, the library was consistently called with -each refresh cycle. That, in turn, guaranteed that any -warning message would be seen at program end by virtue -of: 1) having been issued before the 2nd refresh cycle -and; 2) benefiting from inherited /dev/null buffering. - -A later efficiency refactor meant the numa library may -not always be called with every refresh cycle. Rather, -it was only called if top was in one of two numa views -(the '2' or '3' toggles). That, in turn, resulted in a -loss of any warning message at program end unless numa -mode had been preserved in the rcfile. In other words, -if top was started normally then a single cycle stderr -redirect would have long passed by the time the '2' or -'3' toggle was activated. The warning message actually -was spewed but quickly lost to the full screen refresh -which follows all keyboard interactions with the user. - -This commit simply moves the restoration of our stderr -redirect to program end (instead of that first display -refresh). Now, any libnuma stderr warning message will -appear as the concluding output line upon quitting top -without regard to when any numa mode view was invoked. - -And since this technique might be useful in some other -context (as an example of how to 'buffer' stderr) it's -been generalized with its own #define. But to maximize -its usefulness, the original redirect should be issued -much earlier in pgm startup than top has chosen to do. - -Reference(s): -. original libnuma stderr response (msg seen) -commit 35dc6dcc49cc9cf8cff4300cb03a38dbe44c05db -. numa refractoring for efficiency (msg lost) -commit f12c0d5c6e84f9409ac3a73c066841a8ff5aab0b - -Signed-off-by: Jim Warner ---- - top/top.c | 25 +++++++++++++------------ - top/top.h | 1 + - 2 files changed, 14 insertions(+), 12 deletions(-) - -diff --git top/top.c top/top.c -index cb1a063..23dad92 100644 ---- top/top.c -+++ top/top.c -@@ -216,11 +216,13 @@ static int Autox_array [P_MAXPFLGS], - - /* Support for NUMA Node display, node expansion/targeting and - run-time dynamic linking with libnuma.so treated as a plugin */ -+#ifndef OFF_STDERROR -+static int Stderr_save = -1; -+#endif - static int Numa_node_tot; - static int Numa_node_sel = -1; - #ifndef NUMA_DISABLE - static void *Libnuma_handle; --static int Stderr_save = -1; - #if defined(PRETEND_NUMA) || defined(PRETEND8CPUS) - static int Numa_max_node(void) { return 3; } - #ifndef OFF_NUMASKIP -@@ -377,6 +379,15 @@ static void at_eoj (void) { - #endif - } - fflush(stdout); -+#ifndef OFF_STDERROR -+ /* we gotta reverse the stderr redirect which was employed during start up -+ and needed because the two libnuma 'weak' functions were useless to us! */ -+ if (-1 < Stderr_save) { -+ dup2(Stderr_save, fileno(stderr)); -+ close(Stderr_save); -+ Stderr_save = -1; // we'll be ending soon anyway but what the heck -+ } -+#endif - } // end: at_eoj - - -@@ -4070,7 +4081,7 @@ static void wins_stage_2 (void) { - // fill in missing Fieldstab members and build each window's columnhdr - zap_fieldstab(); - --#ifndef NUMA_DISABLE -+#ifndef OFF_STDERROR - /* there's a chance that damn libnuma may spew to stderr so we gotta - make sure he does not corrupt poor ol' top's first output screen! - Yes, he provides some overridable 'weak' functions to change such -@@ -5564,16 +5575,6 @@ static void frame_make (void) { - the normal non-interactive output optimization... */ - if (!Cap_can_goto) PSU_CLREOS(0); - --#ifndef NUMA_DISABLE -- /* we gotta reverse the stderr redirect which was employed in wins_stage_2 -- and needed because the two libnuma 'weak' functions were useless to us! */ -- if (-1 < Stderr_save) { -- dup2(Stderr_save, fileno(stderr)); -- close(Stderr_save); -- Stderr_save = -1; -- } --#endif -- - /* lastly, check auto-sized width needs for the next iteration */ - if (AUTOX_MODE && Autox_found) - widths_resize(); -diff --git top/top.h top/top.h -index 8e83b61..862568c 100644 ---- top/top.h -+++ top/top.h -@@ -43,6 +43,7 @@ - //#define OFF_HST_HASH /* use BOTH qsort+bsrch vs. hashing scheme */ - //#define OFF_NUMASKIP /* do NOT skip numa nodes if discontinuous */ - //#define OFF_SCROLLBK /* disable tty emulators scrollback buffer */ -+//#define OFF_STDERROR /* disable our stderr buffering (redirect) */ - //#define OFF_STDIOLBF /* disable our own stdout _IOFBF override */ - //#define PRETEND2_5_X /* pretend we're linux 2.5.x (for IO-wait) */ - //#define PRETEND8CPUS /* pretend we're smp with 8 ticsers (sic) */ --- -1.7.9.2 - diff --git a/0037-fail-on-null-string-for-arguments.patch b/0037-fail-on-null-string-for-arguments.patch deleted file mode 100644 index 62eb976..0000000 --- a/0037-fail-on-null-string-for-arguments.patch +++ /dev/null @@ -1,38 +0,0 @@ -From c304ffa994c2beacf3eabf9986a67d2065b60cc4 Mon Sep 17 00:00:00 2001 -From: Ryan Cox -Date: Mon, 28 Oct 2013 21:05:35 -0600 -Subject: [PATCH] fail on null string for arguments - ---- - pgrep.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git pgrep.c pgrep.c -index 6290ec5..38c380b 100644 ---- pgrep.c -+++ pgrep.c -@@ -142,13 +142,19 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - - static struct el *split_list (const char *restrict str, int (*convert)(const char *, struct el *)) - { -- char *copy = xstrdup (str); -- char *ptr = copy; -+ char *copy; -+ char *ptr; - char *sep_pos; - int i = 0; - int size = 0; - struct el *list = NULL; - -+ if (str[0] == '\0') -+ return NULL; -+ -+ copy = xstrdup (str); -+ ptr = copy; -+ - do { - if (i == size) { - size = size * 5 / 4 + 4; --- -1.7.9.2 - diff --git a/0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch b/0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch deleted file mode 100644 index 1a7f52a..0000000 --- a/0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch +++ /dev/null @@ -1,1115 +0,0 @@ -Based on 24f1fbd9d051353dd8ebde048f1903d68834af74 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Tue, 25 Feb 2014 00:00:00 -0600 -Subject: [PATCH] top: avoid name conflict in the next version of stdlib - -Since its inception top has always used enumerators to -identify displayable fields. They've taken the form of -P_PID, etc. As it turns out, something has changed for -libc6-dev versions beyond 2.17-93 wherein 'P_PID' will -now be exposed via stdlib.h. I have not pinpointed the -exact cause but it may depend on header include order. - -This patch just trades top's long standing 'P_' prefix -convention for that of 'EU_' (short for enumerator). I -cannot find *any* header under /usr/include/ currently -utilizing this particular three character combination. - -And as a further safeguard top will henceforth include -'system' specific headers after the standard includes. - -Reference(s): -http://www.freelists.org/post/procps/top-wont-compile-anymore - -Signed-off-by: Jim Warner ---- - top/top.c | 290 +++++++++++++++++++++++++++++----------------------------- - top/top.h | 46 ++++----- - top/top_nls.c | 210 +++++++++++++++++++++--------------------- - 3 files changed, 273 insertions(+), 273 deletions(-) - -diff --git top/top.c top/top.c -index 23dad92..ca3d24a 100644 ---- top/top.c -+++ top/top.c -@@ -18,12 +18,6 @@ - * Sami Kerola, - */ - --#include --#include --#include --#include --#include -- - #include - #include - #ifndef NUMA_DISABLE -@@ -37,7 +31,7 @@ - #include - #include - #include --#include // foul sob, defines all sorts of stuff... -+#include // foul sob, defines all sorts of stuff... - #undef tab - #undef TTY - #include -@@ -45,6 +39,12 @@ - #include - #include - -+#include -+#include -+#include // also available via -+#include -+#include // also available via -+ - #include "../include/fileutils.h" - #include "../include/nls.h" - -@@ -201,10 +201,10 @@ static int *PHash_sav = HHash_one, / - - /* Support for automatically sized fixed-width column expansions. - * (hopefully, the macros help clarify/document our new 'feature') */ --static int Autox_array [P_MAXPFLGS], -+static int Autox_array [EU_MAXPFLGS], - Autox_found; --#define AUTOX_NO P_MAXPFLGS --#define AUTOX_COL(f) if (P_MAXPFLGS > f) Autox_array[f] = Autox_found = 1 -+#define AUTOX_NO EU_MAXPFLGS -+#define AUTOX_COL(f) if (EU_MAXPFLGS > f) Autox_array[f] = Autox_found = 1 - #define AUTOX_MODE (0 > Rc.fixed_widest) - - /* Support for scale_mem and scale_num (to avoid duplication. */ -@@ -1688,9 +1688,9 @@ static FLD_t Fieldstab[] = { - a -1 width represents variable width columns - a 0 width represents columns set once at startup (see zap_fieldstab) - .lflg anomalies: -- P_UED, L_NONE - natural outgrowth of 'stat()' in readproc (euid) -- P_CPU, L_stat - never filled by libproc, but requires times (pcpu) -- P_CMD, L_stat - may yet require L_CMDLINE in calibrate_fields (cmd/cmdline) -+ EU_UED, L_NONE - natural outgrowth of 'stat()' in readproc (euid) -+ EU_CPU, L_stat - never filled by libproc, but requires times (pcpu) -+ EU_CMD, L_stat - may yet require L_CMDLINE in calibrate_fields (cmd/cmdline) - L_EITHER - must L_status, else L_stat == 64-bit math (__udivdi3) on 32-bit ! - - .width .scale .align .sort .lflg -@@ -1715,11 +1715,11 @@ static FLD_t Fieldstab[] = { - { 0, -1, A_right, SF(CPN), L_stat }, - { 0, -1, A_right, SF(CPU), L_stat }, - { 6, -1, A_right, SF(TME), L_stat }, -- { 9, -1, A_right, SF(TME), L_stat }, // P_TM2 slot -+ { 9, -1, A_right, SF(TME), L_stat }, // EU_TM2 slot - #ifdef BOOST_PERCNT -- { 5, -1, A_right, SF(RES), L_statm }, // P_MEM slot -+ { 5, -1, A_right, SF(RES), L_statm }, // EU_MEM slot - #else -- { 4, -1, A_right, SF(RES), L_statm }, // P_MEM slot -+ { 4, -1, A_right, SF(RES), L_statm }, // EU_MEM slot - #endif - #ifndef NOBOOST_MEMS - { 7, SK_Kb, A_right, SF(VRT), L_statm }, -@@ -1879,10 +1879,10 @@ static void build_headers (void) { - w->hdrcaplen += strlen(Caps_off) + strlen(w->capclr_msg); - } - #else -- if (P_MAXPFLGS <= f) continue; -+ if (EU_MAXPFLGS <= f) continue; - #endif -- if (P_WCH == f) needpsdb = 1; -- if (P_CMD == f && CHKw(w, Show_CMDLIN)) Frames_libflags |= L_CMDLINE; -+ if (EU_WCH == f) needpsdb = 1; -+ if (EU_CMD == f && CHKw(w, Show_CMDLIN)) Frames_libflags |= L_CMDLINE; - Frames_libflags |= Fieldstab[w->procflgs[i]].lflg; - s = scat(s, justify_pad(N_col(f) - , VARcol(f) ? w->varcolsz : Fieldstab[f].width -@@ -1905,7 +1905,7 @@ static void build_headers (void) { - // we must also accommodate an out of view sort field... - f = w->rc.sortindx; - Frames_libflags |= Fieldstab[f].lflg; -- if (P_CMD == f && CHKw(w, Show_CMDLIN)) Frames_libflags |= L_CMDLINE; -+ if (EU_CMD == f && CHKw(w, Show_CMDLIN)) Frames_libflags |= L_CMDLINE; - } // end: VIZISw(w) - - if (Rc.mode_altscr) w = w->next; -@@ -1958,16 +1958,16 @@ static void calibrate_fields (void) { - if (VIZISw(w)) { - w->hdrcaplen = 0; // really only used with USE_X_COLHDR - // build window's pflgsall array, establish upper bounds for maxpflgs -- for (i = 0, w->totpflgs = 0; i < P_MAXPFLGS; i++) { -+ for (i = 0, w->totpflgs = 0; i < EU_MAXPFLGS; i++) { - if (FLDviz(w, i)) { - f = FLDget(w, i); - #ifdef USE_X_COLHDR - w->pflgsall[w->totpflgs++] = f; - #else - if (CHKw(w, Show_HICOLS) && f == w->rc.sortindx) { -- w->pflgsall[w->totpflgs++] = X_XON; -+ w->pflgsall[w->totpflgs++] = EU_XON; - w->pflgsall[w->totpflgs++] = f; -- w->pflgsall[w->totpflgs++] = X_XOF; -+ w->pflgsall[w->totpflgs++] = EU_XOF; - } else - w->pflgsall[w->totpflgs++] = f; - #endif -@@ -1983,7 +1983,7 @@ static void calibrate_fields (void) { - f = w->pflgsall[i + w->begpflg]; - w->procflgs[i] = f; - #ifndef USE_X_COLHDR -- if (P_MAXPFLGS <= f) continue; -+ if (EU_MAXPFLGS <= f) continue; - #endif - h = N_col(f); - len = (VARcol(f) ? (int)strlen(h) : Fieldstab[f].width) + COLPADSIZ; -@@ -1993,7 +1993,7 @@ static void calibrate_fields (void) { - s = scat(s, fmtmk("%*.*s", len, len, h)); - } - #ifndef USE_X_COLHDR -- if (X_XON == w->procflgs[i - 1]) --i; -+ if (EU_XON == w->procflgs[i - 1]) --i; - #endif - - /* establish the final maxpflgs and prepare to grow the variable column -@@ -2010,7 +2010,7 @@ static void calibrate_fields (void) { - for (i = w->totpflgs - 1; -1 < i; i--) { - f = w->pflgsall[i]; - #ifndef USE_X_COLHDR -- if (P_MAXPFLGS <= f) { w->endpflg = i; continue; } -+ if (EU_MAXPFLGS <= f) { w->endpflg = i; continue; } - #endif - h = N_col(f); - len = (VARcol(f) ? (int)strlen(h) : Fieldstab[f].width) + COLPADSIZ; -@@ -2019,7 +2019,7 @@ static void calibrate_fields (void) { - w->endpflg = i; - } - #ifndef USE_X_COLHDR -- if (X_XOF == w->pflgsall[w->endpflg]) ++w->endpflg; -+ if (EU_XOF == w->pflgsall[w->endpflg]) ++w->endpflg; - #endif - } // end: if (VIZISw(w)) - -@@ -2076,10 +2076,10 @@ static void display_fields (int focus, i - int rmax = Screen_rows - yRSVD; // total useable rows - static int col_sav, row_sav; - -- i = (P_MAXPFLGS % mxCOL) ? 1 : 0; -- if (rmax < i + (P_MAXPFLGS / mxCOL)) mkERR; -- i = P_MAXPFLGS / rmax; -- if (P_MAXPFLGS % rmax) ++i; -+ i = (EU_MAXPFLGS % mxCOL) ? 1 : 0; -+ if (rmax < i + (EU_MAXPFLGS / mxCOL)) mkERR; -+ i = EU_MAXPFLGS / rmax; -+ if (EU_MAXPFLGS % rmax) ++i; - if (i > 1) { cmax /= i; xadd = 1; } - if (cmax > xTOTL) cmax = xTOTL; - smax = cmax - xPRFX; -@@ -2094,7 +2094,7 @@ static void display_fields (int focus, i - } - fflush(stdout); - -- for (i = 0; i < P_MAXPFLGS; ++i) { -+ for (i = 0; i < EU_MAXPFLGS; ++i) { - int b = FLDviz(w, i), x = (i / rmax) * cmax, y = (i % rmax) + yRSVD; - const char *e = (i == focus && extend) ? w->capclr_hdr : ""; - FLG_t f = FLDget(w, i); -@@ -2169,7 +2169,7 @@ signify_that: - if (i > 0) { --i; if (p) swapEM } - break; - case kbd_DOWN: -- if (i + 1 < P_MAXPFLGS) { ++i; if (p) swapEM } -+ if (i + 1 < EU_MAXPFLGS) { ++i; if (p) swapEM } - break; - case kbd_LEFT: - case kbd_ENTER: -@@ -2184,7 +2184,7 @@ signify_that: - break; - case kbd_END: - case kbd_PGDN: -- if (!p) i = P_MAXPFLGS - 1; -+ if (!p) i = EU_MAXPFLGS - 1; - break; - case kbd_SPACE: - case 'd': -@@ -2222,7 +2222,7 @@ static inline void widths_resize (void) - - // next var may also be set by the guys that actually truncate stuff - Autox_found = 0; -- for (i = 0; i < P_MAXPFLGS; i++) { -+ for (i = 0; i < EU_MAXPFLGS; i++) { - if (Autox_array[i]) { - Fieldstab[i].width++; - Autox_array[i] = 0; -@@ -2242,58 +2242,58 @@ static void zap_fieldstab (void) { - char buf[8]; - - if (!once) { -- Fieldstab[P_PID].width = Fieldstab[P_PPD].width -- = Fieldstab[P_PGD].width = Fieldstab[P_SID].width -- = Fieldstab[P_TGD].width = Fieldstab[P_TPG].width = 5; -+ Fieldstab[EU_PID].width = Fieldstab[EU_PPD].width -+ = Fieldstab[EU_PGD].width = Fieldstab[EU_SID].width -+ = Fieldstab[EU_TGD].width = Fieldstab[EU_TPG].width = 5; - if (5 < (digits = get_pid_digits())) { - if (10 < digits) error_exit(N_txt(FAIL_widepid_txt)); -- Fieldstab[P_PID].width = Fieldstab[P_PPD].width -- = Fieldstab[P_PGD].width = Fieldstab[P_SID].width -- = Fieldstab[P_TGD].width = Fieldstab[P_TPG].width = digits; -+ Fieldstab[EU_PID].width = Fieldstab[EU_PPD].width -+ = Fieldstab[EU_PGD].width = Fieldstab[EU_SID].width -+ = Fieldstab[EU_TGD].width = Fieldstab[EU_TPG].width = digits; - } - once = 1; - } - - /*** hotplug_acclimated ***/ - -- Fieldstab[P_CPN].width = 1; -+ Fieldstab[EU_CPN].width = 1; - if (1 < (digits = (unsigned)snprintf(buf, sizeof(buf), "%u", (unsigned)smp_num_cpus))) { - if (5 < digits) error_exit(N_txt(FAIL_widecpu_txt)); -- Fieldstab[P_CPN].width = digits; -+ Fieldstab[EU_CPN].width = digits; - } - - #ifdef BOOST_PERCNT - Cpu_pmax = 99.9; -- Fieldstab[P_CPU].width = 5; -+ Fieldstab[EU_CPU].width = 5; - if (Rc.mode_irixps && smp_num_cpus > 1 && !Thread_mode) { - Cpu_pmax = 100.0 * smp_num_cpus; - if (smp_num_cpus > 1000) { - if (Cpu_pmax > 9999999.0) Cpu_pmax = 9999999.0; -- Fieldstab[P_CPU].width = 8; -+ Fieldstab[EU_CPU].width = 8; - } else if (smp_num_cpus > 100) { - if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; -- Fieldstab[P_CPU].width = 7; -+ Fieldstab[EU_CPU].width = 7; - } else if (smp_num_cpus > 10) { - if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; -- Fieldstab[P_CPU].width = 6; -+ Fieldstab[EU_CPU].width = 6; - } else { - if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; - } - } - #else - Cpu_pmax = 99.9; -- Fieldstab[P_CPU].width = 4; -+ Fieldstab[EU_CPU].width = 4; - if (Rc.mode_irixps && smp_num_cpus > 1 && !Thread_mode) { - Cpu_pmax = 100.0 * smp_num_cpus; - if (smp_num_cpus > 1000) { - if (Cpu_pmax > 9999999.0) Cpu_pmax = 9999999.0; -- Fieldstab[P_CPU].width = 7; -+ Fieldstab[EU_CPU].width = 7; - } else if (smp_num_cpus > 100) { - if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; -- Fieldstab[P_CPU].width = 6; -+ Fieldstab[EU_CPU].width = 6; - } else if (smp_num_cpus > 10) { - if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; -- Fieldstab[P_CPU].width = 5; -+ Fieldstab[EU_CPU].width = 5; - } else { - if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; - } -@@ -2303,26 +2303,26 @@ static void zap_fieldstab (void) { - /* and accommodate optional wider non-scalable columns (maybe) */ - if (!AUTOX_MODE) { - int i; -- Fieldstab[P_UED].width = Fieldstab[P_URD].width -- = Fieldstab[P_USD].width = Fieldstab[P_GID].width -+ Fieldstab[EU_UED].width = Fieldstab[EU_URD].width -+ = Fieldstab[EU_USD].width = Fieldstab[EU_GID].width - = Rc.fixed_widest ? 5 + Rc.fixed_widest : 5; -- Fieldstab[P_UEN].width = Fieldstab[P_URN].width -- = Fieldstab[P_USN].width = Fieldstab[P_GRP].width -+ Fieldstab[EU_UEN].width = Fieldstab[EU_URN].width -+ = Fieldstab[EU_USN].width = Fieldstab[EU_GRP].width - = Rc.fixed_widest ? 8 + Rc.fixed_widest : 8; -- Fieldstab[P_TTY].width -+ Fieldstab[EU_TTY].width - = Rc.fixed_widest ? 8 + Rc.fixed_widest : 8; -- Fieldstab[P_WCH].width -+ Fieldstab[EU_WCH].width - = Rc.fixed_widest ? 10 + Rc.fixed_widest : 10; -- for (i = P_NS1; i < P_NS1 + NUM_NS; i++) -+ for (i = EU_NS1; i < EU_NS1 + NUM_NS; i++) - Fieldstab[i].width - = Rc.fixed_widest ? 10 + Rc.fixed_widest : 10; - } - - /* plus user selectable scaling */ -- Fieldstab[P_VRT].scale = Fieldstab[P_SWP].scale -- = Fieldstab[P_RES].scale = Fieldstab[P_COD].scale -- = Fieldstab[P_DAT].scale = Fieldstab[P_SHR].scale -- = Fieldstab[P_USE].scale = Rc.task_mscale; -+ Fieldstab[EU_VRT].scale = Fieldstab[EU_SWP].scale -+ = Fieldstab[EU_RES].scale = Fieldstab[EU_COD].scale -+ = Fieldstab[EU_DAT].scale = Fieldstab[EU_SHR].scale -+ = Fieldstab[EU_USE].scale = Rc.task_mscale; - - // lastly, ensure we've got proper column headers... - calibrate_fields(); -@@ -3510,8 +3510,8 @@ static void configs_read (void) { - default: // and future versions? - if (strlen(w->rc.fieldscur) != sizeof(DEF_FIELDS) - 1) - goto default_or_error; -- for (x = 0; x < P_MAXPFLGS; ++x) -- if (P_MAXPFLGS <= FLDget(w, x)) -+ for (x = 0; x < EU_MAXPFLGS; ++x) -+ if (EU_MAXPFLGS <= FLDget(w, x)) - goto default_or_error; - break; - } -@@ -3690,16 +3690,16 @@ static void parse_args (char **args) { - else error_exit(fmtmk(N_fmt(MISSING_args_fmt), ch)); - if (*cp == '+') { SETw(Curwin, Qsrt_NORMAL); ++cp; } - else if (*cp == '-') { OFFw(Curwin, Qsrt_NORMAL); ++cp; } -- for (i = 0; i < P_MAXPFLGS; i++) -+ for (i = 0; i < EU_MAXPFLGS; i++) - if (!STRCMP(cp, N_col(i))) break; -- if (i == P_MAXPFLGS) -+ if (i == EU_MAXPFLGS) - error_exit(fmtmk(N_fmt(XTRA_badflds_fmt), cp)); - OFFw(Curwin, Show_FOREST); - Curwin->rc.sortindx = i; - cp += strlen(cp); - break; - case 'O': -- for (i = 0; i < P_MAXPFLGS; i++) -+ for (i = 0; i < EU_MAXPFLGS; i++) - puts(N_col(i)); - bye_bye(NULL); - case 'p': -@@ -4263,9 +4263,9 @@ static void other_selection (int ch) { - } - ops = *(pval); - *(pval++) = '\0'; -- for (enu = 0; enu < P_MAXPFLGS; enu++) // #4: is this a valid field? -+ for (enu = 0; enu < EU_MAXPFLGS; enu++) // #4: is this a valid field? - if (!STRCMP(N_col(enu), glob)) break; -- if (enu == P_MAXPFLGS) { -+ if (enu == EU_MAXPFLGS) { - show_msg(fmtmk(N_fmt(XTRA_badflds_fmt), glob)); - return; - } -@@ -4540,7 +4540,7 @@ static void keys_task (int ch) { - if (*p == w->rc.sortindx) { - --p; - #ifndef USE_X_COLHDR -- if (P_MAXPFLGS < *p) --p; -+ if (EU_MAXPFLGS < *p) --p; - #endif - if (p >= w->procflgs) { - w->rc.sortindx = *p; -@@ -4561,7 +4561,7 @@ static void keys_task (int ch) { - if (*p == w->rc.sortindx) { - ++p; - #ifndef USE_X_COLHDR -- if (P_MAXPFLGS < *p) ++p; -+ if (EU_MAXPFLGS < *p) ++p; - #endif - if (p < w->procflgs + w->maxpflgs) { - w->rc.sortindx = *p; -@@ -4630,7 +4630,7 @@ static void keys_task (int ch) { - case 'V': - if (VIZCHKw(w)) { - TOGw(w, Show_FOREST); -- if (!ENUviz(w, P_CMD)) -+ if (!ENUviz(w, EU_CMD)) - show_msg(fmtmk(N_fmt(FOREST_modes_fmt) , CHKw(w, Show_FOREST) - ? N_txt(ON_word_only_txt) : N_txt(OFF_one_word_txt))); - } -@@ -4750,13 +4750,13 @@ static void keys_window (int ch) { - w->varcolbeg -= SCROLLAMT; - else if (0 < w->begpflg) { - w->begpflg -= 1; -- if (P_MAXPFLGS < w->pflgsall[w->begpflg]) w->begpflg -= 2; -+ if (EU_MAXPFLGS < w->pflgsall[w->begpflg]) w->begpflg -= 2; - } - } - #else - if (VIZCHKw(w)) if (0 < w->begpflg) { - w->begpflg -= 1; -- if (P_MAXPFLGS < w->pflgsall[w->begpflg]) w->begpflg -= 2; -+ if (EU_MAXPFLGS < w->pflgsall[w->begpflg]) w->begpflg -= 2; - } - #endif - break; -@@ -4767,14 +4767,14 @@ static void keys_window (int ch) { - w->varcolbeg += SCROLLAMT; - if (0 > w->varcolbeg) w->varcolbeg = 0; - } else if (w->begpflg + 1 < w->totpflgs) { -- if (P_MAXPFLGS < w->pflgsall[w->begpflg]) -+ if (EU_MAXPFLGS < w->pflgsall[w->begpflg]) - w->begpflg += (w->begpflg + 3 < w->totpflgs) ? 3 : 0; - else w->begpflg += 1; - } - } - #else - if (VIZCHKw(w)) if (w->begpflg + 1 < w->totpflgs) { -- if (P_MAXPFLGS < w->pflgsall[w->begpflg]) -+ if (EU_MAXPFLGS < w->pflgsall[w->begpflg]) - w->begpflg += (w->begpflg + 3 < w->totpflgs) ? 3 : 0; - else w->begpflg += 1; - } -@@ -4831,19 +4831,19 @@ static void keys_xtra (int ch) { - we would just whack do_key's key_tab entry and this function... */ - switch (ch) { - case 'M': -- w->rc.sortindx = P_MEM; -+ w->rc.sortindx = EU_MEM; - // xmsg = "Memory"; - break; - case 'N': -- w->rc.sortindx = P_PID; -+ w->rc.sortindx = EU_PID; - // xmsg = "Numerical"; - break; - case 'P': -- w->rc.sortindx = P_CPU; -+ w->rc.sortindx = EU_CPU; - // xmsg = "CPU"; - break; - case 'T': -- w->rc.sortindx = P_TM2; -+ w->rc.sortindx = EU_TM2; - // xmsg = "Time"; - break; - default: // keep gcc happy -@@ -5223,30 +5223,30 @@ static const char *task_show (const WIN_ - switch (i) { - #ifndef USE_X_COLHDR - // these 2 aren't real procflgs, they're used in column highlighting! -- case X_XON: -- case X_XOF: -+ case EU_XON: -+ case EU_XOF: - cp = NULL; - if (!CHKw(q, INFINDS_xxx | NOHIFND_xxx | NOHISEL_xxx)) { - /* treat running tasks specially - entire row may get highlighted - so we needn't turn it on and we MUST NOT turn it off */ - if (!('R' == p->state && CHKw(q, Show_HIROWS))) -- cp = (X_XON == i ? q->capclr_rowhigh : q->capclr_rownorm); -+ cp = (EU_XON == i ? q->capclr_rowhigh : q->capclr_rownorm); - } - break; - #endif -- case P_CGR: -+ case EU_CGR: - makeVAR(p->cgroup[0]); - break; -- case P_CMD: -+ case EU_CMD: - makeVAR(forest_display(q, p)); - break; -- case P_COD: -+ case EU_COD: - cp = scale_mem(S, pages2K(p->trs), W, Jn); - break; -- case P_CPN: -+ case EU_CPN: - cp = make_num(p->processor, W, Jn, AUTOX_NO); - break; -- case P_CPU: -+ case EU_CPU: - { float u = (float)p->pcpu * Frame_etscale; - /* process can't use more %cpu than number of threads it has - ( thanks Jaromir Capik ) */ -@@ -5255,150 +5255,150 @@ static const char *task_show (const WIN_ - cp = scale_pcnt(u, W, Jn); - } - break; -- case P_DAT: -+ case EU_DAT: - cp = scale_mem(S, pages2K(p->drs), W, Jn); - break; -- case P_DRT: -+ case EU_DRT: - cp = scale_num(p->dt, W, Jn); - break; -- case P_ENV: -+ case EU_ENV: - makeVAR(p->environ[0]); - break; -- case P_FL1: -+ case EU_FL1: - cp = scale_num(p->maj_flt, W, Jn); - break; -- case P_FL2: -+ case EU_FL2: - cp = scale_num(p->min_flt, W, Jn); - break; -- case P_FLG: -+ case EU_FLG: - cp = make_str(hex_make(p->flags, 1), W, Js, AUTOX_NO); - break; -- case P_FV1: -+ case EU_FV1: - cp = scale_num(p->maj_delta, W, Jn); - break; -- case P_FV2: -+ case EU_FV2: - cp = scale_num(p->min_delta, W, Jn); - break; -- case P_GID: -- cp = make_num(p->egid, W, Jn, P_GID); -+ case EU_GID: -+ cp = make_num(p->egid, W, Jn, EU_GID); - break; -- case P_GRP: -- cp = make_str(p->egroup, W, Js, P_GRP); -+ case EU_GRP: -+ cp = make_str(p->egroup, W, Js, EU_GRP); - break; -- case P_MEM: -+ case EU_MEM: - cp = scale_pcnt((float)pages2K(p->resident) * 100 / kb_main_total, W, Jn); - break; -- case P_NCE: -+ case EU_NCE: - cp = make_num(p->nice, W, Jn, AUTOX_NO); - break; -- case P_NS1: // IPCNS -- case P_NS2: // MNTNS -- case P_NS3: // NETNS -- case P_NS4: // PIDNS -- case P_NS5: // USERNS -- case P_NS6: // UTSNS -- { long ino = p->ns[i - P_NS1]; -+ case EU_NS1: // IPCNS -+ case EU_NS2: // MNTNS -+ case EU_NS3: // NETNS -+ case EU_NS4: // PIDNS -+ case EU_NS5: // USERNS -+ case EU_NS6: // UTSNS -+ { long ino = p->ns[i - EU_NS1]; - if (ino > 0) cp = make_num(ino, W, Jn, i); - else cp = make_str("-", W, Js, i); - } - break; - #ifdef OOMEM_ENABLE -- case P_OOA: -+ case EU_OOA: - cp = make_num(p->oom_adj, W, Jn, AUTOX_NO); - break; -- case P_OOM: -+ case EU_OOM: - cp = make_num(p->oom_score, W, Jn, AUTOX_NO); - break; - #endif -- case P_PGD: -+ case EU_PGD: - cp = make_num(p->pgrp, W, Jn, AUTOX_NO); - break; -- case P_PID: -+ case EU_PID: - cp = make_num(p->tid, W, Jn, AUTOX_NO); - break; -- case P_PPD: -+ case EU_PPD: - cp = make_num(p->ppid, W, Jn, AUTOX_NO); - break; -- case P_PRI: -+ case EU_PRI: - if (-99 > p->priority || 999 < p->priority) { - cp = make_str("rt", W, Jn, AUTOX_NO); - } else - cp = make_num(p->priority, W, Jn, AUTOX_NO); - break; -- case P_RES: -+ case EU_RES: - cp = scale_mem(S, pages2K(p->resident), W, Jn); - break; -- case P_SGD: -+ case EU_SGD: - makeVAR(p->supgid); - break; -- case P_SGN: -+ case EU_SGN: - makeVAR(p->supgrp); - break; -- case P_SHR: -+ case EU_SHR: - cp = scale_mem(S, pages2K(p->share), W, Jn); - break; -- case P_SID: -+ case EU_SID: - cp = make_num(p->session, W, Jn, AUTOX_NO); - break; -- case P_STA: -+ case EU_STA: - cp = make_chr(p->state, W, Js); - break; -- case P_SWP: -+ case EU_SWP: - cp = scale_mem(S, p->vm_swap, W, Jn); - break; -- case P_TGD: -+ case EU_TGD: - cp = make_num(p->tgid, W, Jn, AUTOX_NO); - break; -- case P_THD: -+ case EU_THD: - cp = make_num(p->nlwp, W, Jn, AUTOX_NO); - break; -- case P_TM2: -- case P_TME: -+ case EU_TM2: -+ case EU_TME: - { TIC_t t = p->utime + p->stime; - if (CHKw(q, Show_CTIMES)) t += (p->cutime + p->cstime); - cp = scale_tics(t, W, Jn); - } - break; -- case P_TPG: -+ case EU_TPG: - cp = make_num(p->tpgid, W, Jn, AUTOX_NO); - break; -- case P_TTY: -+ case EU_TTY: - { char tmp[SMLBUFSIZ]; - dev_to_tty(tmp, W, p->tty, p->tid, ABBREV_DEV); -- cp = make_str(tmp, W, Js, P_TTY); -+ cp = make_str(tmp, W, Js, EU_TTY); - } - break; -- case P_UED: -- cp = make_num(p->euid, W, Jn, P_UED); -+ case EU_UED: -+ cp = make_num(p->euid, W, Jn, EU_UED); - break; -- case P_UEN: -- cp = make_str(p->euser, W, Js, P_UEN); -+ case EU_UEN: -+ cp = make_str(p->euser, W, Js, EU_UEN); - break; -- case P_URD: -- cp = make_num(p->ruid, W, Jn, P_URD); -+ case EU_URD: -+ cp = make_num(p->ruid, W, Jn, EU_URD); - break; -- case P_URN: -- cp = make_str(p->ruser, W, Js, P_URN); -+ case EU_URN: -+ cp = make_str(p->ruser, W, Js, EU_URN); - break; -- case P_USD: -- cp = make_num(p->suid, W, Jn, P_USD); -+ case EU_USD: -+ cp = make_num(p->suid, W, Jn, EU_USD); - break; -- case P_USE: -+ case EU_USE: - cp = scale_mem(S, (p->vm_swap + pages2K(p->resident)), W, Jn); - break; -- case P_USN: -- cp = make_str(p->suser, W, Js, P_USN); -+ case EU_USN: -+ cp = make_str(p->suser, W, Js, EU_USN); - break; -- case P_VRT: -+ case EU_VRT: - cp = scale_mem(S, pages2K(p->size), W, Jn); - break; -- case P_WCH: -+ case EU_WCH: - { const char *u; - if (No_ksyms) - u = hex_make(p->wchan, 0); - else - u = lookup_wchan(p->wchan, p->tid); -- cp = make_str(u, W, Js, P_WCH); -+ cp = make_str(u, W, Js, EU_WCH); - } - break; - default: // keep gcc happy ---- top/top.h -+++ top/top.h -@@ -181,28 +181,28 @@ char *strcasestr(const char *haystack, const char *needle); - /* Flags for each possible field (and then some) -- - these MUST be kept in sync with the FLD_t Fieldstab[] array !! */ - enum pflag { -- P_PID = 0, P_PPD, -- P_UED, P_UEN, P_URD, P_URN, P_USD, P_USN, -- P_GID, P_GRP, P_PGD, P_TTY, P_TPG, P_SID, -- P_PRI, P_NCE, P_THD, -- P_CPN, P_CPU, P_TME, P_TM2, -- P_MEM, P_VRT, P_SWP, P_RES, P_COD, P_DAT, P_SHR, -- P_FL1, P_FL2, P_DRT, -- P_STA, P_CMD, P_WCH, P_FLG, P_CGR, -- P_SGD, P_SGN, P_TGD, -+ EU_PID = 0, EU_PPD, -+ EU_UED, EU_UEN, EU_URD, EU_URN, EU_USD, EU_USN, -+ EU_GID, EU_GRP, EU_PGD, EU_TTY, EU_TPG, EU_SID, -+ EU_PRI, EU_NCE, EU_THD, -+ EU_CPN, EU_CPU, EU_TME, EU_TM2, -+ EU_MEM, EU_VRT, EU_SWP, EU_RES, EU_COD, EU_DAT, EU_SHR, -+ EU_FL1, EU_FL2, EU_DRT, -+ EU_STA, EU_CMD, EU_WCH, EU_FLG, EU_CGR, -+ EU_SGD, EU_SGN, EU_TGD, - #ifdef OOMEM_ENABLE -- P_OOA, P_OOM, -+ EU_OOA, EU_OOM, - #endif -- P_ENV, -- P_FV1, P_FV2, -- P_USE, -- P_NS1, P_NS2, P_NS3, P_NS4, P_NS5, P_NS6, -+ EU_ENV, -+ EU_FV1, EU_FV2, -+ EU_USE, -+ EU_NS1, EU_NS2, EU_NS3, EU_NS4, EU_NS5, EU_NS6, - #ifdef USE_X_COLHDR - // not really pflags, used with tbl indexing -- P_MAXPFLGS -+ EU_MAXPFLGS - #else - // not really pflags, used with tbl indexing & col highlighting -- P_MAXPFLGS, X_XON, X_XOF -+ EU_MAXPFLGS, EU_XON, EU_XOF - #endif - }; - -@@ -446,7 +446,7 @@ typedef struct WIN_t { - #define VARright(w) (1 == w->maxpflgs && VARcol(w->procflgs[0])) - #else - #define VARright(w) ((1 == w->maxpflgs && VARcol(w->procflgs[0])) || \ -- (3 == w->maxpflgs && X_XON == w->procflgs[0] && VARcol(w->procflgs[1]))) -+ (3 == w->maxpflgs && EU_XON == w->procflgs[0] && VARcol(w->procflgs[1]))) - #endif - #define VARleft(w) (w->varcolbeg && VARright(w)) - #define SCROLLAMT 8 -@@ -476,7 +476,7 @@ typedef struct WIN_t { - /* Used to create *most* of the sort callback functions - note: some of the callbacks are NOT your father's callbacks, they're - highly optimized to save them ol' precious cycles! */ --#define SCB_NAME(f) sort_P_ ## f -+#define SCB_NAME(f) sort_EU_ ## f - #define SCB_NUM1(f,n) \ - static int SCB_NAME(f) (const proc_t **P, const proc_t **Q) { \ - if ( (*P)->n < (*Q)->n ) return SORT_lt; \ -@@ -598,16 +598,16 @@ typedef struct WIN_t { - /* The default values for the local config file */ - #define DEF_RCFILE { \ - RCF_VERSION_ID, 0, 1, DEF_DELAY, 0, { \ -- { P_CPU, DEF_WINFLGS, 0, \ -+ { EU_CPU, DEF_WINFLGS, 0, \ - COLOR_RED, COLOR_RED, COLOR_YELLOW, COLOR_RED, \ - "Def", DEF_FIELDS }, \ -- { P_PID, DEF_WINFLGS, 0, \ -+ { EU_PID, DEF_WINFLGS, 0, \ - COLOR_CYAN, COLOR_CYAN, COLOR_WHITE, COLOR_CYAN, \ - "Job", JOB_FIELDS }, \ -- { P_MEM, DEF_WINFLGS, 0, \ -+ { EU_MEM, DEF_WINFLGS, 0, \ - COLOR_MAGENTA, COLOR_MAGENTA, COLOR_BLUE, COLOR_MAGENTA, \ - "Mem", MEM_FIELDS }, \ -- { P_UEN, DEF_WINFLGS, 0, \ -+ { EU_UEN, DEF_WINFLGS, 0, \ - COLOR_YELLOW, COLOR_YELLOW, COLOR_GREEN, COLOR_YELLOW, \ - "Usr", USR_FIELDS } \ - }, 0, SK_Kb, SK_Kb, 0 } -@@ -647,7 +647,7 @@ typedef struct WIN_t { - /* ( see the find_string function for the one true required protoype ) */ - /*------ Sort callbacks ------------------------------------------------*/ - /* for each possible field, in the form of: */ --/*atic int sort_P_XXX (const proc_t **P, const proc_t **Q); */ -+/*atic int sort_EU_XXX (const proc_t **P, const proc_t **Q); */ - /*------ Tiny useful routine(s) ----------------------------------------*/ - //atic const char *fmtmk (const char *fmts, ...); - //atic inline char *scat (char *dst, const char *src); -diff --git top/top_nls.c top/top_nls.c -index 1dd6d46..0f37d89 100644 ---- top/top_nls.c -+++ top/top_nls.c -@@ -94,8 +94,8 @@ - * + none of the important translator only comments will - * clutter and obscure the main program - */ --const char *Head_nlstab[P_MAXPFLGS]; --const char *Desc_nlstab[P_MAXPFLGS]; -+const char *Head_nlstab[EU_MAXPFLGS]; -+const char *Desc_nlstab[EU_MAXPFLGS]; - const char *Norm_nlstab[norm_MAX]; - const char *Uniq_nlstab[uniq_MAX]; - -@@ -121,162 +121,162 @@ static void build_two_nlstabs (void) { - . */ - - /* Translation Hint: maximum 'PID' = 5 */ -- Head_nlstab[P_PID] = _("PID"); -- Desc_nlstab[P_PID] = _("Process Id"); -+ Head_nlstab[EU_PID] = _("PID"); -+ Desc_nlstab[EU_PID] = _("Process Id"); - /* Translation Hint: maximum 'PPID' = 5 */ -- Head_nlstab[P_PPD] = _("PPID"); -- Desc_nlstab[P_PPD] = _("Parent Process pid"); -+ Head_nlstab[EU_PPD] = _("PPID"); -+ Desc_nlstab[EU_PPD] = _("Parent Process pid"); - /* Translation Hint: maximum 'UID' = 5 */ -- Head_nlstab[P_UED] = _("UID"); -- Desc_nlstab[P_UED] = _("Effective User Id"); -+ Head_nlstab[EU_UED] = _("UID"); -+ Desc_nlstab[EU_UED] = _("Effective User Id"); - /* Translation Hint: maximum 'USER' = 8 */ -- Head_nlstab[P_UEN] = _("USER"); -- Desc_nlstab[P_UEN] = _("Effective User Name"); -+ Head_nlstab[EU_UEN] = _("USER"); -+ Desc_nlstab[EU_UEN] = _("Effective User Name"); - /* Translation Hint: maximum 'RUID' = 5 */ -- Head_nlstab[P_URD] = _("RUID"); -- Desc_nlstab[P_URD] = _("Real User Id"); -+ Head_nlstab[EU_URD] = _("RUID"); -+ Desc_nlstab[EU_URD] = _("Real User Id"); - /* Translation Hint: maximum 'RUSER' = 8 */ -- Head_nlstab[P_URN] = _("RUSER"); -- Desc_nlstab[P_URN] = _("Real User Name"); -+ Head_nlstab[EU_URN] = _("RUSER"); -+ Desc_nlstab[EU_URN] = _("Real User Name"); - /* Translation Hint: maximum 'SUID' = 5 */ -- Head_nlstab[P_USD] = _("SUID"); -- Desc_nlstab[P_USD] = _("Saved User Id"); -+ Head_nlstab[EU_USD] = _("SUID"); -+ Desc_nlstab[EU_USD] = _("Saved User Id"); - /* Translation Hint: maximum 'SUSER' = 8 */ -- Head_nlstab[P_USN] = _("SUSER"); -- Desc_nlstab[P_USN] = _("Saved User Name"); -+ Head_nlstab[EU_USN] = _("SUSER"); -+ Desc_nlstab[EU_USN] = _("Saved User Name"); - /* Translation Hint: maximum 'GID' = 5 */ -- Head_nlstab[P_GID] = _("GID"); -- Desc_nlstab[P_GID] = _("Group Id"); -+ Head_nlstab[EU_GID] = _("GID"); -+ Desc_nlstab[EU_GID] = _("Group Id"); - /* Translation Hint: maximum 'GROUP' = 8 */ -- Head_nlstab[P_GRP] = _("GROUP"); -- Desc_nlstab[P_GRP] = _("Group Name"); -+ Head_nlstab[EU_GRP] = _("GROUP"); -+ Desc_nlstab[EU_GRP] = _("Group Name"); - /* Translation Hint: maximum 'PGRP' = 5 */ -- Head_nlstab[P_PGD] = _("PGRP"); -- Desc_nlstab[P_PGD] = _("Process Group Id"); -+ Head_nlstab[EU_PGD] = _("PGRP"); -+ Desc_nlstab[EU_PGD] = _("Process Group Id"); - /* Translation Hint: maximum 'TTY' = 8 */ -- Head_nlstab[P_TTY] = _("TTY"); -- Desc_nlstab[P_TTY] = _("Controlling Tty"); -+ Head_nlstab[EU_TTY] = _("TTY"); -+ Desc_nlstab[EU_TTY] = _("Controlling Tty"); - /* Translation Hint: maximum 'TPGID' = 5 */ -- Head_nlstab[P_TPG] = _("TPGID"); -- Desc_nlstab[P_TPG] = _("Tty Process Grp Id"); -+ Head_nlstab[EU_TPG] = _("TPGID"); -+ Desc_nlstab[EU_TPG] = _("Tty Process Grp Id"); - /* Translation Hint: maximum 'SID' = 5 */ -- Head_nlstab[P_SID] = _("SID"); -- Desc_nlstab[P_SID] = _("Session Id"); -+ Head_nlstab[EU_SID] = _("SID"); -+ Desc_nlstab[EU_SID] = _("Session Id"); - /* Translation Hint: maximum 'PR' = 3 */ -- Head_nlstab[P_PRI] = _("PR"); -- Desc_nlstab[P_PRI] = _("Priority"); -+ Head_nlstab[EU_PRI] = _("PR"); -+ Desc_nlstab[EU_PRI] = _("Priority"); - /* Translation Hint: maximum 'NI' = 3 */ -- Head_nlstab[P_NCE] = _("NI"); -- Desc_nlstab[P_NCE] = _("Nice Value"); -+ Head_nlstab[EU_NCE] = _("NI"); -+ Desc_nlstab[EU_NCE] = _("Nice Value"); - /* Translation Hint: maximum 'nTH' = 3 */ -- Head_nlstab[P_THD] = _("nTH"); -- Desc_nlstab[P_THD] = _("Number of Threads"); -+ Head_nlstab[EU_THD] = _("nTH"); -+ Desc_nlstab[EU_THD] = _("Number of Threads"); - /* Translation Hint: maximum 'P' = 1 */ -- Head_nlstab[P_CPN] = _("P"); -- Desc_nlstab[P_CPN] = _("Last Used Cpu (SMP)"); -+ Head_nlstab[EU_CPN] = _("P"); -+ Desc_nlstab[EU_CPN] = _("Last Used Cpu (SMP)"); - /* Translation Hint: maximum '%CPU' = 4 */ -- Head_nlstab[P_CPU] = _("%CPU"); -- Desc_nlstab[P_CPU] = _("CPU Usage"); -+ Head_nlstab[EU_CPU] = _("%CPU"); -+ Desc_nlstab[EU_CPU] = _("CPU Usage"); - /* Translation Hint: maximum '' = 6 */ -- Head_nlstab[P_TME] = _("TIME"); -- Desc_nlstab[P_TME] = _("CPU Time"); -+ Head_nlstab[EU_TME] = _("TIME"); -+ Desc_nlstab[EU_TME] = _("CPU Time"); - /* Translation Hint: maximum 'TIME+' = 9 */ -- Head_nlstab[P_TM2] = _("TIME+"); -- Desc_nlstab[P_TM2] = _("CPU Time, hundredths"); -+ Head_nlstab[EU_TM2] = _("TIME+"); -+ Desc_nlstab[EU_TM2] = _("CPU Time, hundredths"); - /* Translation Hint: maximum '%MEM' = 4 */ -- Head_nlstab[P_MEM] = _("%MEM"); -- Desc_nlstab[P_MEM] = _("Memory Usage (RES)"); -+ Head_nlstab[EU_MEM] = _("%MEM"); -+ Desc_nlstab[EU_MEM] = _("Memory Usage (RES)"); - /* Translation Hint: maximum 'VIRT' = 5 */ -- Head_nlstab[P_VRT] = _("VIRT"); -- Desc_nlstab[P_VRT] = _("Virtual Image (KiB)"); -+ Head_nlstab[EU_VRT] = _("VIRT"); -+ Desc_nlstab[EU_VRT] = _("Virtual Image (KiB)"); - /* Translation Hint: maximum 'SWAP' = 4 */ -- Head_nlstab[P_SWP] = _("SWAP"); -- Desc_nlstab[P_SWP] = _("Swapped Size (KiB)"); -+ Head_nlstab[EU_SWP] = _("SWAP"); -+ Desc_nlstab[EU_SWP] = _("Swapped Size (KiB)"); - /* Translation Hint: maximum 'RES' = 4 */ -- Head_nlstab[P_RES] = _("RES"); -- Desc_nlstab[P_RES] = _("Resident Size (KiB)"); -+ Head_nlstab[EU_RES] = _("RES"); -+ Desc_nlstab[EU_RES] = _("Resident Size (KiB)"); - /* Translation Hint: maximum 'CODE' = 4 */ -- Head_nlstab[P_COD] = _("CODE"); -- Desc_nlstab[P_COD] = _("Code Size (KiB)"); -+ Head_nlstab[EU_COD] = _("CODE"); -+ Desc_nlstab[EU_COD] = _("Code Size (KiB)"); - /* Translation Hint: maximum 'DATA' = 4 */ -- Head_nlstab[P_DAT] = _("DATA"); -- Desc_nlstab[P_DAT] = _("Data+Stack (KiB)"); -+ Head_nlstab[EU_DAT] = _("DATA"); -+ Desc_nlstab[EU_DAT] = _("Data+Stack (KiB)"); - /* Translation Hint: maximum 'SHR' = 4 */ -- Head_nlstab[P_SHR] = _("SHR"); -- Desc_nlstab[P_SHR] = _("Shared Memory (KiB)"); -+ Head_nlstab[EU_SHR] = _("SHR"); -+ Desc_nlstab[EU_SHR] = _("Shared Memory (KiB)"); - /* Translation Hint: maximum 'nMaj' = 4 */ -- Head_nlstab[P_FL1] = _("nMaj"); -- Desc_nlstab[P_FL1] = _("Major Page Faults"); -+ Head_nlstab[EU_FL1] = _("nMaj"); -+ Desc_nlstab[EU_FL1] = _("Major Page Faults"); - /* Translation Hint: maximum 'nMin' = 4 */ -- Head_nlstab[P_FL2] = _("nMin"); -- Desc_nlstab[P_FL2] = _("Minor Page Faults"); -+ Head_nlstab[EU_FL2] = _("nMin"); -+ Desc_nlstab[EU_FL2] = _("Minor Page Faults"); - /* Translation Hint: maximum 'nDRT' = 4 */ -- Head_nlstab[P_DRT] = _("nDRT"); -- Desc_nlstab[P_DRT] = _("Dirty Pages Count"); -+ Head_nlstab[EU_DRT] = _("nDRT"); -+ Desc_nlstab[EU_DRT] = _("Dirty Pages Count"); - /* Translation Hint: maximum 'S' = 1 */ -- Head_nlstab[P_STA] = _("S"); -- Desc_nlstab[P_STA] = _("Process Status"); -+ Head_nlstab[EU_STA] = _("S"); -+ Desc_nlstab[EU_STA] = _("Process Status"); - /* Translation Hint: maximum 'COMMAND' = 7 */ -- Head_nlstab[P_CMD] = _("COMMAND"); -- Desc_nlstab[P_CMD] = _("Command Name/Line"); -+ Head_nlstab[EU_CMD] = _("COMMAND"); -+ Desc_nlstab[EU_CMD] = _("Command Name/Line"); - /* Translation Hint: maximum 'WCHAN' = 7 */ -- Head_nlstab[P_WCH] = _("WCHAN"); -- Desc_nlstab[P_WCH] = _("Sleeping in Function"); -+ Head_nlstab[EU_WCH] = _("WCHAN"); -+ Desc_nlstab[EU_WCH] = _("Sleeping in Function"); - /* Translation Hint: maximum 'Flags' = 8 */ -- Head_nlstab[P_FLG] = _("Flags"); -- Desc_nlstab[P_FLG] = _("Task Flags "); -+ Head_nlstab[EU_FLG] = _("Flags"); -+ Desc_nlstab[EU_FLG] = _("Task Flags "); - /* Translation Hint: maximum 'CGROUPS' = 7 */ -- Head_nlstab[P_CGR] = _("CGROUPS"); -- Desc_nlstab[P_CGR] = _("Control Groups"); -+ Head_nlstab[EU_CGR] = _("CGROUPS"); -+ Desc_nlstab[EU_CGR] = _("Control Groups"); - /* Translation Hint: maximum 'SUPGIDS' = 7 */ -- Head_nlstab[P_SGD] = _("SUPGIDS"); -- Desc_nlstab[P_SGD] = _("Supp Groups IDs"); -+ Head_nlstab[EU_SGD] = _("SUPGIDS"); -+ Desc_nlstab[EU_SGD] = _("Supp Groups IDs"); - /* Translation Hint: maximum 'SUPGRPS' = 7 */ -- Head_nlstab[P_SGN] = _("SUPGRPS"); -- Desc_nlstab[P_SGN] = _("Supp Groups Names"); -+ Head_nlstab[EU_SGN] = _("SUPGRPS"); -+ Desc_nlstab[EU_SGN] = _("Supp Groups Names"); - /* Translation Hint: maximum 'TGID' = 5 */ -- Head_nlstab[P_TGD] = _("TGID"); -- Desc_nlstab[P_TGD] = _("Thread Group Id"); -+ Head_nlstab[EU_TGD] = _("TGID"); -+ Desc_nlstab[EU_TGD] = _("Thread Group Id"); - #ifdef OOMEM_ENABLE - /* Translation Hint: maximum 'Adj' = 3 */ -- Head_nlstab[P_OOA] = _("Adj"); -- Desc_nlstab[P_OOA] = _("oom_adjustment (2^X)"); -+ Head_nlstab[EU_OOA] = _("Adj"); -+ Desc_nlstab[EU_OOA] = _("oom_adjustment (2^X)"); - /* Translation Hint: maximum 'Badness' = 8 */ -- Head_nlstab[P_OOM] = _("Badness"); -- Desc_nlstab[P_OOM] = _("oom_score (badness)"); -+ Head_nlstab[EU_OOM] = _("Badness"); -+ Desc_nlstab[EU_OOM] = _("oom_score (badness)"); - #endif - /* Translation Hint: maximum 'ENVIRON' = 7 */ -- Head_nlstab[P_ENV] = _("ENVIRON"); -+ Head_nlstab[EU_ENV] = _("ENVIRON"); - /* Translation Hint: the abbreviation 'vars' below is shorthand for - 'variables' */ -- Desc_nlstab[P_ENV] = _("Environment vars"); -+ Desc_nlstab[EU_ENV] = _("Environment vars"); - /* Translation Hint: maximum 'vMj' = 3 */ -- Head_nlstab[P_FV1] = _("vMj"); -- Desc_nlstab[P_FV1] = _("Major Faults delta"); -+ Head_nlstab[EU_FV1] = _("vMj"); -+ Desc_nlstab[EU_FV1] = _("Major Faults delta"); - /* Translation Hint: maximum 'vMn' = 3 */ -- Head_nlstab[P_FV2] = _("vMn"); -- Desc_nlstab[P_FV2] = _("Minor Faults delta"); -+ Head_nlstab[EU_FV2] = _("vMn"); -+ Desc_nlstab[EU_FV2] = _("Minor Faults delta"); - /* Translation Hint: maximum 'USED' = 4 */ -- Head_nlstab[P_USE] = _("USED"); -- Desc_nlstab[P_USE] = _("Res+Swap Size (KiB)"); -+ Head_nlstab[EU_USE] = _("USED"); -+ Desc_nlstab[EU_USE] = _("Res+Swap Size (KiB)"); - /* Translation Hint: maximum 'nsIPC' = 10 */ -- Head_nlstab[P_NS1] = _("nsIPC"); -- Desc_nlstab[P_NS1] = _("IPC namespace Inode"); -+ Head_nlstab[EU_NS1] = _("nsIPC"); -+ Desc_nlstab[EU_NS1] = _("IPC namespace Inode"); - /* Translation Hint: maximum 'nsMNT' = 10 */ -- Head_nlstab[P_NS2] = _("nsMNT"); -- Desc_nlstab[P_NS2] = _("MNT namespace Inode"); -+ Head_nlstab[EU_NS2] = _("nsMNT"); -+ Desc_nlstab[EU_NS2] = _("MNT namespace Inode"); - /* Translation Hint: maximum 'nsNET' = 10 */ -- Head_nlstab[P_NS3] = _("nsNET"); -- Desc_nlstab[P_NS3] = _("NET namespace Inode"); -+ Head_nlstab[EU_NS3] = _("nsNET"); -+ Desc_nlstab[EU_NS3] = _("NET namespace Inode"); - /* Translation Hint: maximum 'nsPID' = 10 */ -- Head_nlstab[P_NS4] = _("nsPID"); -- Desc_nlstab[P_NS4] = _("PID namespace Inode"); -+ Head_nlstab[EU_NS4] = _("nsPID"); -+ Desc_nlstab[EU_NS4] = _("PID namespace Inode"); - /* Translation Hint: maximum 'nsUSER' = 10 */ -- Head_nlstab[P_NS5] = _("nsUSER"); -- Desc_nlstab[P_NS5] = _("USER namespace Inode"); -+ Head_nlstab[EU_NS5] = _("nsUSER"); -+ Desc_nlstab[EU_NS5] = _("USER namespace Inode"); - /* Translation Hint: maximum 'nsUTS' = 10 */ -- Head_nlstab[P_NS6] = _("nsUTS"); -- Desc_nlstab[P_NS6] = _("UTS namespace Inode"); -+ Head_nlstab[EU_NS6] = _("nsUTS"); -+ Desc_nlstab[EU_NS6] = _("UTS namespace Inode"); - } - - -@@ -681,7 +681,7 @@ void initialize_nls (void) { - memset(Head_nlstab, 0, sizeof(Head_nlstab)); - memset(Desc_nlstab, 0, sizeof(Desc_nlstab)); - build_two_nlstabs(); -- for (i = 0; i < P_MAXPFLGS; i++) { -+ for (i = 0; i < EU_MAXPFLGS; i++) { - if (!Head_nlstab[i]) { - fprintf(stderr, nls_err, "Head", i); - exit(1); --- -1.7.9.2 - diff --git a/0038-Update-help-files.patch b/0038-Update-help-files.patch deleted file mode 100644 index 5b7c7d1..0000000 --- a/0038-Update-help-files.patch +++ /dev/null @@ -1,176 +0,0 @@ -From 8e7ef322e21b2232d2a1ff9482ec8ce2808fc5c3 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Sun, 2 Feb 2014 18:13:01 +1100 -Subject: [PATCH] Update help files - -Benno Schulenberg suggested some changes to the help messages -to provide some consistency and clarity for both the users and -translators of procps. - -The test needed to be updated as the pmap output changed too. - -Signed-off-by: Craig Small ---- - pgrep.c | 14 +++++++------- - pidof.c | 2 +- - pmap.c | 2 +- - ps/help.c | 22 +++++++++++----------- - skill.c | 6 +++--- - testsuite/pmap.test/pmap.exp | 2 +- - 6 files changed, 24 insertions(+), 24 deletions(-) - -diff --git pgrep.c pgrep.c -index fda7924..d8d3dcb 100644 ---- pgrep.c -+++ pgrep.c -@@ -115,19 +115,19 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - } - fputs(_(" -c, --count count of matching processes\n"), fp); - fputs(_(" -f, --full use full process name to match\n"), fp); -- fputs(_(" -g, --pgroup match listed process group IDs\n"), fp); -- fputs(_(" -G, --group match real group IDs\n"), fp); -+ fputs(_(" -g, --pgroup match listed process group IDs\n"), fp); -+ fputs(_(" -G, --group match real group IDs\n"), fp); - fputs(_(" -n, --newest select most recently started\n"), fp); - fputs(_(" -o, --oldest select least recently started\n"), fp); -- fputs(_(" -P, --parent match only child processes of the given parent\n"), fp); -- fputs(_(" -s, --session match session IDs\n"), fp); -+ fputs(_(" -P, --parent match only child processes of the given parent\n"), fp); -+ fputs(_(" -s, --session match session IDs\n"), fp); - fputs(_(" -t, --terminal match by controlling terminal\n"), fp); -- fputs(_(" -u, --euid match by effective IDs\n"), fp); -- fputs(_(" -U, --uid match by real IDs\n"), fp); -+ fputs(_(" -u, --euid match by effective IDs\n"), fp); -+ fputs(_(" -U, --uid match by real IDs\n"), fp); - fputs(_(" -x, --exact match exactly with the command name\n"), fp); - fputs(_(" -F, --pidfile read PIDs from file\n"), fp); - fputs(_(" -L, --logpidfile fail if PID file is not locked\n"), fp); -- fputs(_(" --ns match the processes that belong to the same\n" -+ fputs(_(" --ns match the processes that belong to the same\n" - " namespace as \n"), fp); - fputs(_(" --nslist list which namespaces will be considered for\n" - " the --ns option.\n" -diff --git pidof.c pidof.c -index 6a38675..d1a9f31 100644 ---- pidof.c -+++ pidof.c -@@ -62,7 +62,7 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - fputs(USAGE_OPTIONS, fp); - fputs(_(" -s, --single-shot return one PID only\n"), fp); - fputs(_(" -c, --check-root omit processes with different root\n"), fp); -- fputs(_(" -x scripts too\n"), fp); -+ fputs(_(" -x also find shells running the named scripts\n"), fp); - fputs(_(" -o, --omit-pid omit processes with PID\n"), fp); - fputs(USAGE_SEPARATOR, fp); - fputs(USAGE_HELP, fp); -diff --git pmap.c pmap.c -index 4ecabce..66c1c2d 100644 ---- pmap.c -+++ pmap.c -@@ -106,7 +106,7 @@ usage(FILE * out) - { - fputs(USAGE_HEADER, out); - fprintf(out, -- _(" %s [options] pid [pid ...]\n"), program_invocation_short_name); -+ _(" %s [options] PID [PID ...]\n"), program_invocation_short_name); - fputs(USAGE_OPTIONS, out); - fputs(_(" -x, --extended show details\n"), out); - fputs(_(" -X show even more details\n"), out); -diff --git ps/help.c ps/help.c -index 9133903..1b98b73 100644 ---- ps/help.c -+++ ps/help.c -@@ -109,18 +109,18 @@ void do_help (const char *opt, int rc) { - if (section == HELP_LST || section == HELP_ALL) { - fputs(_("\nSelection by list:\n"), out); - fputs(_(" -C command name\n"), out); -- fputs(_(" -G, --Group real group id or name\n"), out); -+ fputs(_(" -G, --Group real group id or name\n"), out); - fputs(_(" -g, --group session or effective group name\n"), out); -- fputs(_(" -p, --pid process id\n"), out); -- fputs(_(" --ppid select by parent process id\n"), out); -+ fputs(_(" -p, --pid process id\n"), out); -+ fputs(_(" --ppid select by parent process id\n"), out); - fputs(_(" -s, --sid session id\n"), out); - fputs(_(" -t, t, --tty terminal\n"), out); -- fputs(_(" -u, U, --user effective user id or name\n"), out); -- fputs(_(" -U, --User real user id or name\n"), out); -+ fputs(_(" -u, U, --user effective user id or name\n"), out); -+ fputs(_(" -U, --User real user id or name\n"), out); - fputs(_("\n" -- " selection take either:\n" -- " comma-separated list e.g. '-u root,nobody' or\n" -- " blank-separated list e.g. '-p 123 4567'\n"), out); -+ " The selection options take as their argument either:\n" -+ " a comma-separated list e.g. '-u root,nobody' or\n" -+ " or a blank-separated list e.g. '-p 123 4567'\n"), out); - } - if (section == HELP_OUT || section == HELP_ALL) { - fputs(_("\nOutput formats:\n"), out); -@@ -136,7 +136,7 @@ void do_help (const char *opt, int rc) { - fputs(_(" -O preloaded with default columns\n"), out); - fputs(_(" O as -O, with BSD personality\n"), out); - fputs(_(" -o, o, --format \n" -- " user defined format\n"), out); -+ " user-defined format\n"), out); - fputs(_(" s signal format\n"), out); - fputs(_(" u user-oriented format\n"), out); - fputs(_(" v virtual memory format\n"), out); -@@ -152,7 +152,7 @@ void do_help (const char *opt, int rc) { - } - if (section == HELP_THD || section == HELP_ALL) { - fputs(_("\nShow threads:\n"), out); -- fputs(_(" H as if they where processes\n"), out); -+ fputs(_(" H as if they were processes\n"), out); - fputs(_(" -L possibly with LWP and NLWP columns\n"), out); - fputs(_(" -m, m after processes\n"), out); - fputs(_(" -T possibly with SPID column\n"), out); -@@ -163,7 +163,7 @@ void do_help (const char *opt, int rc) { - fputs(_(" c show true command name\n"), out); - fputs(_(" e show the environment after command\n"), out); - fputs(_(" k, --sort specify sort order as: [+|-]key[,[+|-]key[,...]]\n"), out); -- fputs(_(" L list format specifiers\n"), out); -+ fputs(_(" L show format specifiers\n"), out); - fputs(_(" n display numeric uid and wchan\n"), out); - fputs(_(" S, --cumulative include some dead child process data\n"), out); - fputs(_(" -y do not show flags, show rss (only with -l)\n"), out); -diff --git skill.c skill.c -index 60ed274..9f3b4fc 100644 ---- skill.c -+++ skill.c -@@ -356,7 +356,7 @@ static void __attribute__ ((__noreturn__)) skillsnice_usage(FILE * out) - fputs(_(" -i, --interactive interactive\n"), out); - fputs(_(" -l, --list list all signal names\n"), out); - fputs(_(" -L, --table list all signal names in a nice table\n"), out); -- fputs(_(" -n, --no-action no action\n"), out); -+ fputs(_(" -n, --no-action do not actually kill processes; just print what would happen\n"), out); - fputs(_(" -v, --verbose explain what is being done\n"), out); - fputs(_(" -w, --warnings enable warnings (not implemented)\n"), out); - fputs(USAGE_SEPARATOR, out); -@@ -371,8 +371,8 @@ static void __attribute__ ((__noreturn__)) skillsnice_usage(FILE * out) - fputs(_(" --ns match the processes that belong to the same\n" - " namespace as \n"), out); - fputs(_(" --nslist list which namespaces will be considered for\n" -- " the --ns option.\n" -- " Available namespaces: ipc, mnt, net, pid, user, uts\n"), out); -+ " the --ns option; available namespaces are\n:" -+ " ipc, mnt, net, pid, user, uts\n"), out); - - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_SEPARATOR, out); -diff --git testsuite/pmap.test/pmap.exp testsuite/pmap.test/pmap.exp -index bc2550a..5a9e603 100644 ---- testsuite/pmap.test/pmap.exp -+++ testsuite/pmap.test/pmap.exp -@@ -22,7 +22,7 @@ set pmap_ext_footer "\[ -\]+\\s+total kB\\s+\\d+(\\s+\[\\d-\]+){2,3}\\s*\$" - set test "pmap with no arguments" - spawn $pmap - #expect_pass "$test" "^\(lt-\)\?pmap: argument missing" --expect_pass "$test" "Usage:\\s+\(lt-\)?pmap \\\[options\\\] pid \\\[pid \.\.\.\\\]" -+expect_pass "$test" "Usage:\\s+\(lt-\)?pmap \\\[options\\\] PID \\\[PID \.\.\.\\\]" - - set test "pmap standard output" - spawn $pmap $mypid --- -1.7.9.2 - diff --git a/0038-top-protect-against-distortion-when-system-time-rese.patch b/0038-top-protect-against-distortion-when-system-time-rese.patch deleted file mode 100644 index e43ddc8..0000000 --- a/0038-top-protect-against-distortion-when-system-time-rese.patch +++ /dev/null @@ -1,81 +0,0 @@ -From 22e658297494e11ef92a81069b49a40420b8d824 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Fri, 25 Apr 2014 00:00:00 -0500 -Subject: [PATCH] top: protect against distortion when system time reset - -If a system's time is adjusted backwards, then elapsed -time could appear as negative. This yielded a negative -%CPU value. Alternately if zeros were suppressed ('0') -the result was a blank %CPU column. In both cases that -distortion would last for one display cycle or until a -user forced a display refresh via some keyboard input. - -The original recommendation was trading gettimeofday() -for clock_gettime() using CLOCK_MONOTONIC. But on some -systems that might not be possible, forcing the use of -CLOCK_REALTIME instead. Not only would that complicate -the build system, but it may leave us with minus %CPU. - -Another approach was to ensure that elapsed time could -never be negative. Of course, this produced distortion -of %CPU values but it would be proportionally correct. -This wasn't dissimilar to a distortion already present -should the time be adjusted forward or backward within -any 'remaining' top delay intervals. These aberrations -would be avoided with clock_gettime & CLOCK_MONOTONIC, -but that is a less than ideal solution as noted above. - -This final solution, which originated down under, will -simply rely on the /proc/uptime seconds, which will be -immune to *any* tampering with the system clock. Thus, -we now have a fix for the distortion we didn't know we -suffered plus a negative %CPU that began this odyssey. - -Thanks to: -sk.alvin.x@gmail.com, for the original effort -jcapik@redhat.com, for a heads up on CLOCK_MONOTONIC -csmall-procps@enc.com.au, for the best suggestion of all - -Reference(s): -. original post/patch -http://www.freelists.org/post/procps/PATCH-top-use-clock-gettime-instead-of-gettimeofday -. heads up on CLOCK_MONOTONIC -http://www.freelists.org/post/procps/PATCH-top-use-clock-gettime-instead-of-gettimeofday,2 -. the final solution -http://www.freelists.org/post/procps/PATCH-top-use-clock-gettime-instead-of-gettimeofday,11 - -Signed-off-by: Jim Warner ---- - top/top.c | 13 +++++-------- - 1 file changed, 5 insertions(+), 8 deletions(-) - -diff --git top/top.c top/top.c -index d767495..cbcb152 100644 ---- top/top.c -+++ top/top.c -@@ -2518,17 +2518,14 @@ static void procs_hlp (proc_t *this) { - HST_t *h; - - if (!this) { -- static struct timeval oldtimev; -- struct timeval timev; -- struct timezone timez; -+ static double uptime_sav; -+ double uptime_cur; - float et; - void *v; - -- gettimeofday(&timev, &timez); -- et = (timev.tv_sec - oldtimev.tv_sec) -- + (float)(timev.tv_usec - oldtimev.tv_usec) / 1000000.0; -- oldtimev.tv_sec = timev.tv_sec; -- oldtimev.tv_usec = timev.tv_usec; -+ uptime(&uptime_cur, NULL); -+ et = uptime_cur - uptime_sav; -+ uptime_sav = uptime_cur; - - // if in Solaris mode, adjust our scaling for all cpus - Frame_etscale = 100.0f / ((float)Hertz * (float)et * (Rc.mode_irixps ? 1 : smp_num_cpus)); --- -1.7.9.2 - diff --git a/0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch b/0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch deleted file mode 100644 index 733ebc0..0000000 --- a/0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch +++ /dev/null @@ -1,386 +0,0 @@ -Based on 4fcd56bf582ee2ef5b205625ca3d1bfed90364e9 Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Tue, 4 Feb 2014 19:10:42 +0100 -Subject: [PATCH] vmstat: Support for timestamps with '-t' & fix for '-wd' - -From now the vmstat can append a timestamp to each line in the -VMSTAT and DISKSTAT mode. You can achieve that with the '-t' -switch. -The '-w' switch now works in the DISKSTAT mode too. ---- - vmstat.8 | 3 + - vmstat.c | 197 +++++++++++++++++++++++++++++++++++++++++++++++++++----------- - 2 files changed, 167 insertions(+), 33 deletions(-) - -diff --git vmstat.8 vmstat.8 -index ef6cbe9..420d9f3 100644 ---- vmstat.8 -+++ vmstat.8 -@@ -74,6 +74,9 @@ or 1048576 - bytes. Note this does not change the swap (si/so) or block (bi/bo) - fields. - .TP -+\fB\-t\fR, \fB\-\-timestamp\fR -+Append timestamp to each line -+.TP - \fB\-w\fR, \fB\-\-wide\fR - Wide output mode (useful for systems with higher amount of memory, - where the default output mode suffers from unwanted column breakage). -diff --git vmstat.c vmstat.c -index c01351d..a84d2d2 100644 ---- vmstat.c -+++ vmstat.c -@@ -43,6 +43,7 @@ - #include - #include - #include -+#include - #include "c.h" - #include "fileutils.h" - #include "nls.h" -@@ -75,6 +76,9 @@ static int a_option; - /* "-w" means "wide output" */ - static int w_option; - -+/* "-t" means "show timestamp" */ -+static int t_option; -+ - static unsigned sleep_time = 1; - static int infinite_updates = 0; - static unsigned long num_updates; -@@ -100,6 +104,7 @@ static void __attribute__ ((__noreturn__)) - fputs(_(" -p, --partition partition specific statistics\n"), out); - fputs(_(" -S, --unit define display unit\n"), out); - fputs(_(" -w, --wide wide output\n"), out); -+ fputs(_(" -t, --timestamp show timestamp\n"), out); - fputs(USAGE_SEPARATOR, out); - fputs(USAGE_HELP, out); - fputs(USAGE_VERSION, out); -@@ -180,21 +185,33 @@ static int format_1000(unsigned long long val64, char *restrict dst) - - static void new_header(void) - { -+ struct tm *tm_ptr; -+ time_t the_time; -+ char timebuf[32]; -+ - /* Translation Hint: Translating folloging header & fields - * that follow (marked with max x chars) might not work, - * unless manual page is translated as well. */ -- -- const char header[] = -- "procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----\n"; -- const char wide_header[] = -- "procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu--------\n"; -+ const char *header = -+ _("procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----"); -+ const char *wide_header = -+ _("procs -----------------------memory---------------------- ---swap-- -----io---- -system-- --------cpu--------"); -+ const char *timestamp_header = _(" -----timestamp-----"); - - const char format[] = -- "%2s %2s %6s %6s %6s %6s %4s %4s %5s %5s %4s %4s %2s %2s %2s %2s %2s\n"; -+ "%2s %2s %6s %6s %6s %6s %4s %4s %5s %5s %4s %4s %2s %2s %2s %2s %2s"; - const char wide_format[] = -- "%2s %2s %12s %12s %12s %12s %4s %4s %5s %5s %4s %4s %3s %3s %3s %3s %3s\n"; -+ "%2s %2s %12s %12s %12s %12s %4s %4s %5s %5s %4s %4s %3s %3s %3s %3s %3s"; -+ -+ -+ printf(w_option ? wide_header : header); -+ -+ if (t_option) { -+ printf(timestamp_header); -+ } -+ -+ printf("\n"); - -- printf(w_option ? _(wide_header) : _(header)); - printf( - w_option ? wide_format : format, - /* Translation Hint: max 2 chars */ -@@ -235,6 +252,19 @@ static void new_header(void) - _("wa"), - /* Translation Hint: max 2 chars */ - _("st")); -+ -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ if (strftime(timebuf, sizeof(timebuf), "%Z", tm_ptr)) { -+ timebuf[strlen(timestamp_header) - 1] = '\0'; -+ } else { -+ timebuf[0] = '\0'; -+ } -+ printf(" %*s", (int)(strlen(timestamp_header) - 1), timebuf); -+ } -+ -+ printf("\n"); - } - - static unsigned long unitConvert(unsigned long size) -@@ -247,9 +277,9 @@ static unsigned long unitConvert(unsigned long size) - static void new_format(void) - { - const char format[] = -- "%2u %2u %6lu %6lu %6lu %6lu %4u %4u %5u %5u %4u %4u %2u %2u %2u %2u %2u\n"; -+ "%2u %2u %6lu %6lu %6lu %6lu %4u %4u %5u %5u %4u %4u %2u %2u %2u %2u %2u"; - const char wide_format[] = -- "%2u %2u %12lu %12lu %12lu %12lu %4u %4u %5u %5u %4u %4u %3u %3u %3u %3u %3u\n"; -+ "%2u %2u %12lu %12lu %12lu %12lu %4u %4u %5u %5u %4u %4u %3u %3u %3u %3u %3u"; - - unsigned int tog = 0; /* toggle switch for cleaner code */ - unsigned int i; -@@ -263,6 +293,9 @@ static void new_format(void) - unsigned int sleep_half; - unsigned long kb_per_page = sysconf(_SC_PAGESIZE) / 1024ul; - long long debt = 0; /* handle idle ticks running backwards */ -+ struct tm *tm_ptr; -+ time_t the_time; -+ char timebuf[32]; - - sleep_half = (sleep_time / 2); - new_header(); -@@ -272,6 +305,12 @@ static void new_format(void) - cpu_zzz, pgpgin, pgpgout, pswpin, pswpout, intr, ctxt, &running, - &blocked, &dummy_1, &dummy_2); - -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ strftime(timebuf, sizeof(timebuf), "%Y-%m-%d %H:%M:%S", tm_ptr); -+ } -+ - duse = *cpu_use + *cpu_nic; - dsys = *cpu_sys + *cpu_xxx + *cpu_yyy; - didl = *cpu_idl; -@@ -298,6 +337,12 @@ static void new_format(void) - (unsigned)( (100*dstl + divo2) / Div ) - ); - -+ if (t_option) { -+ printf(" %s", timebuf); -+ } -+ -+ printf("\n"); -+ - /* main loop */ - for (i = 1; infinite_updates || i < num_updates; i++) { - sleep(sleep_time); -@@ -313,6 +358,12 @@ static void new_format(void) - pgpgout + tog, pswpin + tog, pswpout + tog, intr + tog, - ctxt + tog, &running, &blocked, &dummy_1, &dummy_2); - -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ strftime(timebuf, sizeof(timebuf), "%Y-%m-%d %H:%M:%S", tm_ptr); -+ } -+ - duse = - cpu_use[tog] - cpu_use[!tog] + cpu_nic[tog] - cpu_nic[!tog]; - dsys = -@@ -364,6 +415,12 @@ static void new_format(void) - /* st */ - (unsigned)( (100*dstl+divo2)/Div ) - ); -+ -+ if (t_option) { -+ printf(" %s", timebuf); -+ } -+ -+ printf("\n"); - } - } - -@@ -453,11 +510,33 @@ static int diskpartition_format(const char *partition_name) - - static void diskheader(void) - { -+ struct tm *tm_ptr; -+ time_t the_time; -+ char timebuf[32]; -+ - /* Translation Hint: Translating folloging header & fields - * that follow (marked with max x chars) might not work, - * unless manual page is translated as well. */ -- printf(_("disk- ------------reads------------ ------------writes----------- -----IO------\n")); -- printf("%5s %6s %6s %7s %7s %6s %6s %7s %7s %6s %6s\n", -+ const char *header = -+ _("disk- ------------reads------------ ------------writes----------- -----IO------"); -+ const char *wide_header = -+ _("disk- -------------------reads------------------- -------------------writes------------------ ------IO-------"); -+ const char *timestamp_header = _(" -----timestamp-----"); -+ -+ const char format[] = -+ "%5s %6s %6s %7s %7s %6s %6s %7s %7s %6s %6s"; -+ const char wide_format[] = -+ "%5s %9s %9s %11s %11s %9s %9s %11s %11s %7s %7s"; -+ -+ printf(w_option ? wide_header : header); -+ -+ if (t_option) { -+ printf(timestamp_header); -+ } -+ -+ printf("\n"); -+ -+ printf(w_option ? wide_format : format, - " ", - /* Translation Hint: max 6 chars */ - _("total"), -@@ -479,25 +558,53 @@ static void diskheader(void) - _("cur"), - /* Translation Hint: max 6 chars */ - _("sec")); -+ -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ if (strftime(timebuf, sizeof(timebuf), "%Z", tm_ptr)) { -+ timebuf[strlen(timestamp_header) - 1] = '\0'; -+ } else { -+ timebuf[0] = '\0'; -+ } -+ printf(" %*s", (int)(strlen(timestamp_header) - 1), timebuf); -+ } -+ -+ printf("\n"); - } - - static void diskformat(void) - { -+ const char format[] = -+ "%-5s %6u %6u %7llu %7u %6u %6u %7llu %7u %6u %6u"; -+ const char wide_format[] = -+ "%-5s %9u %9u %11llu %11u %9u %9u %11llu %11u %7u %7u"; -+ - FILE *fDiskstat; - struct disk_stat *disks; - struct partition_stat *partitions; - unsigned long ndisks, i, j, k; -- const char format[] = "%-5s %6u %6u %7llu %7u %6u %6u %7llu %7u %6u %6u\n"; -+ struct tm *tm_ptr; -+ time_t the_time; -+ char timebuf[32]; -+ - - if ((fDiskstat = fopen("/proc/diskstats", "rb"))) { - fclose(fDiskstat); - ndisks = getdiskstat(&disks, &partitions); -+ -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ strftime(timebuf, sizeof(timebuf), "%Y-%m-%d %H:%M:%S", tm_ptr); -+ } -+ - if (!moreheaders) - diskheader(); - for (k = 0; k < ndisks; k++) { - if (moreheaders && ((k % height) == 0)) - diskheader(); -- printf(format, -+ printf(w_option ? wide_format : format, - disks[k].disk_name, - disks[k].reads, - disks[k].merged_reads, -@@ -510,31 +617,51 @@ static void diskformat(void) - disks[k].inprogress_IO ? disks[k].inprogress_IO / 1000 : 0, - disks[k].milli_spent_IO ? disks[k]. - milli_spent_IO / 1000 : 0); -+ -+ if (t_option) { -+ printf(" %s", timebuf); -+ } -+ -+ printf("\n"); - fflush(stdout); - } - free(disks); - free(partitions); -+ - for (j = 1; infinite_updates || j < num_updates; j++) { - sleep(sleep_time); - ndisks = getdiskstat(&disks, &partitions); -- for (i = 0; i < ndisks; i++, k++) { -- if (moreheaders && ((k % height) == 0)) -- diskheader(); -- printf(format, -- disks[i].disk_name, -- disks[i].reads, -- disks[i].merged_reads, -- disks[i].reads_sectors, -- disks[i].milli_reading, -- disks[i].writes, -- disks[i].merged_writes, -- disks[i].written_sectors, -- disks[i].milli_writing, -- disks[i].inprogress_IO ? disks[i].inprogress_IO / 1000 : 0, -- disks[i].milli_spent_IO ? disks[i]. -- milli_spent_IO / 1000 : 0); -- fflush(stdout); -- } -+ -+ if (t_option) { -+ (void) time( &the_time ); -+ tm_ptr = localtime( &the_time ); -+ strftime(timebuf, sizeof(timebuf), "%Y-%m-%d %H:%M:%S", tm_ptr); -+ } -+ -+ for (i = 0; i < ndisks; i++, k++) { -+ if (moreheaders && ((k % height) == 0)) -+ diskheader(); -+ printf(w_option ? wide_format : format, -+ disks[i].disk_name, -+ disks[i].reads, -+ disks[i].merged_reads, -+ disks[i].reads_sectors, -+ disks[i].milli_reading, -+ disks[i].writes, -+ disks[i].merged_writes, -+ disks[i].written_sectors, -+ disks[i].milli_writing, -+ disks[i].inprogress_IO ? disks[i].inprogress_IO / 1000 : 0, -+ disks[i].milli_spent_IO ? disks[i]. -+ milli_spent_IO / 1000 : 0); -+ -+ if (t_option) { -+ printf(" %s", timebuf); -+ } -+ -+ printf("\n"); -+ fflush(stdout); -+ } - free(disks); - free(partitions); - } -@@ -740,6 +867,7 @@ int main(int argc, char *argv[]) - {"partition", required_argument, NULL, 'p'}, - {"unit", required_argument, NULL, 'S'}, - {"wide", no_argument, NULL, 'w'}, -+ {"timestamp", no_argument, NULL, 't'}, - {"help", no_argument, NULL, 'h'}, - {"version", no_argument, NULL, 'V'}, - {NULL, 0, NULL, 0} -@@ -754,7 +882,7 @@ int main(int argc, char *argv[]) - atexit(close_stdout); - - while ((c = -- getopt_long(argc, argv, "afmnsdDp:S:whV", longopts, -+ getopt_long(argc, argv, "afmnsdDp:S:wthV", longopts, - NULL)) != EOF) - switch (c) { - case 'V': -@@ -820,6 +948,9 @@ int main(int argc, char *argv[]) - case 'w': - w_option = 1; - break; -+ case 't': -+ t_option = 1; -+ break; - default: - /* no other aguments defined yet. */ - usage(stderr); --- -1.7.9.2 - diff --git a/0040-watch-Don-t-leak-extra-fds-to-the-child.patch b/0040-watch-Don-t-leak-extra-fds-to-the-child.patch deleted file mode 100644 index 6bd7689..0000000 --- a/0040-watch-Don-t-leak-extra-fds-to-the-child.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 835b6294d18a6ad79ff56aaeb0038bc6d006384b Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Tue, 4 Feb 2014 09:46:58 -0800 -Subject: [PATCH] watch: Don't leak extra fds to the child - -Once the write side of the pipe has been duped to stdout for the child, -the original pipefd is no longer needed, so it can be closed to avoid -leaking to the child. - -The leak can easily be seen with "watch ls -l /proc/self/fd", but I -found this due to "watch lvs" diagnosing itself: - - File descriptor 4 (pipe:[3163616]) leaked on lvs invocation. - -Signed-off-by: Josh Stone ---- - watch.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git watch.c watch.c -index 032dfb7..f0a3ec3 100644 ---- watch.c -+++ watch.c -@@ -387,6 +387,7 @@ static int run_command(char *restrict command, char **restrict command_argv) - if (dup2(pipefd[1], 1) < 0) { /* replace stdout with write side of pipe */ - xerr(3, _("dup2 failed")); - } -+ close(pipefd[1]); /* once duped, the write fd isn't needed */ - dup2(1, 2); /* stderr should default to stdout */ - - if (flags & WATCH_EXEC) { /* pass command to exec instead of system */ --- -1.7.9.2 - diff --git a/0041-vmstat-Fixing-format-security-flaws.patch b/0041-vmstat-Fixing-format-security-flaws.patch deleted file mode 100644 index f01d6d9..0000000 --- a/0041-vmstat-Fixing-format-security-flaws.patch +++ /dev/null @@ -1,46 +0,0 @@ -From dc072aced7250fed9b01fb05f0d672678752a63e Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Wed, 5 Feb 2014 17:09:45 +0100 -Subject: [PATCH] vmstat: Fixing format-security flaws - -Previously the headers were printed directly without -the format specifier. That way is considered insecure -and leads to build errors with -Werror=format-security -flag set. ---- - vmstat.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git vmstat.c vmstat.c -index a84d2d2..a2fd351 100644 ---- vmstat.c -+++ vmstat.c -@@ -204,10 +204,10 @@ static void new_header(void) - "%2s %2s %12s %12s %12s %12s %4s %4s %5s %5s %4s %4s %3s %3s %3s %3s %3s"; - - -- printf(w_option ? wide_header : header); -+ printf("%s", w_option ? wide_header : header); - - if (t_option) { -- printf(timestamp_header); -+ printf("%s", timestamp_header); - } - - printf("\n"); -@@ -528,10 +528,10 @@ static void diskheader(void) - const char wide_format[] = - "%5s %9s %9s %11s %11s %9s %9s %11s %11s %7s %7s"; - -- printf(w_option ? wide_header : header); -+ printf("%s", w_option ? wide_header : header); - - if (t_option) { -- printf(timestamp_header); -+ printf("%s", timestamp_header); - } - - printf("\n"); --- -1.7.9.2 - diff --git a/0043-Added-get-trans-target-to-Makefile.patch b/0043-Added-get-trans-target-to-Makefile.patch deleted file mode 100644 index 3bf026e..0000000 --- a/0043-Added-get-trans-target-to-Makefile.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 2ade4b082b8c970bb1e1a6711d79f82b90075431 Mon Sep 17 00:00:00 2001 -From: Craig Small -Date: Sat, 22 Feb 2014 11:34:53 +1100 -Subject: [PATCH] Added get-trans target to Makefile - -The get-trans target rsyncs the latest copies of translation files -from the translation project. I put this target in because I always -forget the exact syntax of the command. - -Signed-off-by: Craig Small ---- - Makefile.am | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git Makefile.am Makefile.am -index 7075e67..335fbc5 100644 ---- Makefile.am -+++ Makefile.am -@@ -123,3 +123,5 @@ $(top_srcdir)/.version: - dist-hook: - echo $(VERSION) > $(distdir)/.tarball-version - -+get-trans: -+ rsync -Lrtvz translationproject.org::tp/latest/procps/ po --- -1.7.9.2 - diff --git a/0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch b/0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch deleted file mode 100644 index bf05c63..0000000 --- a/0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch +++ /dev/null @@ -1,32 +0,0 @@ -From fe37ad15cd394af021af7a3e5ad11bad70af4bfd Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Sun, 27 Apr 2014 00:00:00 -0500 -Subject: [PATCH] top: avoid a 'nan' when the delay interval is very low - -The granularity of /proc/uptime is fixed at hundredths -of a second. And, since we can cycle faster than that, -we are exposed to 'nan' when calculating elapsed time. - -This commit will protect us from that outcome when the -delay interval has been set to an extremely low value. - -Signed-off-by: Jim Warner ---- - top/top.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git top/top.c top/top.c -index 0428496..0ae5388 100644 ---- top/top.c -+++ top/top.c -@@ -2525,6 +2525,7 @@ static void procs_hlp (proc_t *this) { - - uptime(&uptime_cur, NULL); - et = uptime_cur - uptime_sav; -+ if (et < 0.01) et = 0.005; - uptime_sav = uptime_cur; - - // if in Solaris mode, adjust our scaling for all cpus --- -1.7.9.2 - diff --git a/0045-library-properly-handle-memory-used-by-tmpfs.patch b/0045-library-properly-handle-memory-used-by-tmpfs.patch deleted file mode 100644 index 5868225..0000000 --- a/0045-library-properly-handle-memory-used-by-tmpfs.patch +++ /dev/null @@ -1,155 +0,0 @@ -Based on 3569c0351fae7797e8d62feae7229d2d6d2aa0a1 Mon Sep 17 00:00:00 2001 -From: Jakob Unterwurzacher -Date: Tue, 18 Feb 2014 22:12:21 +0100 -Subject: [PATCH] library: properly handle memory used by tmpfs - -tmpfs has become much more widely used since distributions use it for -/tmp (Fedora 18+). In /proc/meminfo, memory used by tmpfs is accounted -into "Cached" (aka "NR_FILE_PAGES", - http://lxr.free-electrons.com/source/mm/shmem.c#L301 ). - -The tools just pass it on, so what top, free and vmstat report as -"cached" is the sum of page cache and tmpfs. - -free has the extremely useful "-/+ buffers/cache" output. However, now -that tmpfs is accounted into "cached", those numbers are way off once -you have big files in /tmp. - -Fortunately, kernel 2.6.32 introduces "Shmem", which makes tmpfs memory -usage accessible from userspace ( -https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=4b02108ac1b3354a22b0d83c684797692efdc395 ). - -This patch substracts Shmem from Cached to get the actual page cache -memory. This makes both issues mentioned above disappear. For older -kernels, Shmem is not available (hence zero) and this patch is no-op. - -Additionally: -* Update the man pages of free and vmstat to explain what is happening -* Finally drop "MemShared" from the /proc/meminfo parser, it has been - dead for 10+ years and is only causing confusion ( removed in kernel - 2.5.54, see - https://git.kernel.org/cgit/linux/kernel/git/tglx/history.git/commit/?id=fe04e9451e5a159247cf9f03c615a4273ac0c571 ) ---- - free.1 | 29 ++++++++++++++++++++++++----- - proc/sysinfo.c | 8 ++++---- - proc/sysinfo.h | 3 +-- - vmstat.8 | 3 ++- - 4 files changed, 31 insertions(+), 12 deletions(-) - -diff --git free.1 free.1 -index 1e8e7ef..21cce28 100644 ---- free.1 -+++ free.1 -@@ -11,11 +11,30 @@ free \- Display amount of free and used memory in the system - .SH DESCRIPTION - .B free - displays the total amount of free and used physical and swap memory in the --system, as well as the buffers used by the kernel. --The shared memory column represents either the MemShared value (2.4 series --kernels) or the Shmem value (2.6 series kernels and later) taken from the --/proc/meminfo file. The value is zero if none of the entries is exported --by the kernel. -+system, as well as the buffers and caches used by the kernel. The -+information is gathered by parsing /proc/meminfo. The displayed -+columns are: -+.TP -+\fBtotal\fR -+Total installed memory (MemTotal and SwapTotal in /proc/meminfo) -+.TP -+\fBused\fR -+Used memory (calculated as total - free) -+.TP -+\fBfree\fR -+Unused memory (MemFree and SwapFree in /proc/meminfo) -+.TP -+\fBshared\fR -+Memory used (mostly) by tmpfs (Shmem in /proc/meminfo, available on -+kernels 2.6.32, displayed as zero if not available) -+.TP -+\fBbuffers\fR -+Memory used by kernel buffers (Buffers in /proc/meminfo) -+.TP -+\fBcached\fR -+Memory used by the page cache (calculated as Cached - Shmem in -+/proc/meminfo - the Cached value is actually the sum of page cache and -+tmpfs memory) - .SH OPTIONS - .TP - \fB\-b\fR, \fB\-\-bytes\fR -diff --git proc/sysinfo.c proc/sysinfo.c -index 1680cc4..e07ca86 100644 ---- proc/sysinfo.c -+++ proc/sysinfo.c -@@ -533,7 +533,6 @@ static int compare_mem_table_structs(con - * - * MemTotal: 61768 kB old - * MemFree: 1436 kB old -- * MemShared: 0 kB old (now always zero; not calculated) - * Buffers: 1312 kB old - * Cached: 20932 kB old - * Active: 12464 kB new -@@ -562,7 +561,7 @@ static int compare_mem_table_structs(con - * Hugepagesize: 4096 kB 2.5.??+ - */ - --/* obsolete since 2.6.x, but reused for shmem in 2.6.32+ */ -+/* Shmem in 2.6.32+ */ - unsigned long kb_main_shared; - /* old but still kicking -- the important stuff */ - unsigned long kb_main_buffers; -@@ -634,14 +633,13 @@ void meminfo(void){ - {"LowTotal", &kb_low_total}, - {"Mapped", &kb_mapped}, // kB version of vmstat nr_mapped - {"MemFree", &kb_main_free}, // important -- {"MemShared", &kb_main_shared}, // obsolete since kernel 2.6! (sharing the variable with Shmem replacement) - {"MemTotal", &kb_main_total}, // important - {"NFS_Unstable", &kb_nfs_unstable}, - {"PageTables", &kb_pagetables}, // kB version of vmstat nr_page_table_pages - {"ReverseMaps", &nr_reversemaps}, // same as vmstat nr_page_table_pages - {"SReclaimable", &kb_swap_reclaimable}, // "swap reclaimable" (dentry and inode structures) - {"SUnreclaim", &kb_swap_unreclaimable}, -- {"Shmem", &kb_main_shared}, // kernel 2.6 and later (sharing the output variable with obsolete MemShared) -+ {"Shmem", &kb_main_shared}, // kernel 2.6.32 and later - {"Slab", &kb_slab}, // kB version of vmstat nr_slab - {"SwapCached", &kb_swap_cached}, - {"SwapFree", &kb_swap_free}, // important -@@ -697,6 +695,8 @@ nextline: - } - if ((ev=getenv("PS_FULL_CACHE"))) - kb_main_cached += kb_swap_reclaimable + kb_swap_cached + kb_nfs_unstable; -+ /* "Cached" includes "Shmem" - we want only the page cache here */ -+ kb_main_cached -= kb_main_shared; - } - - /*****************************************************************/ -diff --git proc/sysinfo.h proc/sysinfo.h -index 1eb3472..2291631 100644 ---- proc/sysinfo.h -+++ proc/sysinfo.h -@@ -20,8 +20,7 @@ extern int uptime (double *uptime_secs, double *idle_secs); - extern unsigned long getbtime(void); - extern void loadavg(double *av1, double *av5, double *av15); - -- --/* obsolete */ -+/* Shmem in 2.6.32+ */ - extern unsigned long kb_main_shared; - /* old but still kicking -- the important stuff */ - extern unsigned long kb_main_buffers; -diff --git vmstat.8 vmstat.8 -index 420d9f3..2782a42 100644 ---- vmstat.8 -+++ vmstat.8 -@@ -102,7 +102,8 @@ b: The number of processes in uninterruptible sleep. - swpd: the amount of virtual memory used. - free: the amount of idle memory. - buff: the amount of memory used as buffers. --cache: the amount of memory used as cache. -+cache: the amount of memory used as cache (excluding tmpfs memory for -+kernels 2.6.32+) - inact: the amount of inactive memory. (\-a option) - active: the amount of active memory. (\-a option) - .fi --- -1.7.9.2 - diff --git a/0045-top-standardize-Esc-key-support-with-prompted-input.patch b/0045-top-standardize-Esc-key-support-with-prompted-input.patch deleted file mode 100644 index 5b2d91c..0000000 --- a/0045-top-standardize-Esc-key-support-with-prompted-input.patch +++ /dev/null @@ -1,287 +0,0 @@ -From bef6b0f025a0638c37bf987039b65272f0fff587 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Sun, 27 Apr 2014 00:00:00 -0500 -Subject: [PATCH] top: standardize key support with prompted input - -In release 3.3.6, some commands were equipped with the -concept of a 'default pid'. The initial implementation -meant that the intuitive key would not always be -treated as one would expect under any well behaved UI. - -This patch ensures the expected key behavior of: -terminating user input while still making possible the -necessary distinction between 'no input' & 'defaults'. - -Reference(s): -http://www.freelists.org/post/procps/top-Escape-doesnt-abort-kill-command - -Signed-off-by: Jim Warner ---- - top/top.1 | 2 ++ - top/top.c | 105 ++++++++++++++++++++++++++++++++++++------------------------- - 2 files changed, 65 insertions(+), 42 deletions(-) - -diff --git top/top.1 top/top.1 -index c15a871..67b8b35 100644 ---- top/top.1 -+++ top/top.1 -@@ -1082,6 +1082,7 @@ depending on your progress: - .nf - 1) at the pid prompt, type an invalid number - 2) at the signal prompt, type 0 (or any invalid signal) -+ 3) at any prompt, type - .fi - - .TP 7 -@@ -1106,6 +1107,7 @@ depending on your progress: - .nf - 1) at the pid prompt, type an invalid number - 2) at the nice prompt, type with no input -+ 3) at any prompt, type - .fi - - .TP 7 -diff --git top/top.c top/top.c -index 0ae5388..9f33a05 100644 ---- top/top.c -+++ top/top.c -@@ -1150,8 +1150,11 @@ static char *ioline (const char *prompt) { - key = iokey(2); - switch (key) { - case 0: -+ buf[0] = '\0'; -+ return buf; - case kbd_ESC: -- buf[0] = '\0'; // fall through ! -+ buf[0] = kbd_ESC; -+ return buf; - case kbd_ENTER: - continue; - case kbd_INS: -@@ -1197,7 +1200,7 @@ static char *ioline (const char *prompt) { - } - putp(fmtmk("%s%s%s", tg2(beg, Msg_row), Cap_clr_eol, buf)); - putp(tg2(beg+pos, Msg_row)); -- } while (key && key != kbd_ENTER && key != kbd_ESC); -+ } while (key != kbd_ENTER); - - // weed out duplicates, including empty strings (top-of-stack)... - for (i = 0, plin = anchor; ; i++) { -@@ -1275,6 +1278,10 @@ static int readfile (FILE *fp, char **baddr, size_t *bsize, size_t *bread) { - - /*###### Small Utility routines ########################################*/ - -+#define GET_NUM_BAD INT_MIN -+#define GET_NUM_ESC (INT_MIN + 1) -+#define GET_NUM_NOT (INT_MIN + 2) -+ - /* - * Get a float from the user */ - static float get_float (const char *prompt) { -@@ -1282,20 +1289,18 @@ static float get_float (const char *prompt) { - float f; - - line = ioline(prompt); -- if (!line[0] || Frames_signal) return -1.0; -+ if (line[0] == kbd_ESC || Frames_signal) return GET_NUM_ESC; -+ if (!line[0]) return GET_NUM_NOT; - // note: we're not allowing negative floats - if (strcspn(line, "+,.0123456789")) { - show_msg(N_txt(BAD_numfloat_txt)); -- return -1.0; -+ return GET_NUM_BAD; - } - sscanf(line, "%f", &f); - return f; - } // end: get_float - - --#define GET_INT_BAD INT_MIN --#define GET_INTNONE (INT_MIN + 1) -- - /* - * Get an integer from the user, returning INT_MIN for error */ - static int get_int (const char *prompt) { -@@ -1303,12 +1308,12 @@ static int get_int (const char *prompt) { - int n; - - line = ioline(prompt); -- if (Frames_signal) return GET_INT_BAD; -- if (!line[0]) return GET_INTNONE; -+ if (line[0] == kbd_ESC || Frames_signal) return GET_NUM_ESC; -+ if (!line[0]) return GET_NUM_NOT; - // note: we've got to allow negative ints (renice) - if (strcspn(line, "-+0123456789")) { - show_msg(N_txt(BAD_integers_txt)); -- return GET_INT_BAD; -+ return GET_NUM_BAD; - } - sscanf(line, "%d", &n); - return n; -@@ -2918,7 +2923,9 @@ static void insp_find_str (int ch, int *col, int *row) { - return; - } - if (ch == 'L' || ch == '/') { -- snprintf(Insp_sel->fstr, FNDBUFSIZ, "%s", ioline(N_txt(GET_find_str_txt))); -+ char *str = ioline(N_txt(GET_find_str_txt)); -+ if (*str == kbd_ESC) return; -+ snprintf(Insp_sel->fstr, FNDBUFSIZ, "%s", str); - Insp_sel->flen = strlen(Insp_sel->fstr); - found = 0; - } -@@ -4135,7 +4142,9 @@ static void find_string (int ch) { - return; - } - if ('L' == ch) { -- snprintf(Curwin->findstr, FNDBUFSIZ, "%s", ioline(N_txt(GET_find_str_txt))); -+ char *str = ioline(N_txt(GET_find_str_txt)); -+ if (*str == kbd_ESC) return; -+ snprintf(Curwin->findstr, FNDBUFSIZ, "%s", str); - Curwin->findlen = strlen(Curwin->findstr); - found = 0; - #ifndef USE_X_COLHDR -@@ -4225,7 +4234,9 @@ static void other_selection (int ch) { - sel = strstr; - } - glob = ioline(fmtmk(N_fmt(OSEL_prompts_fmt), Curwin->osel_tot + 1, typ)); -- if (!snprintf(raw, sizeof(raw), "%s", glob)) return; -+ if (*glob == kbd_ESC -+ || !snprintf(raw, sizeof(raw), "%s", glob)) -+ return; - for (osel = Curwin->osel_1st; osel; ) { - if (!strcmp(osel->raw, glob)) { // #1: is criteria duplicate? - show_msg(N_txt(OSEL_errdups_txt)); -@@ -4343,7 +4354,7 @@ static void keys_global (int ch) { - else { - float tmp = - get_float(fmtmk(N_fmt(DELAY_change_fmt), Rc.delay_time)); -- if (-1 < tmp) Rc.delay_time = tmp; -+ if (tmp > -1) Rc.delay_time = tmp; - } - break; - case 'E': -@@ -4379,17 +4390,21 @@ static void keys_global (int ch) { - if (Secure_mode) { - show_msg(N_txt(NOT_onsecure_txt)); - } else { -- int pid, sig = SIGTERM, def = w->ppt[w->begtask]->tid; -- if (GET_INT_BAD < (pid = get_int(fmtmk(N_txt(GET_pid2kill_fmt), def)))) { -+ int sig = SIGTERM, -+ def = w->ppt[w->begtask]->tid, -+ pid = get_int(fmtmk(N_txt(GET_pid2kill_fmt), def)); -+ if (pid > GET_NUM_ESC) { - char *str; -- if (0 > pid) pid = def; -+ if (pid == GET_NUM_NOT) pid = def; - str = ioline(fmtmk(N_fmt(GET_sigs_num_fmt), pid, SIGTERM)); -- if (*str) sig = signal_name_to_number(str); -- if (Frames_signal) break; -- if (0 < sig && kill(pid, sig)) -- show_msg(fmtmk(N_fmt(FAIL_signals_fmt) -- , pid, sig, strerror(errno))); -- else if (0 > sig) show_msg(N_txt(BAD_signalid_txt)); -+ if (*str != kbd_ESC) { -+ if (*str) sig = signal_name_to_number(str); -+ if (Frames_signal) break; -+ if (0 < sig && kill(pid, sig)) -+ show_msg(fmtmk(N_fmt(FAIL_signals_fmt) -+ , pid, sig, strerror(errno))); -+ else if (0 > sig) show_msg(N_txt(BAD_signalid_txt)); -+ } - } - } - break; -@@ -4397,21 +4412,24 @@ static void keys_global (int ch) { - if (Secure_mode) - show_msg(N_txt(NOT_onsecure_txt)); - else { -- int val, pid, def = w->ppt[w->begtask]->tid; -- if (GET_INT_BAD < (pid = get_int(fmtmk(N_txt(GET_pid2nice_fmt), def)))) { -- if (0 > pid) pid = def; -- if (GET_INTNONE < (val = get_int(fmtmk(N_fmt(GET_nice_num_fmt), pid)))) -- if (setpriority(PRIO_PROCESS, (unsigned)pid, val)) -- show_msg(fmtmk(N_fmt(FAIL_re_nice_fmt) -- , pid, val, strerror(errno))); -+ int val, -+ def = w->ppt[w->begtask]->tid, -+ pid = get_int(fmtmk(N_txt(GET_pid2nice_fmt), def)); -+ if (pid > GET_NUM_ESC) { -+ if (pid == GET_NUM_NOT) pid = def; -+ val = get_int(fmtmk(N_fmt(GET_nice_num_fmt), pid)); -+ if (val > GET_NUM_NOT -+ && setpriority(PRIO_PROCESS, (unsigned)pid, val)) -+ show_msg(fmtmk(N_fmt(FAIL_re_nice_fmt) -+ , pid, val, strerror(errno))); - } - } - break; - case 'X': - { int wide = get_int(fmtmk(N_fmt(XTRA_fixwide_fmt), Rc.fixed_widest)); -- if (GET_INTNONE < wide) { -- if (-1 < wide) Rc.fixed_widest = wide; -- else if (INT_MIN < wide) Rc.fixed_widest = -1; -+ if (wide > GET_NUM_NOT) { -+ if (wide > -1) Rc.fixed_widest = wide; -+ else Rc.fixed_widest = -1; - } - } - break; -@@ -4419,9 +4437,10 @@ static void keys_global (int ch) { - if (!Inspect.total) - ioline(N_txt(YINSP_noents_txt)); - else { -- int pid, def = w->ppt[w->begtask]->tid; -- if (GET_INT_BAD < (pid = get_int(fmtmk(N_fmt(YINSP_pidsee_fmt), def)))) { -- if (0 > pid) pid = def; -+ int def = w->ppt[w->begtask]->tid, -+ pid = get_int(fmtmk(N_fmt(YINSP_pidsee_fmt), def)); -+ if (pid > GET_NUM_ESC) { -+ if (pid == GET_NUM_NOT) pid = def; - if (pid) inspection_utility(pid); - } - } -@@ -4467,7 +4486,7 @@ static void keys_summary (int ch) { - show_msg(N_txt(NUMA_nodenot_txt)); - else { - int num = get_int(fmtmk(N_fmt(NUMA_nodeget_fmt), Numa_node_tot -1)); -- if (GET_INTNONE < num) { -+ if (num > GET_NUM_NOT) { - if (num >= 0 && num < Numa_node_tot) { - Numa_node_sel = num; - SETw(w, View_CPUNOD | View_STATES); -@@ -4503,7 +4522,7 @@ static void keys_task (int ch) { - case 'n': - if (VIZCHKw(w)) { - int num = get_int(fmtmk(N_fmt(GET_max_task_fmt), w->rc.maxtasks)); -- if (GET_INTNONE < num) { -+ if (num > GET_NUM_NOT) { - if (-1 < num ) w->rc.maxtasks = num; - else show_msg(N_txt(BAD_max_task_txt)); - } -@@ -4601,9 +4620,11 @@ static void keys_task (int ch) { - case 'U': - case 'u': - if (VIZCHKw(w)) { -- const char *errmsg; -- if ((errmsg = user_certify(w, ioline(N_txt(GET_user_ids_txt)), ch))) -- show_msg(errmsg); -+ const char *errmsg, *str = ioline(N_txt(GET_user_ids_txt)); -+ if (*str != kbd_ESC -+ && (errmsg = user_certify(w, str, ch))) -+ show_msg(errmsg); -+ - } - break; - case 'V': -@@ -4686,7 +4707,7 @@ static void keys_window (int ch) { - if (ALTCHKw) { - char tmp[SMLBUFSIZ]; - STRLCPY(tmp, ioline(fmtmk(N_fmt(NAME_windows_fmt), w->rc.winname))); -- if (tmp[0]) win_names(w, tmp); -+ if (tmp[0] && tmp[0] != kbd_ESC) win_names(w, tmp); - } - break; - case kbd_UP: --- -1.7.9.2 - diff --git a/0046-Minor-i18n-fixes.patch b/0046-Minor-i18n-fixes.patch deleted file mode 100644 index 2186f21..0000000 --- a/0046-Minor-i18n-fixes.patch +++ /dev/null @@ -1,106 +0,0 @@ -From 2ec9f5c22e3eeaf4da514e0e6ec9374cfdbb9a99 Mon Sep 17 00:00:00 2001 -From: Yuri Chornoivan -Date: Mon, 3 Mar 2014 21:58:56 +1100 -Subject: [PATCH] Minor i18n fixes - -Minor fixes that the translator (Yuri) has found in some of the -strings. You only know how many typos and thinkos you have when -someone is trying to translate it. - -Signed-off-by: Craig Small ---- - ps/help.c | 4 ++-- - skill.c | 2 +- - slabtop.c | 4 ++++ - top/top.c | 2 +- - top/top_nls.c | 2 +- - 5 files changed, 9 insertions(+), 5 deletions(-) - -diff --git ps/help.c ps/help.c -index 1b98b73..8bde12b 100644 ---- ps/help.c -+++ ps/help.c -@@ -120,7 +120,7 @@ void do_help (const char *opt, int rc) { - fputs(_("\n" - " The selection options take as their argument either:\n" - " a comma-separated list e.g. '-u root,nobody' or\n" -- " or a blank-separated list e.g. '-p 123 4567'\n"), out); -+ " a blank-separated list e.g. '-p 123 4567'\n"), out); - } - if (section == HELP_OUT || section == HELP_ALL) { - fputs(_("\nOutput formats:\n"), out); -@@ -141,7 +141,7 @@ void do_help (const char *opt, int rc) { - fputs(_(" u user-oriented format\n"), out); - fputs(_(" v virtual memory format\n"), out); - fputs(_(" X register format\n"), out); -- fputs(_(" -y do not show flags, show rrs vs. addr (used with -l)\n"), out); -+ fputs(_(" -y do not show flags, show rss vs. addr (used with -l)\n"), out); - fputs(_(" --context display security context (for SELinux)\n"), out); - fputs(_(" --headers repeat header lines, one per page\n"), out); - fputs(_(" --no-headers do not print header at all\n"), out); -diff --git skill.c skill.c -index 9f3b4fc..2b1ce2f 100644 ---- skill.c -+++ skill.c -@@ -751,7 +751,7 @@ int main(int argc, char ** argv) - kill_main(argc, argv); - break; - default: -- fprintf(stderr, _("skill: \"%s\" is not support\n"), -+ fprintf(stderr, _("skill: \"%s\" is not supported\n"), - program_invocation_short_name); - fprintf(stderr, USAGE_MAN_TAIL("skill(1)")); - return EXIT_FAILURE; -diff --git slabtop.c slabtop.c -index c135ec5..4be35b9 100644 ---- slabtop.c -+++ slabtop.c -@@ -376,15 +376,19 @@ int main(int argc, char *argv[]) - " %-35s: %.2fK / %.2fK / %.2fK\n\n", - /* Translation Hint: Next five strings must not - * exceed 35 length in characters. */ -+ /* xgettext:no-c-format */ - _("Active / Total Objects (% used)"), - stats.nr_active_objs, stats.nr_objs, - 100.0 * stats.nr_active_objs / stats.nr_objs, -+ /* xgettext:no-c-format */ - _("Active / Total Slabs (% used)"), - stats.nr_active_slabs, stats.nr_slabs, - 100.0 * stats.nr_active_slabs / stats.nr_slabs, -+ /* xgettext:no-c-format */ - _("Active / Total Caches (% used)"), - stats.nr_active_caches, stats.nr_caches, - 100.0 * stats.nr_active_caches / stats.nr_caches, -+ /* xgettext:no-c-format */ - _("Active / Total Size (% used)"), - stats.active_size / 1024.0, stats.total_size / 1024.0, - 100.0 * stats.active_size / stats.total_size, -diff --git top/top.c top/top.c -index ca3d24a..d767495 100644 ---- top/top.c -+++ top/top.c -@@ -779,7 +779,7 @@ static int show_pmt (const char *str) { - * Our special formatting consists of: - * "some text <_delimiter_> some more text <_delimiter_>...\n" - * Where <_delimiter_> is a two byte combination consisting of a -- * tilde followed by an ascii digit in the the range of 1 - 8. -+ * tilde followed by an ascii digit in the range of 1 - 8. - * examples: ~1, ~5, ~8, etc. - * The tilde is effectively stripped and the next digit - * converted to an index which is then used to select an -diff --git top/top_nls.c top/top_nls.c -index 0f37d89..b47459a 100644 ---- top/top_nls.c -+++ top/top_nls.c -@@ -404,7 +404,7 @@ static void build_norm_nlstab (void) { - Norm_nlstab[YINSP_demo01_txt] = _("Open Files"); - Norm_nlstab[YINSP_demo02_txt] = _("NUMA Info"); - Norm_nlstab[YINSP_demo03_txt] = _("Log"); -- Norm_nlstab[YINSP_deqfmt_txt] = _("the '=' key will eventually show the actual file read or command(s) excuted ..."); -+ Norm_nlstab[YINSP_deqfmt_txt] = _("the '=' key will eventually show the actual file read or command(s) executed ..."); - Norm_nlstab[YINSP_deqtyp_txt] = _("demo"); - Norm_nlstab[YINSP_dstory_txt] = _("" - "This is simulated output representing the contents of some file or the output\n" --- -1.7.9.2 - diff --git a/0046-top-miscellaneous-accumulated-changes-to-program-cod.patch b/0046-top-miscellaneous-accumulated-changes-to-program-cod.patch deleted file mode 100644 index 55604fa..0000000 --- a/0046-top-miscellaneous-accumulated-changes-to-program-cod.patch +++ /dev/null @@ -1,142 +0,0 @@ -From 0caa6d6e676c8d28b933066d19c112b02ed59245 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 7 May 2014 00:00:00 -0500 -Subject: [PATCH] top: miscellaneous accumulated changes to program code - -. prevent any input recall overrun if window downsized -. adjust translation notes for true column hdr maximum - -Signed-off-by: Jim Warner ---- - top/top.c | 5 ++--- - top/top_nls.c | 28 ++++++++++++++-------------- - 2 files changed, 16 insertions(+), 17 deletions(-) - -diff --git top/top.c top/top.c -index 9f33a05..bc755f3 100644 ---- top/top.c -+++ top/top.c -@@ -1183,13 +1183,13 @@ static char *ioline (const char *prompt) { - if (plin->bkw) { - plin = plin->bkw; - memset(buf, '\0', sizeof(buf)); -- pos = snprintf(buf, sizeof(buf), "%s", plin->str); -+ pos = snprintf(buf, sizeof(buf), "%.*s", Screen_cols - beg - 1, plin->str); - } - break; - case kbd_DOWN: - memset(buf, '\0', sizeof(buf)); - if (plin->fwd) plin = plin->fwd; -- pos = snprintf(buf, sizeof(buf), "%s", plin->str); -+ pos = snprintf(buf, sizeof(buf), "%.*s", Screen_cols - beg - 1, plin->str); - break; - default: // what we REALLY wanted (maybe) - if (isprint(key) && logCOL < bufMAX && phyCOL < Screen_cols) { -@@ -4624,7 +4624,6 @@ static void keys_task (int ch) { - if (*str != kbd_ESC - && (errmsg = user_certify(w, str, ch))) - show_msg(errmsg); -- - } - break; - case 'V': -diff --git top/top_nls.c top/top_nls.c -index 01c8d1e..ea1c088 100644 ---- top/top_nls.c -+++ top/top_nls.c -@@ -129,31 +129,31 @@ static void build_two_nlstabs (void) { - /* Translation Hint: maximum 'UID' = 5 */ - Head_nlstab[EU_UED] = _("UID"); - Desc_nlstab[EU_UED] = _("Effective User Id"); --/* Translation Hint: maximum 'USER' = 8 */ -+/* Translation Hint: maximum 'USER' = 7 */ - Head_nlstab[EU_UEN] = _("USER"); - Desc_nlstab[EU_UEN] = _("Effective User Name"); - /* Translation Hint: maximum 'RUID' = 5 */ - Head_nlstab[EU_URD] = _("RUID"); - Desc_nlstab[EU_URD] = _("Real User Id"); --/* Translation Hint: maximum 'RUSER' = 8 */ -+/* Translation Hint: maximum 'RUSER' = 7 */ - Head_nlstab[EU_URN] = _("RUSER"); - Desc_nlstab[EU_URN] = _("Real User Name"); - /* Translation Hint: maximum 'SUID' = 5 */ - Head_nlstab[EU_USD] = _("SUID"); - Desc_nlstab[EU_USD] = _("Saved User Id"); --/* Translation Hint: maximum 'SUSER' = 8 */ -+/* Translation Hint: maximum 'SUSER' = 7 */ - Head_nlstab[EU_USN] = _("SUSER"); - Desc_nlstab[EU_USN] = _("Saved User Name"); - /* Translation Hint: maximum 'GID' = 5 */ - Head_nlstab[EU_GID] = _("GID"); - Desc_nlstab[EU_GID] = _("Group Id"); --/* Translation Hint: maximum 'GROUP' = 8 */ -+/* Translation Hint: maximum 'GROUP' = 7 */ - Head_nlstab[EU_GRP] = _("GROUP"); - Desc_nlstab[EU_GRP] = _("Group Name"); - /* Translation Hint: maximum 'PGRP' = 5 */ - Head_nlstab[EU_PGD] = _("PGRP"); - Desc_nlstab[EU_PGD] = _("Process Group Id"); --/* Translation Hint: maximum 'TTY' = 8 */ -+/* Translation Hint: maximum 'TTY' = 7 */ - Head_nlstab[EU_TTY] = _("TTY"); - Desc_nlstab[EU_TTY] = _("Controlling Tty"); - /* Translation Hint: maximum 'TPGID' = 5 */ -@@ -180,7 +180,7 @@ static void build_two_nlstabs (void) { - /* Translation Hint: maximum '' = 6 */ - Head_nlstab[EU_TME] = _("TIME"); - Desc_nlstab[EU_TME] = _("CPU Time"); --/* Translation Hint: maximum 'TIME+' = 9 */ -+/* Translation Hint: maximum 'TIME+' = 7 */ - Head_nlstab[EU_TM2] = _("TIME+"); - Desc_nlstab[EU_TM2] = _("CPU Time, hundredths"); - /* Translation Hint: maximum '%MEM' = 4 */ -@@ -222,7 +222,7 @@ static void build_two_nlstabs (void) { - /* Translation Hint: maximum 'WCHAN' = 7 */ - Head_nlstab[EU_WCH] = _("WCHAN"); - Desc_nlstab[EU_WCH] = _("Sleeping in Function"); --/* Translation Hint: maximum 'Flags' = 8 */ -+/* Translation Hint: maximum 'Flags' = 7 */ - Head_nlstab[EU_FLG] = _("Flags"); - Desc_nlstab[EU_FLG] = _("Task Flags "); - /* Translation Hint: maximum 'CGROUPS' = 7 */ -@@ -241,7 +241,7 @@ static void build_two_nlstabs (void) { - /* Translation Hint: maximum 'Adj' = 3 */ - Head_nlstab[EU_OOA] = _("Adj"); - Desc_nlstab[EU_OOA] = _("oom_adjustment (2^X)"); --/* Translation Hint: maximum 'Badness' = 8 */ -+/* Translation Hint: maximum 'Badness' = 7 */ - Head_nlstab[EU_OOM] = _("Badness"); - Desc_nlstab[EU_OOM] = _("oom_score (badness)"); - #endif -@@ -259,22 +259,22 @@ static void build_two_nlstabs (void) { - /* Translation Hint: maximum 'USED' = 4 */ - Head_nlstab[EU_USE] = _("USED"); - Desc_nlstab[EU_USE] = _("Res+Swap Size (KiB)"); --/* Translation Hint: maximum 'nsIPC' = 10 */ -+/* Translation Hint: maximum 'nsIPC' = 7 */ - Head_nlstab[EU_NS1] = _("nsIPC"); - Desc_nlstab[EU_NS1] = _("IPC namespace Inode"); --/* Translation Hint: maximum 'nsMNT' = 10 */ -+/* Translation Hint: maximum 'nsMNT' = 7 */ - Head_nlstab[EU_NS2] = _("nsMNT"); - Desc_nlstab[EU_NS2] = _("MNT namespace Inode"); --/* Translation Hint: maximum 'nsNET' = 10 */ -+/* Translation Hint: maximum 'nsNET' = 7 */ - Head_nlstab[EU_NS3] = _("nsNET"); - Desc_nlstab[EU_NS3] = _("NET namespace Inode"); --/* Translation Hint: maximum 'nsPID' = 10 */ -+/* Translation Hint: maximum 'nsPID' = 7 */ - Head_nlstab[EU_NS4] = _("nsPID"); - Desc_nlstab[EU_NS4] = _("PID namespace Inode"); --/* Translation Hint: maximum 'nsUSER' = 10 */ -+/* Translation Hint: maximum 'nsUSER' = 7 */ - Head_nlstab[EU_NS5] = _("nsUSER"); - Desc_nlstab[EU_NS5] = _("USER namespace Inode"); --/* Translation Hint: maximum 'nsUTS' = 10 */ -+/* Translation Hint: maximum 'nsUTS' = 7 */ - Head_nlstab[EU_NS6] = _("nsUTS"); - Desc_nlstab[EU_NS6] = _("UTS namespace Inode"); - } --- -1.7.9.2 - diff --git a/0047-sysctl-increase-max-supported-line-length-of-the-con.patch b/0047-sysctl-increase-max-supported-line-length-of-the-con.patch deleted file mode 100644 index 58ea4b4..0000000 --- a/0047-sysctl-increase-max-supported-line-length-of-the-con.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 9c7e8b82f872e2d46ce866255ff132e0e6a0f937 Mon Sep 17 00:00:00 2001 -From: Sami Farin -Date: Fri, 14 Mar 2014 00:00:00 -0600 -Subject: [PATCH] sysctl: increase max supported line length of the conf file - -I ran into this limit with net.ipv4.ip_local_reserved_ports , -sysctl complained about the line after the long line, further -slowing down my error hunting. - -Due to fgets usage, increase buffer size to 4096 chars with -minimum amount of code changes. - -Signed-off-by: Sami Farin ---- - sysctl.c | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -diff --git sysctl.c sysctl.c -index 51af15d..fc224e5 100644 ---- sysctl.c -+++ sysctl.c -@@ -483,14 +483,16 @@ static int pattern_match(const char *string, const char *pat) - return (1); - } - -+#define LINELEN 4096 -+ - /* - * Preload the sysctl's from the conf file. We parse the file and then - * reform it (strip out whitespace). - */ - static int Preload(const char *restrict const filename) - { -- char oneline[256]; -- char buffer[256]; -+ char oneline[LINELEN]; -+ char buffer[LINELEN]; - FILE *fp; - char *t; - int n = 0; --- -1.7.9.2 - diff --git a/0049-fix-url-for-rsync.patch b/0049-fix-url-for-rsync.patch deleted file mode 100644 index 8c342a6..0000000 --- a/0049-fix-url-for-rsync.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 0b3f63456a1265e13274fd7c6ba0903e4cb3db5a Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Tr=E1=BA=A7n=20Ng=E1=BB=8Dc=20Qu=C3=A2n?= - -Date: Thu, 17 Apr 2014 14:12:01 +0700 -Subject: [PATCH] fix url for rsync -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Trần Ngọc Quân ---- - Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git Makefile.am Makefile.am -index 335fbc5..b32e9ce 100644 ---- Makefile.am -+++ Makefile.am -@@ -124,4 +124,4 @@ dist-hook: - echo $(VERSION) > $(distdir)/.tarball-version - - get-trans: -- rsync -Lrtvz translationproject.org::tp/latest/procps/ po -+ rsync -Lrtvz translationproject.org::tp/latest/procps-ng/ po --- -1.7.9.2 - diff --git a/0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch b/0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch deleted file mode 100644 index 019779c..0000000 --- a/0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch +++ /dev/null @@ -1,73 +0,0 @@ -From e2868da34e6d2085fdafcd9b28cdbf01c69361c5 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Fri, 25 Apr 2014 00:00:00 -0600 -Subject: [PATCH] top: update copyright dates plus 1 preprocessor change - -Signed-off-by: Jim Warner ---- - top/top.c | 4 ++-- - top/top.h | 2 +- - top/top_nls.c | 2 +- - top/top_nls.h | 2 +- - 4 files changed, 5 insertions(+), 5 deletions(-) - -diff --git top/top.c top/top.c -index cbcb152..0428496 100644 ---- top/top.c -+++ top/top.c -@@ -1,6 +1,6 @@ - /* top.c - Source file: show Linux processes */ - /* -- * Copyright (c) 2002-2013, by: James C. Warner -+ * Copyright (c) 2002-2014, by: James C. Warner - * All rights reserved. 8921 Hilloway Road - * Eden Prairie, Minnesota 55347 USA - * -@@ -3464,7 +3464,7 @@ static void configs_read (void) { - if (2 != fscanf(fp, "%3s\tfieldscur=%79s\n" - , w->rc.winname, w->rc.fieldscur)) - goto default_or_error; --#if PFLAGSSIZ > 80 -+#if PFLAGSSIZ != 80 - // too bad fscanf is not as flexible with his format string as snprintf - # error Hey, fix the above fscanf 'PFLAGSSIZ' dependency ! - #endif -diff --git top/top.h top/top.h -index 5d1aead..836b9fb 100644 ---- top/top.h -+++ top/top.h -@@ -1,6 +1,6 @@ - /* top.h - Header file: show Linux processes */ - /* -- * Copyright (c) 2002-2013, by: James C. Warner -+ * Copyright (c) 2002-2014, by: James C. Warner - * All rights reserved. 8921 Hilloway Road - * Eden Prairie, Minnesota 55347 USA - * -diff --git top/top_nls.c top/top_nls.c -index b47459a..01c8d1e 100644 ---- top/top_nls.c -+++ top/top_nls.c -@@ -1,6 +1,6 @@ - /* top_nls.c - provide the basis for future nls translations */ - /* -- * Copyright (c) 2011-2013, by: James C. Warner -+ * Copyright (c) 2011-2014, by: James C. Warner - * All rights reserved. 8921 Hilloway Road - * Eden Prairie, Minnesota 55347 USA - * -diff --git top/top_nls.h top/top_nls.h -index 1b6d575..9010263 100644 ---- top/top_nls.h -+++ top/top_nls.h -@@ -1,6 +1,6 @@ - /* top_nls.h - provide the basis for future nls translations */ - /* -- * Copyright (c) 2011-2013, by: James C. Warner -+ * Copyright (c) 2011-2014, by: James C. Warner - * All rights reserved. 8921 Hilloway Road - * Eden Prairie, Minnesota 55347 USA - * --- -1.7.9.2 - diff --git a/0052-top-refactor-man-document-so-as-to-allow-translation.patch b/0052-top-refactor-man-document-so-as-to-allow-translation.patch deleted file mode 100644 index add74e4..0000000 --- a/0052-top-refactor-man-document-so-as-to-allow-translation.patch +++ /dev/null @@ -1,464 +0,0 @@ -From f3e55ee661d54bb667b3c0cf07411094ad7fc980 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 23 Apr 2014 00:00:01 -0500 -Subject: [PATCH] top: refactor man document so as to allow translations - -The majority of changes in this commit are intended to -enable translation of top's man page. There were three -kinds of errors as seen by that po4a-updatepo program. - -. a valid but unrecognized request concerning no-break -. an internally defined macro with a groff .de request -. occasional apostrophe at the beginning of some lines - -With respect to the apostrophe, some have been changed -to back-tic since line placement could not be assured. -And other parts were re-flowed to avoid temptations to -escape as \' (technically an acute accent). Of course, -the opening back-tic with closing apostrophe looks odd -when ASCII, but should be rendered correctly as UTF-8. - -It may yet be necessary to change the remaining single -'opening' quotes to back-tics as translation proceeds. -Should that become necessary, I intend to reduce quote -usage to the bare minimum throughout the man document. - -There were also some formatting changes to enhance the -man2html output and then to other formats via htmldoc. -And, I wish to acknowledge that my meager groff skills -do not serve those programs very well at all. In other -words groff yet remains mostly incomprehensible to me. - -Lastly a few content plus copyright updates were made. - -Message(s): -. Unknown macro '.c2 `'. Remove it from the document, or refer to the Locale::Po4a::Man manpage to see how po4a can handle new macros. -. This page defines a new macro with '.de'. Since po4a is not a real groff parser, this is not supported. -. Unknown macro ''real time' scheduling priority.'. Remove it from the document, or refer to the Locale::Po4a::Man manpage to see how po4a can handle new macros. - -Reference(s): -. oriiginal post/patch -http://www.freelists.org/post/procps/Translations-for-man-pages - -Signed-off-by: Jim Warner ---- - top/top.1 | 138 ++++++++++++++++++++++++++++++------------------------------- - 1 file changed, 69 insertions(+), 69 deletions(-) - -diff --git top/top.1 top/top.1 -index f25acff..644ae46 100644 ---- top/top.1 -+++ top/top.1 -@@ -1,7 +1,7 @@ - .ig - . manual page for NEW and IMPROVED linux top - . --. Copyright (c) 2002-2013, by: James C. Warner -+. Copyright (c) 2002-2014, by: James C. Warner - . All rights reserved. 8921 Hilloway Road - . Eden Prairie, Minnesota 55347 USA - . -@@ -13,14 +13,6 @@ - . - .ll +(\n[half_xtra] + \n[half_xtra]) - . --\# ** we use single quote char (') a lot, so change the no-break ctrl char --.c2 ` --. --\# Our own Bullet style(s) -------------------------- --.de jBu --.IP "o" 3 --.. --. - \# Commonly used strings (for consistency) ---------- - \# - our em-dashes - .ds Em \fR\ \-\-\ \fR -@@ -32,11 +24,11 @@ - .ds F \fIOff\fR - .ds O \fIOn\fR - . --.ds AK asterisk (\'*\') -+.ds AK asterisk (`*') - .ds AM alternate\-display mode - .ds AS auxiliary storage - .ds CF configuration file --.ds CG \'current\' window/field group -+.ds CG `current' window/field group - .ds CI interactive command - \# - Note: our 'Command Line' used in 2 places - \# ( and managed to fit in an 80x24 terminal ) -@@ -44,7 +36,7 @@ - \-\fBu\fR|\fBU\fR user \-\fBp\fR pid \-\fBo\fR fld \-\fBw\fR [cols] \fR - .ds CO command\-line option - .ds CT command toggle --.ds CW \'current\' window -+.ds CW `current' window - .ds FG field group - .ds FM full\-screen mode - .ds KA arrow key -@@ -76,7 +68,7 @@ - . - .\" Document ///////////////////////////////////////////////////////////// - .\" ---------------------------------------------------------------------- --.TH TOP 1 "November 2013" "procps-ng" "User Commands" -+.TH TOP 1 "April 2014" "procps-ng" "User Commands" - .\" ---------------------------------------------------------------------- - - .\" ---------------------------------------------------------------------- -@@ -646,8 +638,8 @@ The process ID (pid) of a task's parent. - .TP 4 - 16.\fB PR \*(Em Priority \fR - The scheduling priority of the task. --If you see 'rt' in this field, it means the task is running under --'real time' scheduling priority. -+If you see 'rt' in this field, it means the task is running -+under 'real time' scheduling priority. - - Under linux, real time priority is somewhat misleading since traditionally - the operating itself was not preemptible. -@@ -880,27 +872,27 @@ Entries marked with an asterisk are the currently displayed fields, - screen width permitting. - - .RS +4 --.jBu -+.IP \(bu 3 - As the on screen instructions indicate, you navigate among the fields with - the\fB Up\fR and\fB Down\fR \*(KAs. - The PgUp, PgDn, Home and End keys can also be used to quickly reach the - first or last available field. - --.jBu -+.IP \(bu 3 - The\fB Right\fR \*(KA selects a field for repositioning and - the\fB Left\fR \*(KA or the <\fBEnter\fR> key commits that field's - placement. - --.jBu -+.IP \(bu 3 - The '\fBd\fR' key or the <\fBSpace\fR> bar toggles a field's display - status, and thus the presence or absence of the asterisk. - --.jBu -+.IP \(bu 3 - The '\fBs\fR' key designates a field as the sort field. - \*(XT 4c. TASK AREA Commands, SORTING for additional information regarding - your selection of a sort field. - --.jBu -+.IP \(bu 3 - The '\fBa\fR' and '\fBw\fR' keys can be used to cycle through all available - windows and the '\fBq\fR' or <\fBEsc\fR> keys exit Fields Management. - .RS -4 -@@ -982,8 +974,8 @@ those \*(CIs applicable to \*(AM. - Removes restrictions on which tasks are shown. - This command will reverse any 'i' (idle tasks) and 'n' (max tasks) - commands that might be active. --It also provides for an exit from pid monitoring, 'user' filtering and --'other' filtering. -+It also provides for an exit from pid monitoring, 'user' filtering -+and 'other' filtering. - See the '\-p' \*(CO for a discussion of PID monitoring, the 'U' or 'u' - \*(CIs for user filtering and the 'O' or 'o' \*(CIs for 'other' filtering. - -@@ -1138,7 +1130,7 @@ This \*(CI can be used to alter the widths of the following fields: - SUID 5 SUSER 8 nsMNT 10 - UID 5 USER 8 nsNET 10 - TTY 8 nsPID 10 -- nsUSR 10 -+ nsUSER 10 - nsUTS 10 - .fi - -@@ -1268,10 +1260,10 @@ The \*(TA \*(CIs are\fB always\fR available in \*(FM. - The \*(TA \*(CIs are\fB never available\fR in \*(AM\fI if\fR the \*(CW's - \*(TD has been toggled \*F (\*(Xt 5. ALTERNATE\-DISPLAY Provisions). - --.TP 2 -+.PP - .\" .................................................. - .B APPEARANCE\fR of \*(TW --.PD 0 -+ - .TP 7 - \ \ \ \fBJ\fR\ \ :\fIJustify-Numeric-Columns\fR toggle \fR - Alternates between right-justified (the default) and -@@ -1330,7 +1322,7 @@ the state of the 'x', 'y' or 'b' toggles. - .PP - .\" .................................................. - .B CONTENT\fR of \*(TW --.PD 0 -+ - .TP 7 - \ \ \ \fBc\fR\ \ :\fICommand-Line/Program-Name\fR toggle \fR - This command will be honored whether or not the 'COMMAND' column -@@ -1400,7 +1392,7 @@ mode in the \*(CW. - .PP - .\" .................................................. - .B SIZE\fR of \*(TW --.PD 0 -+ - .TP 7 - \ \ \ \fBi\fR\ \ :\fIIdle-Process\fR toggle \fR - Displays all tasks or just active tasks. -@@ -1425,10 +1417,12 @@ already been painted. - - \*(NT If you wish to increase the size of the last visible \*(TD when in \*(AM, - simply decrease the size of the \*(TD(s) above it. -+.PP - --.TP 2 - .\" .................................................. - .B SORTING\fR of \*(TW -+.PP -+.RS +3 - For compatibility, this \*(We supports most of the former \*(We sort keys. - Since this is primarily a service to former \*(We users, these commands do - not appear on any help screen. -@@ -1462,10 +1456,8 @@ Moves the sort column to the right unless the current sort field is - the last field being displayed. - - .PP --.in +2 - The following \*(CIs will\fB always\fR be honored whether or not - the current sort field is visible. --.in - - .TP 7 - \ \ \ \fBf\fR | \fBF\fR\ \ :\fIFields-Management \fR -@@ -1479,10 +1471,9 @@ when running \*(We with column highlighting turned \*F. - Using this \*(CI you can alternate between high-to-low and low-to-high sorts. - - .PP --.in +2 - \*(NT Field sorting uses internal values, not those in column display. - Thus, the TTY and WCHAN fields will violate strict ASCII collating sequence. --.in -+.RE - - .\" ...................................................................... - .SS 4d. COLOR Mapping -@@ -1515,6 +1506,7 @@ The Color Mapping screen can also be used to change the \*(CG in - either \*(FM or \*(AM. - Whatever was targeted when 'q' or was pressed will be made current - as you return to the \*(We display. -+.PP - - .\" ---------------------------------------------------------------------- - .SH 5. ALTERNATE\-DISPLAY Provisions -@@ -1537,6 +1529,7 @@ The \*(SA will always exist, even if it's only the message line. - At any given time only\fI one\fR \*(SA can be displayed. - However, depending on your commands, there could be from\fI zero \fR - to\fI four\fR separate \*(TDs currently showing on the screen. -+.PP - - .TP 3 - .B Current Window\fR: -@@ -1578,9 +1571,9 @@ and horizontal scrolling. - - The '+' key does the same for all windows. - The four \*(TDs will reappear, evenly balanced. --They will also have retained any customizations you had previously applied, --except for the 'i' (idle tasks), 'n' (max tasks), 'u'/'U' (user filter), --'o'/'O' (other filter) and scrolling \*(CIs. -+They will also have retained any customizations you had previously -+applied, except for the 'i' (idle tasks), 'n' (max tasks), 'u'/'U' -+(user filter), 'o'/'O' (other filter) and scrolling \*(CIs. - - .TP 7 - *\ \ \fBA\fR\ \ :\fIAlternate-Display-Mode\fR toggle \fR -@@ -1619,9 +1612,9 @@ It does not require that the window name be visible - .IP "*" 3 - The \*(CIs shown with an \*(AK have use beyond \*(AM. - .nf -- \'=', 'A', 'g' are always available -- \'a', 'w' act the same with color mapping -- \ and fields management -+ '=', 'A', 'g' are always available -+ 'a', 'w' act the same with color mapping -+ and fields management - .fi - - .\" ...................................................................... -@@ -1790,28 +1783,31 @@ a mistake, command recall will be your friend. - Remember the Up/Down \*(KAs or their aliases when prompted for input. - - .B Filter Basics --.IP " . " 6 --field names are case sensitive and spelled as in the header --.IP " . " 6 --selection values need not comprise the full displayed field --.IP " . " 6 --a selection is either case insensitive or sensitive to case --.IP " . " 6 --the default is inclusion, prepending '!' denotes exclusions --.IP " . " 6 --multiple selection criteria can be applied to a \*(TW --.IP " . " 6 --inclusion and exclusion criteria can be used simultaneously --.IP " . " 6 --the 1 equality and 2 relational filters can be freely mixed --.IP " . " 6 --separate unique filters are maintained for each \*(TW --.RE -+.RS +3 -+.TP 3 -+1. field names are case sensitive and spelled as in the header -+.TP 3 -+2. selection values need not comprise the full displayed field -+.TP 3 -+3. a selection is either case insensitive or sensitive to case -+.TP 3 -+4. the default is inclusion, prepending '!' denotes exclusions -+.TP 3 -+5. multiple selection criteria can be applied to a \*(TW -+.TP 3 -+6. inclusion and exclusion criteria can be used simultaneously -+.TP 3 -+7. the 1 equality and 2 relational filters can be freely mixed -+.TP 3 -+8. separate unique filters are maintained for each \*(TW -+.PP - - If a field is not turned on or is not currently in view, then your selection - criteria will not affect the display. - Later, should a filtered field become visible, the selection criteria will - then be applied. -+.PP -+.RE - - .B Keyboard Summary - .TP 6 -@@ -1838,6 +1834,7 @@ It also has additional impact so please \*(Xt 4a. GLOBAL Commands. - This clears the selection criteria in all windows, assuming you are in \*(AM. - As with the '=' \*(CI, it too has additional consequences so you might wish to - \*(Xt 5b. COMMANDS for Windows. -+.PP - .RE - - .B Input Requirements -@@ -1867,16 +1864,17 @@ with homogeneous data. - When some field's numeric amounts have been subjected to \fIscaling\fR - while others have not, that data is no longer homogeneous. - --If you establish a relational filter and you \fBhave\fR changed the default --'Numeric' or 'Character' \fIjustification\fR, that filter is likely to fail. -+If you establish a relational filter and you \fBhave\fR changed the -+default 'Numeric' or 'Character' \fIjustification\fR, that filter is likely to fail. - When a relational filter is applied to a memory field and you \fBhave not\fR - changed the \fIscaling\fR, it may produce misleading results. --This happens, for example, because '100.0m' (MiB) would appear greater than --'1.000g' (GiB) when compared as strings. -+This happens, for example, because '100.0m' (MiB) would appear greater -+than '1.000g' (GiB) when compared as strings. - - If your filtered results appear suspect, simply altering justification or - scaling may yet achieve the desired objective. - See the 'j', 'J' and 'e' \*(CIs for additional information. -+.PP - .RE - - .B Potential Problems -@@ -1904,6 +1902,7 @@ So while amounts greater than 9999 exist, they will appear as 2.6m, 197k, etc. - .nf - nMin>9999 ( always a blank \*(TW ) - .fi -+.PP - .RE - - .B Potential Solutions -@@ -1940,13 +1939,14 @@ achieve the failed '9999' objective discussed above. - 'PR>20' + '!PR=-' ( 2 for right result ) - '!nMin=0 ' + '!nMin=1 ' + '!nMin=2 ' + '!nMin=3 ' ... - .fi --.RE -+.RS -3 - - \*(NT When 'Other Filtering' is active, \*(We turns column highlighting - \*F to prevent false matches on internal non-display escape sequences. - Such highlighting will be restored when a window is no longer subject - to filtering. - \*(XC 'x' \*(CI for additional information on sort column highlighting. -+.RE - - .\" ---------------------------------------------------------------------- - .SH 6. FILES -@@ -1990,7 +1990,7 @@ Here is the general layout: - per ea # line a: winname,fieldscur - window # line b: winflags,sortindx,maxtasks - " # line c: summclr,msgsclr,headclr,taskclr -- global # line 15: fixed-width incr -+ global # line 15: width, memory scaling & zeroes overrides - " # any remaining lines are devoted to the - " # generalized 'inspect' provisions - " # discussed below -@@ -2132,7 +2132,7 @@ the authority. - For these stupid tricks, \*(We needs \*(FM. - .\" ( apparently AM static was a potential concern ) - --.jBu -+.IP \(bu 3 - The user interface, through prompts and help, intentionally implies - that the delay interval is limited to tenths of a second. - However, you're free to set any desired delay. -@@ -2155,7 +2155,7 @@ Then do the following: - What you'll see is a very busy Linux doing what he's always done for you, - but there was no program available to illustrate this. - --.jBu -+.IP \(bu 3 - Under an xterm using 'white-on-black' colors, on \*(We's Color Mapping screen - set the task color to black and be sure that task highlighting is set to bold, - not reverse. -@@ -2164,7 +2164,7 @@ Then set the delay interval to around .3 seconds. - After bringing the most active processes into view, what you'll see are - the ghostly images of just the currently running tasks. - --.jBu -+.IP \(bu 3 - Delete the existing rcfile, or create a new symlink. - Start this new version then type 'T' (a secret key, - \*(Xt 4c. Task Area Commands, SORTING) followed by 'W' and 'q'. -@@ -2180,19 +2180,19 @@ on whether or not \*(We will ever reach the \*(We. - .\" ---------------------------------------------------------------------- - For these stupid tricks, \*(We needs \*(AM. - --.jBu -+.IP \(bu 3 - With 3 or 4 \*(TDs visible, pick any window other than the last - and turn idle processes \*F using the 'i' \*(CT. - Depending on where you applied 'i', sometimes several \*(TDs are bouncing and - sometimes it's like an accordion, as \*(We tries his best to allocate space. - --.jBu -+.IP \(bu 3 - Set each window's summary lines differently: one with no memory ('m'); another - with no states ('t'); maybe one with nothing at all, just the message line. - Then hold down 'a' or 'w' and watch a variation on bouncing windows \*(Em - hopping windows. - --.jBu -+.IP \(bu 3 - Display all 4 windows and for each, in turn, set idle processes to \*F using - the 'i' \*(CT. - You've just entered the "extreme bounce" zone. -@@ -2202,7 +2202,7 @@ You've just entered the "extreme bounce" zone. - .\" ---------------------------------------------------------------------- - This stupid trick also requires \*(AM. - --.jBu -+.IP \(bu 3 - Display all 4 windows and make sure that 1:Def is the \*(CW. - Then, keep increasing window size with the 'n' \*(CI until all the other - \*(TDs are "pushed out of the nest". -@@ -2219,7 +2219,7 @@ Then ponder this: - This stupid trick works best without \*(AM, since justification is active - on a per window basis. - --.jBu -+.IP \(bu 3 - Start \*(We and make COMMAND the last (rightmost) column displayed. - If necessary, use the 'c' \*(CT to display command lines and ensure - that forest view mode is active with the 'V' \*(CT. --- -1.7.9.2 - diff --git a/0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch b/0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch deleted file mode 100644 index 4daf7b4..0000000 --- a/0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch +++ /dev/null @@ -1,614 +0,0 @@ -From c9f7cc70251f9496c4dc908e26c273eb3a480e11 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 23 Apr 2014 00:00:02 -0500 -Subject: [PATCH] top: minimize the usage of apostrophes in man document - -In addition to eliminating numerous single quote usage -this commit also escaped '\' a few overlooked hyphens. - -And some 'unformatted' spacings were adjusted as well. - -Signed-off-by: Jim Warner ---- - top/top.1 | 216 +++++++++++++++++++++++++++++++------------------------------ - 1 file changed, 109 insertions(+), 107 deletions(-) - -diff --git top/top.1 top/top.1 -index 644ae46..d5df21c 100644 ---- top/top.1 -+++ top/top.1 -@@ -149,9 +149,9 @@ The remaining Table of Contents - .\" ...................................................................... - .SS Operation - .\" ---------------------------------------------------------------------- --When operating \*(We, the two most important keys are the help ('h' or '?') -+When operating \*(We, the two most important keys are the help (h or ?) - key and quit ('q') key. --Alternatively, you could simply use the traditional interrupt key ('^C') -+Alternatively, you could simply use the traditional interrupt key (^C) - when you're done. - - When started for the first time, you'll be presented with these traditional -@@ -237,31 +237,31 @@ All are explained in detail in the sections that follow. - - .nf - \fIGlobal-defaults\fR -- 'A' - Alt display Off (full-screen) -- * 'd' - Delay time 3.0 seconds -- * 'H' - Threads mode Off (summarize as tasks) -- 'I' - Irix mode On\ \ (no, 'solaris' smp) -- * 'p' - PID monitoring Off (show all processes) -- * 's' - Secure mode Off (unsecured) -- 'B' - Bold enable On\ \ (yes, bold globally) -+ A \- Alt display Off (full-screen) -+ * d \- Delay time 3.0 seconds -+ * H \- Threads mode Off (summarize as tasks) -+ I \- Irix mode On (no, 'solaris' smp) -+ * p \- PID monitoring Off (show all processes) -+ * s \- Secure mode Off (unsecured) -+ B \- Bold enable On (yes, bold globally) - \fISummary-Area-defaults\fR -- 'l' - Load Avg/Uptime On\ \ (thus program name) -- 't' - Task/Cpu states On\ \ (1+1 lines, see '1') -- 'm' - Mem/Swap usage On\ \ (2 lines worth) -- '1' - Single Cpu On\ \ (thus 1 line if smp) -+ l \- Load Avg/Uptime On (thus program name) -+ t \- Task/Cpu states On (1+1 lines, see '1') -+ m \- Mem/Swap usage On (2 lines worth) -+ 1 \- Single Cpu On (thus 1 line if smp) - \fITask-Area-defaults\fR -- 'b' - Bold hilite On\ \ (not 'reverse') -- * 'c' - Command line Off (name, not cmdline) -- * 'i' - Idle tasks On\ \ (show all tasks) -- 'J' - Num align right On\ \ (not left justify) -- 'j' - Str align right Off (not right justify) -- 'R' - Reverse sort On\ \ (pids high-to-low) -- * 'S' - Cumulative time Off (no, dead children) -- * 'u' - User filter Off (show euid only) -- * 'U' - User filter Off (show any uid) -- 'x' - Column hilite Off (no, sort field) -- 'y' - Row hilite On\ \ (yes, running tasks) -- 'z' - color/mono Off (no, colors) -+ b \- Bold hilite On (not 'reverse') -+ * c \- Command line Off (name, not cmdline) -+ * i \- Idle tasks On (show all tasks) -+ J \- Num align right On (not left justify) -+ j \- Str align right Off (not right justify) -+ R \- Reverse sort On (pids high-to-low) -+ * S \- Cumulative time Off (no, dead children) -+ * u \- User filter Off (show euid only) -+ * U \- User filter Off (show any uid) -+ x \- Column hilite Off (no, sort field) -+ y \- Row hilite On (yes, running tasks) -+ z \- color/mono Off (no, colors) - .fi - - .\" ---------------------------------------------------------------------- -@@ -271,7 +271,7 @@ The command-line syntax for \*(We consists of: - - \*(CL - --The typically mandatory switches ('\-') and even whitespace are completely -+The typically mandatory switch ('\-') and even whitespace are completely - optional. - - .TP 5 -@@ -280,7 +280,7 @@ Show library version and the usage prompt, then quit. - - .TP 5 - \-\fBb\fR\ \ :\fIBatch-mode\fR operation \fR --Starts \*(We in 'Batch' mode, which could be useful for sending output -+Starts \*(We in Batch mode, which could be useful for sending output - from \*(We to other programs or to a file. - In this mode, \*(We will not accept input and runs until the iterations - limit you've set with the '\-n' \*(CO or until killed. -@@ -300,8 +300,8 @@ Later this can be changed with the 'd' or 's' \*(CIs. - - Fractional seconds are honored, but a negative number is not allowed. - In all cases, however, such changes are prohibited if \*(We is running --in 'Secure mode', except for root (unless the 's' \*(CO was used). --For additional information on 'Secure mode' \*(Xt 6a. SYSTEM Configuration File. -+in Secure mode, except for root (unless the 's' \*(CO was used). -+For additional information on Secure mode \*(Xt 6a. SYSTEM Configuration File. - - .TP 5 - \-\fBH\fR\ \ :\fIThreads-mode\fR operation \fR -@@ -365,7 +365,7 @@ This mode is far better controlled through the system \*(CF - .TP 5 - \-\fBS\fR\ \ :\fICumulative-time\fR toggle \fR - Starts \*(We with the last remembered 'S' state reversed. --When 'Cumulative time' mode is \*O, each process is listed with the \*(Pu -+When Cumulative time mode is \*O, each process is listed with the \*(Pu - time that it and its dead children have used. - \*(XC 'S' \*(CI for additional information regarding this mode. - -@@ -382,7 +382,7 @@ The 'p', 'u' and 'U' \*(COs are mutually exclusive. - - .TP 5 - \-\fBw\fR\ \ :\fIOutput-width-override\fR as:\ \ \fB-w\fR [\fB number\fR ] \fR --In 'Batch' mode, when used without an argument \*(We will format -+In Batch mode, when used without an argument \*(We will format - output using the COLUMNS= and LINES= environment variables, if set. - Otherwise, width will be fixed at the maximum \*(WX columns. - With an argument, output width can be decreased or increased (up to \*(WX) -@@ -392,10 +392,10 @@ In normal display mode, when used without an argument \*(We will\fI attempt\fR - to format output using the COLUMNS= and LINES= environment variables, if set. - With an argument, output width can only be decreased, not increased. - Whether using environment variables or an argument with \-w, when\fI not\fR --in 'Batch' mode actual terminal dimensions can never be exceeded. -+in Batch mode actual terminal dimensions can never be exceeded. - - \*(NT Without the use of this \*(CO, output width is always based on the --terminal at which \*(We was invoked whether or not in 'Batch' mode. -+terminal at which \*(We was invoked whether or not in Batch mode. - - .\" ---------------------------------------------------------------------- - .SH 2. SUMMARY Display -@@ -500,10 +500,10 @@ In a true SMP environment, if a process is multi-threaded and \*(We is - reported. - You toggle Threads mode with the 'H' \*(CI. - --Also for multi-processor environments, if 'Irix mode' is \*F, \*(We --will operate in 'Solaris mode' where a task's \*(Pu usage will be -+Also for multi-processor environments, if Irix mode is \*F, \*(We -+will operate in Solaris mode where a task's \*(Pu usage will be - divided by the total number of \*(PUs. --You toggle 'Irix/Solaris' modes with the 'I' \*(CI. -+You toggle Irix/Solaris modes with the 'I' \*(CI. - - .TP 4 - 2.\fB %MEM \*(Em Memory Usage (RES) \fR -@@ -523,7 +523,7 @@ Many different hierarchies of cgroups can exist simultaneously on a system - and each hierarchy is attached to one or more subsystems. - A subsystem represents a single resource. - --\*(NT The 'CGROUPS' field, unlike most columns, is not fixed-width. -+\*(NT The CGROUPS field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. -@@ -533,7 +533,7 @@ any truncated data. - .TP 4 - 4.\fB CODE \*(Em Code Size (KiB) \fR - The amount of \*(MP devoted to executable code, also known as --the 'text resident set' size or TRS. -+the Text Resident Set size or TRS. - - .TP 4 - 5.\fB COMMAND \*(Em Command\fB Name\fR or Command\fB Line \fR -@@ -547,10 +547,10 @@ line (like kernel threads) will be shown with only the program name in - brackets, as in this example: - \fR[kthreadd] - --This field may also be impacted by the 'forest view' display mode. -+This field may also be impacted by the forest view display mode. - \*(XC 'V' \*(CI for additional information regarding that mode. - --\*(NT The 'COMMAND' field, unlike most columns, is not fixed-width. -+\*(NT The COMMAND field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. -@@ -562,7 +562,7 @@ any truncated data. - .TP 4 - 6.\fB DATA \*(Em Data + Stack Size (KiB) \fR - The amount of \*(MP devoted to other than executable code, also known as --the 'data resident set' size or DRS. -+the Data Resident Set size or DRS. - - .TP 4 - 7.\fB ENVIRON \*(Em Environment variables \fR -@@ -571,7 +571,7 @@ respective processes. - These variables will be displayed in their raw native order, not the - sorted order you are accustomed to seeing with an unqualified 'set'. - --\*(NT The 'ENVIRON' field, unlike most columns, is not fixed-width. -+\*(NT The ENVIRON field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. -@@ -624,7 +624,7 @@ member of a process group, called the process group leader. - 14.\fB PID \*(Em Process Id \fR - The task's unique process ID, which periodically wraps, though never - restarting at zero. --In kernel terms, it is a dispatchable entity defined by a 'task_struct'. -+In kernel terms, it is a dispatchable entity defined by a task_struct. - - This value may also be used as: a process group ID (\*(Xa PGRP); - a session ID for the session leader (\*(Xa SID); -@@ -639,7 +639,7 @@ The process ID (pid) of a task's parent. - 16.\fB PR \*(Em Priority \fR - The scheduling priority of the task. - If you see 'rt' in this field, it means the task is running --under 'real time' scheduling priority. -+under real time scheduling priority. - - Under linux, real time priority is somewhat misleading since traditionally - the operating itself was not preemptible. -@@ -666,7 +666,7 @@ The status of the task which can be one of: - \fBT\fR = traced or stopped - \fBZ\fR = zombie - --Tasks shown as running should be more properly thought of as 'ready to run' -+Tasks shown as running should be more properly thought of as ready to run - \*(Em their task_struct is simply represented on the Linux run-queue. - Even without a true SMP machine, you may see numerous tasks in this state - depending on \*(We's delay interval and nice value. -@@ -697,7 +697,7 @@ The IDs of any supplementary group(s) established at login or - inherited from a task's parent. - They are displayed in a comma delimited list. - --\*(NT The 'SUPGIDS' field, unlike most columns, is not fixed-width. -+\*(NT The SUPGIDS field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. -@@ -710,7 +710,7 @@ The names of any supplementary group(s) established at login or - inherited from a task's parent. - They are displayed in a comma delimited list. - --\*(NT The 'SUPGRPS' field, unlike most columns, is not fixed-width. -+\*(NT The SUPGRPS field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. -@@ -729,19 +729,19 @@ The non-resident portion of a task's address space. - 28.\fB TGID \*(Em Thread Group Id \fR - The ID of the thread group to which a task belongs. - It is the PID of the thread group leader. --In kernel terms, it represents those tasks that share an 'mm_struct'. -+In kernel terms, it represents those tasks that share an mm_struct. - - .TP 4 - 29.\fB TIME \*(Em \*(PU Time \fR - Total \*(PU time the task has used since it started. --When 'Cumulative mode' is \*O, each process is listed with the \*(Pu -+When Cumulative mode is \*O, each process is listed with the \*(Pu - time that it and its dead children have used. --You toggle 'Cumulative mode' with 'S', which is both a \*(CO and an \*(CI. -+You toggle Cumulative mode with 'S', which is both a \*(CO and an \*(CI. - \*(XC 'S' \*(CI for additional information regarding this mode. - - .TP 4 - 30.\fB TIME+ \*(Em \*(PU Time, hundredths \fR --The same as 'TIME', but reflecting more granularity through hundredths -+The same as TIME, but reflecting more granularity through hundredths - of a second. - - .TP 4 -@@ -780,7 +780,7 @@ swapped out and pages that have been mapped but not used. - - .TP 4 - 37.\fB WCHAN \*(Em Sleeping in Function \fR --Depending on the availability of the kernel link map ('System.map'), this -+Depending on the availability of the kernel link map (System.map), this - field will show the name or the address of the kernel function in which the - task is currently sleeping. - Running tasks will display a dash ('\-') in this column. -@@ -931,9 +931,9 @@ depending on the context in which they are issued. - Size: #, i, n - Sorting: <, >, f, F, R - 4d.\fI Color-Mapping \fR -- , a, B, b, H, M, q, S, T, w, z, 0 - 7 -+ , a, B, b, H, M, q, S, T, w, z, 0 \- 7 - 5b.\fI Commands-for-Windows \fR -- -, _, =, +, A, a, g, G, w -+ \-, _, =, +, A, a, g, G, w - 5c.\fI Scrolling-a-Window \fR - C, Up, Dn, Left, Right, PgUp, PgDn, Home, End - 5d.\fI Searching-in-a-Window \fR -@@ -945,7 +945,7 @@ depending on the context in which they are issued. - .\" ---------------------------------------------------------------------- - The global \*(CIs are\fB always\fR available\fR in both \*(FM and \*(AM. - However, some of these \*(CIs are\fB not available\fR when running --in 'Secure mode'. -+in Secure mode. - - If you wish to know in advance whether or not your \*(We has been - secured, simply ask for help and view the system summary on the second -@@ -974,10 +974,10 @@ those \*(CIs applicable to \*(AM. - Removes restrictions on which tasks are shown. - This command will reverse any 'i' (idle tasks) and 'n' (max tasks) - commands that might be active. --It also provides for an exit from pid monitoring, 'user' filtering --and 'other' filtering. -+It also provides for an exit from PID monitoring, User filtering -+and Other filtering. - See the '\-p' \*(CO for a discussion of PID monitoring, the 'U' or 'u' --\*(CIs for user filtering and the 'O' or 'o' \*(CIs for 'other' filtering. -+\*(CIs for User filtering and the 'O' or 'o' \*(CIs for Other filtering. - - Additionally, any window that has been scrolled will be reset with - this command. -@@ -1000,7 +1000,7 @@ into \*(CWs and \*(FGs. - - .TP 7 - \ \ \ \fBB\fR\ \ :\fIBold-Disable/Enable\fR toggle \fR --This command will influence use of the 'bold' terminfo capability and -+This command will influence use of the bold terminfo capability and - alters\fB both\fR the \*(SA and \*(TA for the \*(CW. - While it is intended primarily for use with dumb terminals, it can be - applied anytime. -@@ -1062,7 +1062,7 @@ Otherwise, \*(We displays a summation of all threads in each process. - - .TP 7 - \ \ \ \fBI\fR\ \ :\fIIrix/Solaris-Mode\fR toggle \fR --When operating in 'Solaris mode' ('I' toggled \*F), a task's \*(Pu usage -+When operating in Solaris mode ('I' toggled \*F), a task's \*(Pu usage - will be divided by the total number of \*(PUs. - After issuing this command, you'll be told the new state of this toggle. - -@@ -1167,13 +1167,13 @@ summarized here for future reference. - - .nf - \fI key function \fR -- '=' alternate status\-line, file or pipeline -- '/' find, equivalent to 'L' locate -- 'n' find next, equivalent to '&' locate next -+ = alternate status\-line, file or pipeline -+ / find, equivalent to 'L' locate -+ n find next, equivalent to '&' locate next - scroll down, equivalent to -- 'b' scroll up, equivalent to -- 'g' first line, equivalent to -- 'G' last line, equivalent to -+ b scroll up, equivalent to -+ g first line, equivalent to -+ G last line, equivalent to - .fi - - .TP 7 -@@ -1183,7 +1183,7 @@ colors for the \*(CW, or for all windows. - For details regarding this \*(CI \*(Xt 4d. COLOR Mapping. - - .IP "*" 3 --The commands shown with an \*(AK are not available in 'Secure mode', -+The commands shown with an \*(AK are not available in Secure mode, - nor will they be shown on the level-1 help screen. - - .\" ...................................................................... -@@ -1215,7 +1215,7 @@ of the '1', '2' or '3' \*(CTs and whether or not \*(We is running under - true SMP. - - This portion of the \*(SA is also influenced by the 'H' \*(CI toggle, --as reflected in the total label which shows either 'Tasks' or 'Threads'. -+as reflected in the total label which shows either Tasks or Threads. - - .TP 7 - \ \ \ \fBm\fR\ \ :\fIMemory/Swap-Usage\fR toggle \fR -@@ -1298,7 +1298,7 @@ The sort field might\fI not\fR be visible because: - 1) there is insufficient\fI Screen Width \fR - 2) the 'f' \*(CI turned it \*F - --\*(NT Whenever 'Searching' and/or 'Other Filtering' is active in a window, -+\*(NT Whenever Searching and/or Other Filtering is active in a window, - column highlighting is temporarily disabled. - \*(XC notes at the end of topics 5d. SEARCHING and 5e. FILTERING for an - explanation why. -@@ -1325,7 +1325,7 @@ the state of the 'x', 'y' or 'b' toggles. - - .TP 7 - \ \ \ \fBc\fR\ \ :\fICommand-Line/Program-Name\fR toggle \fR --This command will be honored whether or not the 'COMMAND' column -+This command will be honored whether or not the COMMAND column - is currently visible. - Later, should that field come into view, the change you applied will be seen. - -@@ -1348,7 +1348,7 @@ related \*(CIs. - - .TP 7 - \ \ \ \fBS\fR\ \ :\fICumulative-Time-Mode\fR toggle \fR --When 'Cumulative mode' is \*O, each process is listed with the \*(Pu -+When Cumulative mode is \*O, each process is listed with the \*(Pu - time that it and its dead children have used. - - When \*F, programs that fork into many separate tasks will appear -@@ -1359,13 +1359,13 @@ Experiment with two \*(TWs sharing the same sort field but with different 'S' - states and see which representation you prefer. - - After issuing this command, you'll be informed of the new state of this toggle. --If you wish to know in advance whether or not 'Cumulative mode' is in -+If you wish to know in advance whether or not Cumulative mode is in - effect, simply ask for help and view the window summary on the second line. - - .TP 7 - \ \ \ \fBu\fR | \fBU\fR\ \ :\fIShow-Specific-User-Only \fR - You will be prompted for the\fB uid\fR or\fB name\fR of the user to display. --The '\-u' option matches on \fB effective\fR user whereas the '\-U' option -+The \-u option matches on \fB effective\fR user whereas the \-U option - matches on\fB any\fR user (real, effective, saved, or filesystem). - - Thereafter, in that \*(TW only matching users will be shown, or possibly -@@ -1427,12 +1427,12 @@ For compatibility, this \*(We supports most of the former \*(We sort keys. - Since this is primarily a service to former \*(We users, these commands do - not appear on any help screen. - .nf -- \fI command sorted-field supported \fR -- A start time (non-display) \fB No \fR -- M %MEM Yes -- N PID Yes -- P %CPU Yes -- T TIME+ Yes -+ \fI command sorted-field supported \fR -+ A start time (non-display) \fB No \fR -+ M %MEM Yes -+ N PID Yes -+ P %CPU Yes -+ T TIME+ Yes - .fi - - Before using any of the following sort provisions, \*(We suggests that you -@@ -1442,8 +1442,8 @@ That will help ensure that the actual sort environment matches your intent. - The following \*(CIs will\fB only\fR be honored when the current sort field - is\fB visible\fR. - The sort field might\fI not\fR be visible because: -- 1) there is insufficient\fI Screen Width \fR -- 2) the 'f' \*(CI turned it \*F -+ 1) there is insufficient\fI Screen Width \fR -+ 2) the 'f' \*(CI turned it \*F - - .TP 7 - \ \ \ \fB<\fR\ \ :\fIMove-Sort-Field-Left \fR -@@ -1488,13 +1488,13 @@ The following \*(CIs are available. - \fB4\fR upper case letters to select a\fB target \fR - \fB8\fR numbers to select a\fB color \fR - normal toggles available \fR -- 'B' :bold disable/enable -- 'b' :running tasks "bold"/reverse -- 'z' :color/mono -+ B :bold disable/enable -+ b :running tasks "bold"/reverse -+ z :color/mono - other commands available \fR -- 'a'/'w' :apply, then go to next/prior -+ a/w :apply, then go to next/prior - :apply and exit -- 'q' :abandon current changes and exit -+ q :abandon current changes and exit - .fi - - If you use 'a' or 'w' to cycle the targeted window, you will -@@ -1563,8 +1563,8 @@ as the only display element. - .TP 7 - *\ \ \fB=\fR | \fB+\fR\ \ :\fIEqualize-(reinitialize)-Window(s) \fR - The '=' key forces the \*(CW's \*(TD to be visible. --It also reverses any 'i' (idle tasks), 'n' (max tasks), 'u'/'U' (user filter) --and 'o'/'O' (other filter) commands that might be active. -+It also reverses any 'i' (idle tasks), 'n' (max tasks), 'u/U' (user filter) -+and 'o/O' (other filter) commands that might be active. - Also, if the window had been scrolled, it will be reset with this command. - \*(XT 5c. SCROLLING a Window for additional information regarding vertical - and horizontal scrolling. -@@ -1572,8 +1572,8 @@ and horizontal scrolling. - The '+' key does the same for all windows. - The four \*(TDs will reappear, evenly balanced. - They will also have retained any customizations you had previously --applied, except for the 'i' (idle tasks), 'n' (max tasks), 'u'/'U' --(user filter), 'o'/'O' (other filter) and scrolling \*(CIs. -+applied, except for the 'i' (idle tasks), 'n' (max tasks), 'u/U' -+(user filter), 'o/O' (other filter) and scrolling \*(CIs. - - .TP 7 - *\ \ \fBA\fR\ \ :\fIAlternate-Display-Mode\fR toggle \fR -@@ -1587,7 +1587,7 @@ chosen to make visible. - *\ \ \fBa\fR | \fBw\fR\ \ :\fINext-Window-Forward/Backward \fR - This will change the \*(CW, which in turn changes the window to which - commands are directed. --These keys act in a circular fashion so you can reach any desired \*(CW -+These keys act in a circular fashion so you can reach any desired window - using either key. - - Assuming the window name is visible (you have not toggled 'l' \*F), -@@ -1612,9 +1612,9 @@ It does not require that the window name be visible - .IP "*" 3 - The \*(CIs shown with an \*(AK have use beyond \*(AM. - .nf -- '=', 'A', 'g' are always available -- 'a', 'w' act the same with color mapping -- and fields management -+ =, A, g are always available -+ a, w act the same with color mapping -+ and fields management - .fi - - .\" ...................................................................... -@@ -1765,15 +1765,16 @@ could yet produce a successful '&' search. - The above \*(CIs are\fB always\fR available in \*(FM but\fB never\fR - available in \*(AM if the \*(CW's \*(TD has been toggled \*F. - --\*(NT Whenever a search key is typed, \*(We will turn column highlighting --\*F to prevent false matches on internal non-display escape sequences. -+\*(NT Whenever a Search is active in a window, \*(We will turn -+column highlighting \*F to prevent false matches on internal non-display -+escape sequences. - Such highlighting will be restored when a window's search string is empty. - \*(XC 'x' \*(CI for additional information on sort column highlighting. - - .\" ...................................................................... - .SS 5e. FILTERING in a Window - .\" ---------------------------------------------------------------------- --You can use the 'Other Filter' feature to establish selection criteria which -+You can use this Other Filter feature to establish selection criteria which - will then determine which tasks are shown in the \*(CW. - - Establishing a filter requires: 1) a field name; 2) an operator; and -@@ -1865,7 +1866,7 @@ When some field's numeric amounts have been subjected to \fIscaling\fR - while others have not, that data is no longer homogeneous. - - If you establish a relational filter and you \fBhave\fR changed the --default 'Numeric' or 'Character' \fIjustification\fR, that filter is likely to fail. -+default Numeric or Character \fIjustification\fR, that filter is likely to fail. - When a relational filter is applied to a memory field and you \fBhave not\fR - changed the \fIscaling\fR, it may produce misleading results. - This happens, for example, because '100.0m' (MiB) would appear greater -@@ -1908,7 +1909,7 @@ So while amounts greater than 9999 exist, they will appear as 2.6m, 197k, etc. - .B Potential Solutions - .RS +3 - .P --These examples illustrate how 'Other Filtering' can be creatively -+These examples illustrate how Other Filtering can be creatively - applied to achieve almost any desired result. - Single quotes are sometimes shown to delimit the spaces which are part of - a filter or to represent a request for status (^O) accurately. -@@ -1941,8 +1942,9 @@ achieve the failed '9999' objective discussed above. - .fi - .RS -3 - --\*(NT When 'Other Filtering' is active, \*(We turns column highlighting --\*F to prevent false matches on internal non-display escape sequences. -+\*(NT Whenever Other Filtering is active in a window, \*(We will turn -+column highlighting \*F to prevent false matches on internal non-display -+escape sequences. - Such highlighting will be restored when a window is no longer subject - to filtering. - \*(XC 'x' \*(CI for additional information on sort column highlighting. -@@ -1954,7 +1956,7 @@ to filtering. - .\" ...................................................................... - .SS 6a. SYSTEM Configuration File - .\" ---------------------------------------------------------------------- --The presence of this file will influence which version of the 'help' screen -+The presence of this file will influence which version of the help screen - is shown to an ordinary user. - More importantly, it will limit what ordinary users are allowed - to do when \*(We is running. -@@ -1973,8 +1975,8 @@ It must have only two lines. - - Here is an example of the contents of\fI /etc/toprc\fR: - .nf -- s # line 1: 'secure' mode switch -- 5.0 # line 2: 'delay'\ \ interval in seconds -+ s # line 1: secure mode switch -+ 5.0 # line 2: delay interval in seconds - .fi - - .\" ...................................................................... -@@ -1992,7 +1994,7 @@ Here is the general layout: - " # line c: summclr,msgsclr,headclr,taskclr - global # line 15: width, memory scaling & zeroes overrides - " # any remaining lines are devoted to the -- " # generalized 'inspect' provisions -+ " # generalized inspect provisions - " # discussed below - .fi - -@@ -2087,7 +2089,7 @@ If you want a truer representation, any embedded tabs should be expanded. - # next would have contained '\\t' ... - # file ^I ^I /proc/%d/status - # but this will eliminate embedded '\\t' ... -- pipe ^I ^I cat /proc/%d/status | expand - -+ pipe ^I ^I cat /proc/%d/status | expand \- - .fi - - The above example takes what could have been a 'file' entry but employs -@@ -2121,7 +2123,7 @@ In that way, many more choices can be made visible. - .\" ---------------------------------------------------------------------- - .SH 7. STUPID TRICKS Sampler - .\" ---------------------------------------------------------------------- --Many of these 'tricks' work best when you give \*(We a scheduling boost. -+Many of these tricks work best when you give \*(We a scheduling boost. - So plan on starting him with a nice value of \-10, assuming you've got - the authority. - --- -1.7.9.2 - diff --git a/0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch b/0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch deleted file mode 100644 index dc35503..0000000 --- a/0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch +++ /dev/null @@ -1,1056 +0,0 @@ -From 2f4f175c59bfa3989d4f40d549a5be808bc5ceca Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 23 Apr 2014 00:00:03 -0500 -Subject: [PATCH] top: swap opening quotes for back-tics in man document - -Signed-off-by: Jim Warner ---- - top/top.1 | 312 ++++++++++++++++++++++++++++++------------------------------- - 1 file changed, 156 insertions(+), 156 deletions(-) - -diff --git top/top.1 top/top.1 -index d5df21c..c15a871 100644 ---- top/top.1 -+++ top/top.1 -@@ -82,7 +82,7 @@ top \- display Linux processes - \*(WE \*(CL - - --The traditional switches '\-' and whitespace are optional. -+The traditional switches `\-' and whitespace are optional. - - .\" ---------------------------------------------------------------------- - .SH DESCRIPTION -@@ -240,17 +240,17 @@ All are explained in detail in the sections that follow. - A \- Alt display Off (full-screen) - * d \- Delay time 3.0 seconds - * H \- Threads mode Off (summarize as tasks) -- I \- Irix mode On (no, 'solaris' smp) -+ I \- Irix mode On (no, `solaris' smp) - * p \- PID monitoring Off (show all processes) - * s \- Secure mode Off (unsecured) - B \- Bold enable On (yes, bold globally) - \fISummary-Area-defaults\fR - l \- Load Avg/Uptime On (thus program name) -- t \- Task/Cpu states On (1+1 lines, see '1') -+ t \- Task/Cpu states On (1+1 lines, see `1') - m \- Mem/Swap usage On (2 lines worth) - 1 \- Single Cpu On (thus 1 line if smp) - \fITask-Area-defaults\fR -- b \- Bold hilite On (not 'reverse') -+ b \- Bold hilite On (not `reverse') - * c \- Command line Off (name, not cmdline) - * i \- Idle tasks On (show all tasks) - J \- Num align right On (not left justify) -@@ -283,35 +283,35 @@ Show library version and the usage prompt, then quit. - Starts \*(We in Batch mode, which could be useful for sending output - from \*(We to other programs or to a file. - In this mode, \*(We will not accept input and runs until the iterations --limit you've set with the '\-n' \*(CO or until killed. -+limit you've set with the `\-n' \*(CO or until killed. - - .TP 5 - \-\fBc\fR\ \ :\fICommand-line/Program-name\fR toggle \fR --Starts \*(We with the last remembered 'c' state reversed. -+Starts \*(We with the last remembered `c' state reversed. - Thus, if \*(We was displaying command lines, now that field will show program - names, and visa versa. --\*(XC 'c' \*(CI for additional information. -+\*(XC `c' \*(CI for additional information. - - .TP 5 - \-\fBd\fR\ \ :\fIDelay-time\fR interval as:\ \ \fB-d ss.t\fR (\fIsecs\fR.\fItenths\fR) \fR - Specifies the delay between screen updates, and overrides the corresponding - value in one's personal \*(CF or the startup default. --Later this can be changed with the 'd' or 's' \*(CIs. -+Later this can be changed with the `d' or `s' \*(CIs. - - Fractional seconds are honored, but a negative number is not allowed. - In all cases, however, such changes are prohibited if \*(We is running --in Secure mode, except for root (unless the 's' \*(CO was used). -+in Secure mode, except for root (unless the `s' \*(CO was used). - For additional information on Secure mode \*(Xt 6a. SYSTEM Configuration File. - - .TP 5 - \-\fBH\fR\ \ :\fIThreads-mode\fR operation \fR - Instructs \*(We to display individual threads. - Without this \*(CO a summation of all threads in each process is shown. --Later this can be changed with the 'H' \*(CI. -+Later this can be changed with the `H' \*(CI. - - .TP 5 - \-\fBi\fR\ \ :\fIIdle-process\fR toggle \fR --Starts \*(We with the last remembered 'i' state reversed. -+Starts \*(We with the last remembered `i' state reversed. - When this toggle is \*F, tasks that have not used any \*(PU since the - last update will not be displayed. - For additional information regarding this toggle -@@ -326,8 +326,8 @@ produce before ending. - \-\fBo\fR\ \ :\fIOverride-sort-field\fR as:\fB\ \ \-o fieldname \fR - Specifies the name of the field on which tasks will be sorted, independent - of what is reflected in the configuration file. --You can prepend a '+' or '\-' to the field name to also override the sort direction. --A leading '+' will force sorting high to low, whereas a '\-' will ensure a low to high -+You can prepend a `+' or `\-' to the field name to also override the sort direction. -+A leading `+' will force sorting high to low, whereas a `\-' will ensure a low to high - ordering. - - This option exists primarily to support automated/scripted batch mode -@@ -352,9 +352,9 @@ itself once it is running. - - This is a \*(CO only and should you wish to return to normal operation, - it is not necessary to quit and restart \*(We \*(Em just issue any --of these \*(CIs: '=', 'u' or 'U'. -+of these \*(CIs: `=', `u' or `U'. - --The 'p', 'u' and 'U' \*(COs are mutually exclusive. -+The `p', `u' and `U' \*(COs are mutually exclusive. - - .TP 5 - \-\fBs\fR\ \ :\fISecure-mode\fR operation \fR -@@ -364,21 +364,21 @@ This mode is far better controlled through the system \*(CF - - .TP 5 - \-\fBS\fR\ \ :\fICumulative-time\fR toggle \fR --Starts \*(We with the last remembered 'S' state reversed. -+Starts \*(We with the last remembered `S' state reversed. - When Cumulative time mode is \*O, each process is listed with the \*(Pu - time that it and its dead children have used. --\*(XC 'S' \*(CI for additional information regarding this mode. -+\*(XC `S' \*(CI for additional information regarding this mode. - - .TP 5 - \-\fBu\fR | \-\fBU\fR\ \ :\fIUser-filter-mode\fR as:\ \ \fB-u\fR | \fB-U number\fR or\fB name \fR - Display only processes with a user id or user name matching that given. --The '\-u' option matches on \fI effective\fR user whereas the '\-U' option -+The `\-u' option matches on \fI effective\fR user whereas the `\-U' option - matches on\fI any\fR user (real, effective, saved, or filesystem). - - Prepending an exclamation point ('!') to the user id or name instructs top - to display only processes with users not matching the one provided. - --The 'p', 'u' and 'U' \*(COs are mutually exclusive. -+The `p', `u' and `U' \*(COs are mutually exclusive. - - .TP 5 - \-\fBw\fR\ \ :\fIOutput-width-override\fR as:\ \ \fB-w\fR [\fB number\fR ] \fR -@@ -448,7 +448,7 @@ kernel versions are shown first. - .\" ---------------------------------------------------------------------- - This portion consists of two lines which may express values in kibibytes (KiB) - through exbibytes (EiB) depending on the scaling factor enforced --with the 'E' \*(CI. -+with the `E' \*(CI. - - Line 1 reflects \*(MP, classified as: - .nf -@@ -479,16 +479,16 @@ This table may help in interpreting the scaled values displayed: - Listed below are \*(We's available process fields (columns). - They are shown in strict ascii alphabetical order. - You may customize their position and whether or not they are displayable --with the 'f' or 'F' (Fields Management) \*(CIs. -+with the `f' or `F' (Fields Management) \*(CIs. - - Any field is selectable as the sort field, and you control whether they - are sorted high-to-low or low-to-high. - For additional information on sort provisions - \*(Xt 4c. TASK AREA Commands, SORTING. - --The fields related to \*(MP or \*(MV reference '(KiB)' as the default, -+The fields related to \*(MP or \*(MV reference `(KiB)' as the default, - unsuffixed display mode. --Such fields can, however, be scaled differently via the 'e' \*(CI. -+Such fields can, however, be scaled differently via the `e' \*(CI. - - .TP 4 - 1.\fB %CPU \*(Em \*(PU Usage \fR -@@ -498,12 +498,12 @@ expressed as a percentage of total \*(PU time. - In a true SMP environment, if a process is multi-threaded and \*(We is - \fInot\fR operating in Threads mode, amounts greater than 100% may be - reported. --You toggle Threads mode with the 'H' \*(CI. -+You toggle Threads mode with the `H' \*(CI. - - Also for multi-processor environments, if Irix mode is \*F, \*(We - will operate in Solaris mode where a task's \*(Pu usage will be - divided by the total number of \*(PUs. --You toggle Irix/Solaris modes with the 'I' \*(CI. -+You toggle Irix/Solaris modes with the `I' \*(CI. - - .TP 4 - 2.\fB %MEM \*(Em Memory Usage (RES) \fR -@@ -512,7 +512,7 @@ A task's currently used share of available \*(MP. - .TP 4 - 3.\fB CGROUPS \*(Em Control Groups \fR - The names of the control group(s) to which a process belongs, --or '\-' if not applicable for that process. -+or `\-' if not applicable for that process. - - Control Groups provide for allocating resources (cpu, memory, network - bandwidth, etc.) among installation-defined groups of processes. -@@ -539,7 +539,7 @@ the Text Resident Set size or TRS. - 5.\fB COMMAND \*(Em Command\fB Name\fR or Command\fB Line \fR - Display the command line used to start a task or the name of the associated - program. --You toggle between command\fI line\fR and\fI name\fR with 'c', which is both -+You toggle between command\fI line\fR and\fI name\fR with `c', which is both - a \*(CO and an \*(CI. - - When you've chosen to display command lines, processes without a command -@@ -548,14 +548,14 @@ brackets, as in this example: - \fR[kthreadd] - - This field may also be impacted by the forest view display mode. --\*(XC 'V' \*(CI for additional information regarding that mode. -+\*(XC `V' \*(CI for additional information regarding that mode. - - \*(NT The COMMAND field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated - all remaining screen width (up to the maximum \*(WX characters). - Even so, such variable width fields could still suffer truncation. - This is especially true for this field when command lines are being --displayed (the 'c' \*(CI.) -+displayed (the `c' \*(CI.) - \*(XT 5c. SCROLLING a Window for additional information on accessing - any truncated data. - -@@ -569,7 +569,7 @@ the Data Resident Set size or DRS. - Display all of the environment variables, if any, as seen by the - respective processes. - These variables will be displayed in their raw native order, not the --sorted order you are accustomed to seeing with an unqualified 'set'. -+sorted order you are accustomed to seeing with an unqualified `set'. - - \*(NT The ENVIRON field, unlike most columns, is not fixed-width. - When displayed, it plus any other variable width columns will be allocated -@@ -638,7 +638,7 @@ The process ID (pid) of a task's parent. - .TP 4 - 16.\fB PR \*(Em Priority \fR - The scheduling priority of the task. --If you see 'rt' in this field, it means the task is running -+If you see `rt' in this field, it means the task is running - under real time scheduling priority. - - Under linux, real time priority is somewhat misleading since traditionally -@@ -736,8 +736,8 @@ In kernel terms, it represents those tasks that share an mm_struct. - Total \*(PU time the task has used since it started. - When Cumulative mode is \*O, each process is listed with the \*(Pu - time that it and its dead children have used. --You toggle Cumulative mode with 'S', which is both a \*(CO and an \*(CI. --\*(XC 'S' \*(CI for additional information regarding this mode. -+You toggle Cumulative mode with `S', which is both a \*(CO and an \*(CI. -+\*(XC `S' \*(CI for additional information regarding this mode. - - .TP 4 - 30.\fB TIME+ \*(Em \*(PU Time, hundredths \fR -@@ -757,7 +757,7 @@ The name of the controlling terminal. - This is usually the device (serial port, pty, etc.) from which the - process was started, and which it uses for input or output. - However, a task need not be associated with a terminal, in which case --you'll see '?' displayed. -+you'll see `?' displayed. - - .TP 4 - 33.\fB UID \*(Em User Id \fR -@@ -836,7 +836,7 @@ IP addresses, IP routing, port numbers, etc. - 45.\fB nsPID \*(Em PID namespace \fR - The Inode of the namespace used to isolate process ID numbers - meaning they need not remain unique. --Thus, each such namespace could have its own 'init' (PID #1) to -+Thus, each such namespace could have its own `init' (PID #1) to - manage various initialization tasks and reap orphaned child processes. - - .TP 4 -@@ -865,7 +865,7 @@ last update (see nMin). - .\" ...................................................................... - .SS 3b. MANAGING Fields - .\" ---------------------------------------------------------------------- --After pressing the \*(CI 'f' or 'F' (Fields Management) you will be presented -+After pressing the \*(CI `f' or `F' (Fields Management) you will be presented - with a screen showing: 1) the \*(CW name; 2) the designated sort field; - 3) all fields in their current order along with descriptions. - Entries marked with an asterisk are the currently displayed fields, -@@ -884,25 +884,25 @@ the\fB Left\fR \*(KA or the <\fBEnter\fR> key commits that field's - placement. - - .IP \(bu 3 --The '\fBd\fR' key or the <\fBSpace\fR> bar toggles a field's display -+The `\fBd\fR' key or the <\fBSpace\fR> bar toggles a field's display - status, and thus the presence or absence of the asterisk. - - .IP \(bu 3 --The '\fBs\fR' key designates a field as the sort field. -+The `\fBs\fR' key designates a field as the sort field. - \*(XT 4c. TASK AREA Commands, SORTING for additional information regarding - your selection of a sort field. - - .IP \(bu 3 --The '\fBa\fR' and '\fBw\fR' keys can be used to cycle through all available --windows and the '\fBq\fR' or <\fBEsc\fR> keys exit Fields Management. -+The `\fBa\fR' and `\fBw\fR' keys can be used to cycle through all available -+windows and the `\fBq\fR' or <\fBEsc\fR> keys exit Fields Management. - .RS -4 - - .PP - The Fields Management screen can also be used to change the \*(CG in - either \*(FM or \*(AM. --Whatever was targeted when 'q' or was pressed will be made current -+Whatever was targeted when `q' or was pressed will be made current - as you return to the \*(We display. --\*(XT 5. ALTERNATE\-DISPLAY Provisions and the 'g' \*(CI for insight -+\*(XT 5. ALTERNATE\-DISPLAY Provisions and the `g' \*(CI for insight - into \*(CWs and \*(FGs. - - .PP -@@ -966,18 +966,18 @@ There are two help levels available. - The first will provide a reminder of all the basic \*(CIs. - If \*(We is\fI secured\fR, that screen will be abbreviated. - --Typing 'h' or '?' on that help screen will take you to help for -+Typing `h' or `?' on that help screen will take you to help for - those \*(CIs applicable to \*(AM. - - .TP 7 - \ \ \ \fB=\fR\ \ :\fIExit-Task-Limits \fR - Removes restrictions on which tasks are shown. --This command will reverse any 'i' (idle tasks) and 'n' (max tasks) -+This command will reverse any `i' (idle tasks) and `n' (max tasks) - commands that might be active. - It also provides for an exit from PID monitoring, User filtering - and Other filtering. --See the '\-p' \*(CO for a discussion of PID monitoring, the 'U' or 'u' --\*(CIs for User filtering and the 'O' or 'o' \*(CIs for Other filtering. -+See the `\-p' \*(CO for a discussion of PID monitoring, the `U' or `u' -+\*(CIs for User filtering and the `O' or `o' \*(CIs for Other filtering. - - Additionally, any window that has been scrolled will be reset with - this command. -@@ -995,7 +995,7 @@ Fields like UID, GID, NI, PR or P are not affected by this toggle. - .TP 7 - \ \ \ \fBA\fR\ \ :\fIAlternate-Display-Mode\fR toggle \fR - This command will switch between \*(FM and \*(AM. --\*(XT 5. ALTERNATE\-DISPLAY Provisions and the 'g' \*(CI for insight -+\*(XT 5. ALTERNATE\-DISPLAY Provisions and the `g' \*(CI for insight - into \*(CWs and \*(FGs. - - .TP 7 -@@ -1007,7 +1007,7 @@ applied anytime. - - \*(NT When this toggle is \*O and \*(We is operating in monochrome mode, - the\fB entire display\fR will appear as normal text. --Thus, unless the 'x' and/or 'y' toggles are using reverse for emphasis, -+Thus, unless the `x' and/or `y' toggles are using reverse for emphasis, - there will be no visual confirmation that they are even on. - - .TP 7 -@@ -1030,7 +1030,7 @@ With this command you can cycle through the available \*(SA memory scaling - which ranges from KiB (kibibytes or 1,024 bytes) through EiB (exbibytes or - 1,152,921,504,606,846,976 bytes). - --If you see a '+' between a displayed number and the following label, it -+If you see a `+' between a displayed number and the following label, it - means that \*(We was forced to truncate some portion of that number. - By raising the scaling factor, such truncation can be avoided. - -@@ -1045,7 +1045,7 @@ scaling might still be necessary in order to accommodate current values. - If you wish to see a more homogeneous result in the memory columns, - raising the scaling range will usually accomplish that goal. - Raising it too high, however, is likely to produce an all zero result --which cannot be suppressed with the '0' \*(CI. -+which cannot be suppressed with the `0' \*(CI. - - .TP 7 - \ \ \ \fBg\fR\ \ :\fIChoose-Another-Window/Field-Group \fR -@@ -1119,7 +1119,7 @@ restart later in exactly that same state. - \ \ \ \fBX\fR\ \ :\fIExtra-Fixed-Width \fR - Some fields are fixed width and not scalable. - As such, they are subject to truncation which would be indicated --by a '+' in the last position. -+by a `+' in the last position. - - This \*(CI can be used to alter the widths of the following fields: - -@@ -1149,7 +1149,7 @@ To narrow them you must specify a smaller number or restore the defaults. - - .TP 7 - \ \ \ \fBY\fR\ \ :\fIInspect-Other-Output \fR --After issuing the 'Y' \*(CI, you will be prompted for a target PID. -+After issuing the `Y' \*(CI, you will be prompted for a target PID. - Typing a value or accepting the default results in a separate screen. - That screen can be used to view a variety of files or piped command output - while the normal \*(We iterative display is paused. -@@ -1162,14 +1162,14 @@ Most of the keys used to navigate the Inspect feature are reflected in - its header prologue. - There are, however, additional keys available once you have selected a - particular file or command. --They are familiar to anyone who has used the pager 'less' and are -+They are familiar to anyone who has used the pager `less' and are - summarized here for future reference. - - .nf - \fI key function \fR - = alternate status\-line, file or pipeline -- / find, equivalent to 'L' locate -- n find next, equivalent to '&' locate next -+ / find, equivalent to `L' locate -+ n find next, equivalent to `&' locate next - scroll down, equivalent to - b scroll up, equivalent to - g first line, equivalent to -@@ -1194,7 +1194,7 @@ They affect the beginning lines of your display and will determine the - position of messages and prompts. - - These commands always impact just the \*(CG. --\*(XT 5. ALTERNATE\-DISPLAY Provisions and the 'g' \*(CI for insight into -+\*(XT 5. ALTERNATE\-DISPLAY Provisions and the `g' \*(CI for insight into - \*(CWs and \*(FGs. - - .TP 7 -@@ -1211,7 +1211,7 @@ when operating in \*(FM or the \*(CW name when operating in \*(AM. - .TP 7 - \ \ \ \fBt\fR\ \ :\fITask/Cpu-States\fR toggle \fR - This command affects from 2 to many \*(SA lines, depending on the state --of the '1', '2' or '3' \*(CTs and whether or not \*(We is running under -+of the `1', `2' or `3' \*(CTs and whether or not \*(We is running under - true SMP. - - This portion of the \*(SA is also influenced by the 'H' \*(CI toggle, -@@ -1224,18 +1224,18 @@ and virtual memory. - - .TP 7 - \ \ \ \fB1\fR\ \ :\fISingle/Separate-Cpu-States\fR toggle \fR --This command affects how the 't' command's Cpu States portion is shown. -+This command affects how the `t' command's Cpu States portion is shown. - Although this toggle exists primarily to serve massively-parallel SMP - machines, it is not restricted to solely SMP environments. - --When you see '%Cpu(s):' in the \*(SA, the '1' toggle is \*O and all -+When you see `%Cpu(s):' in the \*(SA, the `1' toggle is \*O and all - \*(Pu information is gathered in a single line. --Otherwise, each \*(Pu is displayed separately as: '%Cpu0, %Cpu1, ...' -+Otherwise, each \*(Pu is displayed separately as: `%Cpu0, %Cpu1, ...' - up to available screen height. - - .TP 7 - \ \ \ \fB2\fR\ \ :\fINUMA-Nodes/Cpu-Summary\fR toggle \fR --This command toggles between the '1' command cpu summary display (only) -+This command toggles between the `1' command cpu summary display (only) - or a summary display plus the cpu usage statistics for each NUMA Node. - It is only available if a system has the requisite NUMA support. - -@@ -1243,7 +1243,7 @@ It is only available if a system has the requisite NUMA support. - \ \ \ \fB3\fR\ \ :\fIExpand-NUMA-Node \fR - You will be invited to enter a number representing a NUMA Node. - Thereafter, a node summary plus the statistics for each cpu in that --node will be shown until either the '1' or '2' \*(CT is pressed. -+node will be shown until either the `1' or `2' \*(CT is pressed. - This \*(CI is only available if a system has the requisite NUMA support. - - .PP -@@ -1281,12 +1281,12 @@ If the character data completely fills the available column, this - .PP - .RS +2 - The following commands will also be influenced by the state of the --global 'B' (bold enable) toggle. -+global `B' (bold enable) toggle. - .RS -2 - - .TP 7 - \ \ \ \fBb\fR\ \ :\fIBold/Reverse\fR toggle \fR --This command will impact how the 'x' and 'y' toggles are displayed. -+This command will impact how the `x' and `y' toggles are displayed. - Further, it will only be available when at least one of those toggles is \*O. - - .TP 7 -@@ -1296,7 +1296,7 @@ If you forget which field is being sorted this command can serve as a quick - visual reminder, providing the sort field is being displayed. - The sort field might\fI not\fR be visible because: - 1) there is insufficient\fI Screen Width \fR -- 2) the 'f' \*(CI turned it \*F -+ 2) the `f' \*(CI turned it \*F - - \*(NT Whenever Searching and/or Other Filtering is active in a window, - column highlighting is temporarily disabled. -@@ -1307,7 +1307,7 @@ explanation why. - \ \ \ \fBy\fR\ \ :\fIRow-Highlight\fR toggle \fR - Changes highlighting for "running" tasks. - For additional insight into this task state, --\*(Xt 3a. DESCRIPTIONS of Fields, the 'S' field (Process Status). -+\*(Xt 3a. DESCRIPTIONS of Fields, the `S' field (Process Status). - - Use of this provision provides important insight into your system's health. - The only costs will be a few additional tty escape sequences. -@@ -1317,7 +1317,7 @@ The only costs will be a few additional tty escape sequences. - Switches the \*(CW between your last used color scheme and the older form - of black-on-white or white-on-black. - This command will alter\fB both\fR the \*(SA and \*(TA but does not affect --the state of the 'x', 'y' or 'b' toggles. -+the state of the `x', `y' or `b' toggles. - - .PP - .\" .................................................. -@@ -1353,9 +1353,9 @@ time that it and its dead children have used. - - When \*F, programs that fork into many separate tasks will appear - less demanding. --For programs like 'init' or a shell this is appropriate but for others, -+For programs like `init' or a shell this is appropriate but for others, - like compilers, perhaps not. --Experiment with two \*(TWs sharing the same sort field but with different 'S' -+Experiment with two \*(TWs sharing the same sort field but with different `S' - states and see which representation you prefer. - - After issuing this command, you'll be informed of the new state of this toggle. -@@ -1382,8 +1382,8 @@ command but just press at the prompt. - In this mode, processes are reordered according to their parents and - the layout of the COMMAND column resembles that of a tree. - In forest view mode it is still possible to toggle between program --name and command line (\*(Xc 'c' \*(CI) or between processes and --threads (\*(Xc 'H' \*(CI). -+name and command line (\*(Xc `c' \*(CI) or between processes and -+threads (\*(Xc `H' \*(CI). - - \*(NT Typing any key affecting the sort order will exit forest view - mode in the \*(CW. -@@ -1436,14 +1436,14 @@ not appear on any help screen. - .fi - - Before using any of the following sort provisions, \*(We suggests that you --temporarily turn on column highlighting using the 'x' \*(CI. -+temporarily turn on column highlighting using the `x' \*(CI. - That will help ensure that the actual sort environment matches your intent. - - The following \*(CIs will\fB only\fR be honored when the current sort field - is\fB visible\fR. - The sort field might\fI not\fR be visible because: - 1) there is insufficient\fI Screen Width \fR -- 2) the 'f' \*(CI turned it \*F -+ 2) the `f' \*(CI turned it \*F - - .TP 7 - \ \ \ \fB<\fR\ \ :\fIMove-Sort-Field-Left \fR -@@ -1478,7 +1478,7 @@ Thus, the TTY and WCHAN fields will violate strict ASCII collating sequence. - .\" ...................................................................... - .SS 4d. COLOR Mapping - .\" ---------------------------------------------------------------------- --When you issue the 'Z' \*(CI, you will be presented with a separate screen. -+When you issue the `Z' \*(CI, you will be presented with a separate screen. - That screen can be used to change the colors in just the \*(CW or - in all four windows before returning to the \*(We display. - -@@ -1497,14 +1497,14 @@ The following \*(CIs are available. - q :abandon current changes and exit - .fi - --If you use 'a' or 'w' to cycle the targeted window, you will -+If you use `a' or `w' to cycle the targeted window, you will - have applied the color scheme that was displayed when you left that window. - You can, of course, easily return to any window and reapply different --colors or turn colors \*F completely with the 'z' toggle. -+colors or turn colors \*F completely with the `z' toggle. - - The Color Mapping screen can also be used to change the \*(CG in - either \*(FM or \*(AM. --Whatever was targeted when 'q' or was pressed will be made current -+Whatever was targeted when `q' or was pressed will be made current - as you return to the \*(We display. - .PP - -@@ -1518,7 +1518,7 @@ as you return to the \*(We display. - .B Field Groups/Windows\fR: - In \*(FM there is a single window represented by the entire screen. - That single window can still be changed to display 1 of 4 different\fB field --groups\fR (\*(Xc 'g' \*(CI, repeated below). -+groups\fR (\*(Xc `g' \*(CI, repeated below). - Each of the 4 \*(FGs has a unique separately configurable\fB \*(SA \fR - and its own configurable\fB \*(TA\fR. - -@@ -1540,7 +1540,7 @@ restricted for the \*(CW. - - A further complication arises when you have toggled the first \*(SA - line \*F. --With the loss of the window name (the 'l' toggled line), you'll not easily -+With the loss of the window name (the `l' toggled line), you'll not easily - know what window is the \*(CW. - - .\" ...................................................................... -@@ -1548,13 +1548,13 @@ know what window is the \*(CW. - .\" ---------------------------------------------------------------------- - .TP 7 - \ \ \ \fB-\fR | \fB_\fR\ \ :\fIShow/Hide-Window(s)\fR toggles \fR --The '\-' key turns the \*(CW's \*(TD \*O and \*F. -+The `\-' key turns the \*(CW's \*(TD \*O and \*F. - When \*O, that \*(TA will show a minimum of the columns header you've --established with the 'f' \*(CI. -+established with the `f' \*(CI. - It will also reflect any other \*(TA options/toggles you've applied - yielding zero or more tasks. - --The '_' key does the same for all \*(TDs. -+The `_' key does the same for all \*(TDs. - In other words, it switches between the currently visible \*(TD(s) and any - \*(TD(s) you had toggled \*F. - If all 4 \*(TDs are currently visible, this \*(CI will leave the \*(SA -@@ -1562,18 +1562,18 @@ as the only display element. - - .TP 7 - *\ \ \fB=\fR | \fB+\fR\ \ :\fIEqualize-(reinitialize)-Window(s) \fR --The '=' key forces the \*(CW's \*(TD to be visible. --It also reverses any 'i' (idle tasks), 'n' (max tasks), 'u/U' (user filter) --and 'o/O' (other filter) commands that might be active. -+The `=' key forces the \*(CW's \*(TD to be visible. -+It also reverses any `i' (idle tasks), `n' (max tasks), `u/U' (user filter) -+and `o/O' (other filter) commands that might be active. - Also, if the window had been scrolled, it will be reset with this command. - \*(XT 5c. SCROLLING a Window for additional information regarding vertical - and horizontal scrolling. - --The '+' key does the same for all windows. -+The `+' key does the same for all windows. - The four \*(TDs will reappear, evenly balanced. - They will also have retained any customizations you had previously --applied, except for the 'i' (idle tasks), 'n' (max tasks), 'u/U' --(user filter), 'o/O' (other filter) and scrolling \*(CIs. -+applied, except for the `i' (idle tasks), `n' (max tasks), `u/U' -+(user filter), `o/O' (other filter) and scrolling \*(CIs. - - .TP 7 - *\ \ \fBA\fR\ \ :\fIAlternate-Display-Mode\fR toggle \fR -@@ -1590,7 +1590,7 @@ commands are directed. - These keys act in a circular fashion so you can reach any desired window - using either key. - --Assuming the window name is visible (you have not toggled 'l' \*F), -+Assuming the window name is visible (you have not toggled `l' \*F), - whenever the \*(CW name loses its emphasis/color, that's a reminder - the \*(TD is \*F and many commands will be restricted. - -@@ -1600,14 +1600,14 @@ You will be prompted to enter a number between 1 and 4 designating the - \*(FG which should be made the \*(CW. - - In \*(FM, this command is necessary to alter the \*(CW. --In \*(AM, it is simply a less convenient alternative to the 'a' and 'w' -+In \*(AM, it is simply a less convenient alternative to the `a' and `w' - commands. - - .TP 7 - \ \ \ \fBG\fR\ \ :\fIChange-Window/Field-Group-Name \fR - You will be prompted for a new name to be applied to the \*(CW. - It does not require that the window name be visible --(the 'l' toggle to be \*O). -+(the `l' toggle to be \*O). - - .IP "*" 3 - The \*(CIs shown with an \*(AK have use beyond \*(AM. -@@ -1652,7 +1652,7 @@ Additionally, there are special provisions for any variable width field - when positioned as the last displayed field. - Once that field is reached via the right arrow key, and is thus the only - column shown, you can continue scrolling horizontally within such a field. --\*(XC 'C' \*(CI below for additional information. -+\*(XC `C' \*(CI below for additional information. - - .TP 4 - \fBHome\fR\ \ :\fIJump-to-Home-Position \fR -@@ -1682,7 +1682,7 @@ variable width column has also been scrolled. - - The coordinates shown as \fBn\fR/\fBn\fR are relative to the upper left - corner of the \*(CW. --The additional '\fB+\ nn\fR' represents the displacement into a variable -+The additional `\fB+\ nn\fR' represents the displacement into a variable - width column when it has been scrolled horizontally. - Such displacement occurs in normal 8 character tab stop amounts via - the right and left arrow keys. -@@ -1699,7 +1699,7 @@ The second \fBn\fR is updated automatically to reflect total tasks. - The first \fBn\fR represents the leftmost displayed column and is - controlled by \*(KSs. - The second \fBn\fR is the total number of displayable fields and is --established with the '\fBf\fR' \*(CI. -+established with the `\fBf\fR' \*(CI. - .RS -4 - - .PP -@@ -1725,7 +1725,7 @@ Searches are not limited to values from a single field or column. - All of the values displayed in a task row are allowed in a search string. - You may include spaces, numbers, symbols and even forest view artwork. - --Keying with no input will effectively disable the '&' key until -+Keying with no input will effectively disable the `&' key until - a new search string is entered. - - .TP 4 -@@ -1737,7 +1737,7 @@ the next occurrence. - When a match is found, the current window is repositioned vertically so the - task row containing that string is first. - The scroll coordinates message can provide confirmation of such vertical --repositioning (\*(Xc 'C' \*(CI). -+repositioning (\*(Xc `C' \*(CI). - Horizontal scrolling, however, is never altered via searching. - - The availability of a matching string will be influenced by the following -@@ -1751,7 +1751,7 @@ b. Scrolling a window vertically and/or horizontally, - \*(Xt 5c. SCROLLING a Window. - .TP 3 - c. The state of the command/command-line toggle, --\*(Xc 'c' \*(CI. -+\*(Xc `c' \*(CI. - .TP 3 - d. The stability of the chosen sort column, - for example PID is good but %CPU bad. -@@ -1760,7 +1760,7 @@ for example PID is good but %CPU bad. - .PP - If a search fails, restoring the \*(CW home (unscrolled) position, scrolling - horizontally, displaying command-lines or choosing a more stable sort field --could yet produce a successful '&' search. -+could yet produce a successful `&' search. - - The above \*(CIs are\fB always\fR available in \*(FM but\fB never\fR - available in \*(AM if the \*(CW's \*(TD has been toggled \*F. -@@ -1769,7 +1769,7 @@ available in \*(AM if the \*(CW's \*(TD has been toggled \*F. - column highlighting \*F to prevent false matches on internal non-display - escape sequences. - Such highlighting will be restored when a window's search string is empty. --\*(XC 'x' \*(CI for additional information on sort column highlighting. -+\*(XC `x' \*(CI for additional information on sort column highlighting. - - .\" ...................................................................... - .SS 5e. FILTERING in a Window -@@ -1792,7 +1792,7 @@ Remember the Up/Down \*(KAs or their aliases when prompted for input. - .TP 3 - 3. a selection is either case insensitive or sensitive to case - .TP 3 --4. the default is inclusion, prepending '!' denotes exclusions -+4. the default is inclusion, prepending `!' denotes exclusions - .TP 3 - 5. multiple selection criteria can be applied to a \*(TW - .TP 3 -@@ -1821,7 +1821,7 @@ matching. - You will be prompted to establish a \fBcase sensitive\fR filter. - - .TP 6 --\ \fB^O\fR\ \ :\fIShow-Active-Filters\fR (Ctrl key + 'o') -+\ \fB^O\fR\ \ :\fIShow-Active-Filters\fR (Ctrl key + `o') - This can serve as a reminder of which filters are active in the \*(CW. - A summary will be shown on the message line until you press the key. - -@@ -1833,7 +1833,7 @@ It also has additional impact so please \*(Xt 4a. GLOBAL Commands. - .TP 6 - \ \ \fB+\fR\ \ :\fIReset-Filtering\fR in all windows - This clears the selection criteria in all windows, assuming you are in \*(AM. --As with the '=' \*(CI, it too has additional consequences so you might wish to -+As with the `=' \*(CI, it too has additional consequences so you might wish to - \*(Xt 5b. COMMANDS for Windows. - .PP - .RE -@@ -1854,11 +1854,11 @@ These examples use spaces for clarity but your input generally would not. - - Items #1, #3 and #4 should be self\-explanatory. - Item \fB#2\fR represents both a required \fIdelimiter\fR and the \fIoperator\fR --which must be one of either equality ('=') or relation ('<' or '>'). -+which must be one of either equality ('=') or relation ('<' or `>'). - --The '=' equality operator requires only a partial match and that --can reduce your 'if\-value' input requirements. --The '>' or '<' relational operators always employ string comparisons, -+The `=' equality operator requires only a partial match and that -+can reduce your `if\-value' input requirements. -+The `>' or `<' relational operators always employ string comparisons, - even with numeric fields. - They are designed to work with a field's default \fIjustification\fR and - with homogeneous data. -@@ -1869,12 +1869,12 @@ If you establish a relational filter and you \fBhave\fR changed the - default Numeric or Character \fIjustification\fR, that filter is likely to fail. - When a relational filter is applied to a memory field and you \fBhave not\fR - changed the \fIscaling\fR, it may produce misleading results. --This happens, for example, because '100.0m' (MiB) would appear greater --than '1.000g' (GiB) when compared as strings. -+This happens, for example, because `100.0m' (MiB) would appear greater -+than `1.000g' (GiB) when compared as strings. - - If your filtered results appear suspect, simply altering justification or - scaling may yet achieve the desired objective. --See the 'j', 'J' and 'e' \*(CIs for additional information. -+See the `j', `J' and `e' \*(CIs for additional information. - .PP - .RE - -@@ -1885,7 +1885,7 @@ These \fBGROUP\fR filters could produce the exact same results or the - second one might not display anything at all, just a blank \*(TW. - .nf - GROUP=root ( only the same results when ) -- GROUP=ROOT ( invoked via lower case 'o' ) -+ GROUP=ROOT ( invoked via lower case `o' ) - .fi - - Either of these \fBRES\fR filters might yield inconsistent and/or -@@ -1893,7 +1893,7 @@ misleading results, depending on the current memory scaling factor. - Or both filters could produce the exact same results. - .nf - RES>9999 ( only the same results when ) -- !RES<10000 ( memory scaling is at 'KiB' ) -+ !RES<10000 ( memory scaling is at `KiB' ) - .fi - - This \fBnMin\fR filter illustrates a problem unique to scalable fields. -@@ -1920,14 +1920,14 @@ only multi-threaded processes being shown. - It also reminds us that a trailing space is part of every displayed field. - The second filter achieves the exact same results with less typing. - .nf -- !nTH=' 1 ' ( ' for clarity only ) -+ !nTH=` 1 ' ( ' for clarity only ) - nTH>1 ( same with less i/p ) - .fi - - With Forest View mode active and the \fBCOMMAND\fR column in view, this - filter effectively collapses child processes so that just 3 levels are shown. - .nf -- !COMMAND=' `- ' ( ' for clarity only ) -+ !COMMAND=` `- ' ( ' for clarity only ) - .fi - - The final two filters appear as in response to the status request key (^O). -@@ -1935,10 +1935,10 @@ In reality, each filter would have required separate input. - The \fBPR\fR example shows the two concurrent filters necessary to display - tasks with priorities of 20 or more, since some might be negative. - Then by exploiting trailing spaces, the \fBnMin\fR series of filters could --achieve the failed '9999' objective discussed above. -+achieve the failed `9999' objective discussed above. - .nf -- 'PR>20' + '!PR=-' ( 2 for right result ) -- '!nMin=0 ' + '!nMin=1 ' + '!nMin=2 ' + '!nMin=3 ' ... -+ `PR>20' + `!PR=-' ( 2 for right result ) -+ `!nMin=0 ' + `!nMin=1 ' + `!nMin=2 ' + `!nMin=3 ' ... - .fi - .RS -3 - -@@ -1947,7 +1947,7 @@ column highlighting \*F to prevent false matches on internal non-display - escape sequences. - Such highlighting will be restored when a window is no longer subject - to filtering. --\*(XC 'x' \*(CI for additional information on sort column highlighting. -+\*(XC `x' \*(CI for additional information on sort column highlighting. - .RE - - .\" ---------------------------------------------------------------------- -@@ -1970,7 +1970,7 @@ They will not be able to issue the following commands. - The system \*(CF is\fB not\fR created by \*(We. - Rather, you create this file manually and place it in the \fI/etc \fR - directory. --Its name must be 'toprc' and must have no leading '.' (period). -+Its name must be `toprc' and must have no leading `.' (period). - It must have only two lines. - - Here is an example of the contents of\fI /etc/toprc\fR: -@@ -1982,8 +1982,8 @@ Here is an example of the contents of\fI /etc/toprc\fR: - .\" ...................................................................... - .SS 6b. PERSONAL Configuration File - .\" ---------------------------------------------------------------------- --This file is written as '$HOME/.your\-name\-4\-\*(We' + 'rc'. --Use the 'W' \*(CI to create it or update it. -+This file is written as `$HOME/.your\-name\-4\-\*(We' + `rc'. -+Use the `W' \*(CI to create it or update it. - - Here is the general layout: - .nf -@@ -2004,13 +2004,13 @@ personal \*(CF to the current directory, subject to permissions. - .\" ...................................................................... - .SS 6c. ADDING INSPECT Entries - .\" ---------------------------------------------------------------------- --To exploit the 'Y' \*(CI, you must add entries at the\fB end\fR of the -+To exploit the `Y' \*(CI, you must add entries at the\fB end\fR of the - \*(We personal \*(CF. - Such entries simply reflect a file to be read or command/pipeline to be - executed whose results will then be displayed in a separate scrollable, - searchable window. - --If you don't know the location or name of your \*(We rcfile, use the 'W' -+If you don't know the location or name of your \*(We rcfile, use the `W' - \*(CI to rewrite it and note those details. - - Inspect entries can be added with a redirected echo or by editing the \*(CF. -@@ -2019,33 +2019,33 @@ rather than append (>>) to that file. - Conversely, when using an editor care must be taken not to corrupt existing - lines, some of which will contain unprintable data or unusual characters. - --Those Inspect entries beginning with a '#' character are ignored, regardless -+Those Inspect entries beginning with a `#' character are ignored, regardless - of content. - Otherwise they consist of the following 3 elements, each of which\fI must\fR --be separated by a tab character (thus 2 '\\t' total): -+be separated by a tab character (thus 2 `\\t' total): - - .nf -- .type: literal 'file' or 'pipe' -+ .type: literal `file' or `pipe' - .name: selection shown on the Inspect screen - .fmts: string representing a path or command - .fi - - The two types of Inspect entries are\fI not\fR interchangeable. --Those designated '\fBfile\fR' will be accessed using fopen and --must reference a single file in the '.fmts' element. --Entries specifying '\fBpipe\fR' will employ popen, their '.fmts' element -+Those designated `\fBfile\fR' will be accessed using fopen and -+must reference a single file in the `.fmts' element. -+Entries specifying `\fBpipe\fR' will employ popen, their `.fmts' element - could contain many pipelined commands and, none can be interactive. - --If the file or pipeline represented in your '.fmts' deals with the specific PID -+If the file or pipeline represented in your `.fmts' deals with the specific PID - input or accepted when prompted, then the format string must also contain --the '\fB%d\fR' specifier, as these examples illustrate. -+the `\fB%d\fR' specifier, as these examples illustrate. - - .nf - .fmts= /proc/\fI%d\fR/numa_maps - .fmts= lsof -P -p\fI %d\fR - .fi - --For '\fBpipe\fR' type entries only, you may also wish to redirect stderr to -+For `\fBpipe\fR' type entries only, you may also wish to redirect stderr to - stdout for a more comprehensive result. - Thus the format string becomes: - -@@ -2055,7 +2055,7 @@ Thus the format string becomes: - - Here are examples of both types of Inspect entries as they might appear - in the rcfile. --The first entry will be ignored due to the initial '#' character. -+The first entry will be ignored due to the initial `#' character. - For clarity, the pseudo tab depictions (^I) are surrounded by an - extra space but the actual tabs would not be. - .nf -@@ -2067,9 +2067,9 @@ extra space but the actual tabs would not be. - .fi - - Except for the commented entry above, these next examples show what could --be echoed to achieve similar results, assuming the rcfile name was '.toprc'. -+be echoed to achieve similar results, assuming the rcfile name was `.toprc'. - However, due to the embedded tab characters, each of these lines should be --preceded by '\fB/bin/echo \-e\fR', not just a simple an 'echo', to -+preceded by `\fB/bin/echo \-e\fR', not just a simple an `echo', to - enable backslash interpretation regardless of which shell you use. - - .nf -@@ -2082,25 +2082,25 @@ enable backslash interpretation regardless of which shell you use. - If any inspect entry you create produces output with unprintable characters - they will be displayed in either the ^C notation or hexadecimal form, - depending on their value. --This applies to tab characters as well, which will show as '^I'. -+This applies to tab characters as well, which will show as `^I'. - If you want a truer representation, any embedded tabs should be expanded. - - .nf -- # next would have contained '\\t' ... -+ # next would have contained `\\t' ... - # file ^I ^I /proc/%d/status -- # but this will eliminate embedded '\\t' ... -+ # but this will eliminate embedded `\\t' ... - pipe ^I ^I cat /proc/%d/status | expand \- - .fi - --The above example takes what could have been a 'file' entry but employs --a 'pipe' instead so as to expand the embedded tabs. -+The above example takes what could have been a `file' entry but employs -+a `pipe' instead so as to expand the embedded tabs. - --\*(NT While '\fBpipe\fR' type entries have been discussed in terms of pipelines -+\*(NT While `\fBpipe\fR' type entries have been discussed in terms of pipelines - and commands, there is nothing to prevent you from including \fI shell scripts\fR - as well. --Perhaps even newly created scripts designed specifically for the 'Y' \*(CI. -+Perhaps even newly created scripts designed specifically for the `Y' \*(CI. - --Lastly, as the number of your Inspect entries grows over time, the 'Options:' -+Lastly, as the number of your Inspect entries grows over time, the `Options:' - row will be truncated when screen width is exceeded. - That does not affect operation other than to make some selections invisible. - -@@ -2113,8 +2113,8 @@ there is an easy solution hinted at below. - Options: help 1 2 3 4 5 6 7 8 9 10 11 ... - .fi - --The entries in the \*(We rcfile would have a number for the '.name' element and --the 'help' entry would identify a shell script you've written explaining what -+The entries in the \*(We rcfile would have a number for the `.name' element and -+the `help' entry would identify a shell script you've written explaining what - those numbered selections actually mean. - In that way, many more choices can be made visible. - -@@ -2158,7 +2158,7 @@ What you'll see is a very busy Linux doing what he's always done for you, - but there was no program available to illustrate this. - - .IP \(bu 3 --Under an xterm using 'white-on-black' colors, on \*(We's Color Mapping screen -+Under an xterm using `white-on-black' colors, on \*(We's Color Mapping screen - set the task color to black and be sure that task highlighting is set to bold, - not reverse. - Then set the delay interval to around .3 seconds. -@@ -2168,8 +2168,8 @@ the ghostly images of just the currently running tasks. - - .IP \(bu 3 - Delete the existing rcfile, or create a new symlink. --Start this new version then type 'T' (a secret key, --\*(Xt 4c. Task Area Commands, SORTING) followed by 'W' and 'q'. -+Start this new version then type `T' (a secret key, -+\*(Xt 4c. Task Area Commands, SORTING) followed by `W' and `q'. - Finally, restart the program with \-d0 (zero delay). - - Your display will be refreshed at three times the rate of the former \*(We, -@@ -2184,19 +2184,19 @@ For these stupid tricks, \*(We needs \*(AM. - - .IP \(bu 3 - With 3 or 4 \*(TDs visible, pick any window other than the last --and turn idle processes \*F using the 'i' \*(CT. --Depending on where you applied 'i', sometimes several \*(TDs are bouncing and -+and turn idle processes \*F using the `i' \*(CT. -+Depending on where you applied `i', sometimes several \*(TDs are bouncing and - sometimes it's like an accordion, as \*(We tries his best to allocate space. - - .IP \(bu 3 - Set each window's summary lines differently: one with no memory ('m'); another - with no states ('t'); maybe one with nothing at all, just the message line. --Then hold down 'a' or 'w' and watch a variation on bouncing windows \*(Em -+Then hold down `a' or `w' and watch a variation on bouncing windows \*(Em - hopping windows. - - .IP \(bu 3 - Display all 4 windows and for each, in turn, set idle processes to \*F using --the 'i' \*(CT. -+the `i' \*(CT. - You've just entered the "extreme bounce" zone. - - .\" ...................................................................... -@@ -2206,11 +2206,11 @@ This stupid trick also requires \*(AM. - - .IP \(bu 3 - Display all 4 windows and make sure that 1:Def is the \*(CW. --Then, keep increasing window size with the 'n' \*(CI until all the other -+Then, keep increasing window size with the `n' \*(CI until all the other - \*(TDs are "pushed out of the nest". - - When they've all been displaced, toggle between all visible/invisible windows --using the '_' \*(CT. -+using the `_' \*(CT. - Then ponder this: - .br - is \*(We fibbing or telling honestly your imposed truth? -@@ -2223,14 +2223,14 @@ on a per window basis. - - .IP \(bu 3 - Start \*(We and make COMMAND the last (rightmost) column displayed. --If necessary, use the 'c' \*(CT to display command lines and ensure --that forest view mode is active with the 'V' \*(CT. -+If necessary, use the `c' \*(CT to display command lines and ensure -+that forest view mode is active with the `V' \*(CT. - - Then use the up/down arrow keys to position the display so that some - truncated command lines are shown ('+' in last position). - You may have to resize your xterm to produce truncation. - --Lastly, use the 'j' \*(CT to make the COMMAND column right justified. -+Lastly, use the `j' \*(CT to make the COMMAND column right justified. - - Now use the right arrow key to reach the COMMAND column. - Continuing with the right arrow key, watch closely the direction --- -1.7.9.2 - diff --git a/0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch b/0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch deleted file mode 100644 index 1014b12..0000000 --- a/0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ada443268e7f8c4526e6b048c98457679665b727 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 23 Apr 2014 00:00:04 -0500 -Subject: [PATCH] misc: fix man doc spelling and grammar for translation - -Signed-off-by: Jim Warner ---- - ps/ps.1 | 2 +- - sysctl.8 | 8 ++++---- - 2 files changed, 5 insertions(+), 5 deletions(-) - -diff --git ps/ps.1 ps/ps.1 -index cdb7536..90f12ac 100644 ---- ps/ps.1 -+++ ps/ps.1 -@@ -1683,7 +1683,7 @@ number of kernel threads owned by the process. - T} - - tid TID T{ --the unique number representing a dispatacable entity (alias -+the unique number representing a dispatchable entity (alias - .BR lwp , \ spid ). - This value may also appear as: a process ID (pid); a process group ID (pgrp); - a session ID for the session leader (sid); a thread group ID for the thread -diff --git sysctl.8 sysctl.8 -index faf2255..a74b2d7 100644 ---- sysctl.8 -+++ sysctl.8 -@@ -63,8 +63,8 @@ Load in sysctl settings from the file specified or /etc/sysctl.conf if none - given. Specifying \- as filename means reading data from standard input. - Using this option will mean arguments to - .B sysctl --are files, which are read in order they are specified. The file argument can --may be specified as reqular expression. -+are files, which are read in the order they are specified. -+The file argument may be specified as reqular expression. - .TP - \fB\-a\fR, \fB\-\-all\fR - Display all values currently available. -@@ -112,10 +112,10 @@ Alias of \fB\-p\fR - Alias of \fB\-a\fR - .TP - \fB\-o\fR --Does nothing in favour of BSD compatibility. -+Does nothing, exists for BSD compatibility. - .TP - \fB\-x\fR --Does nothing in favour of BSD compatibility. -+Does nothing, exists for BSD compatibility. - .TP - \fB\-h\fR, \fB\-\-help\fR - Display help text and exit. --- -1.7.9.2 - diff --git a/0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch b/0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch deleted file mode 100644 index b9c6e70..0000000 --- a/0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch +++ /dev/null @@ -1,62 +0,0 @@ -Based on 2f96eef7f86a12b81badef1c91ec2d503ae4029d Mon Sep 17 00:00:00 2001 -From: Jaromir Capik -Date: Wed, 30 Apr 2014 13:59:34 +0200 -Subject: [PATCH] library: reverting tmpfs subtraction from cached - (18-FEB-2014) - -The subtraction was marked as reinforcing the misconception, -that memory in the page cache can be considered free. -The Cached value is not a sum of page cache and tmpfs, -as the tmpfs memory lives in the page cache and therefore -it's an inseparable part of it. ---- - free.1 | 4 +--- - proc/sysinfo.c | 2 -- - vmstat.8 | 3 +-- - 3 files changed, 2 insertions(+), 7 deletions(-) - -diff --git free.1 free.1 -index 21cce28..85efef8 100644 ---- free.1 -+++ free.1 -@@ -32,9 +32,7 @@ kernels 2.6.32, displayed as zero if not available) - Memory used by kernel buffers (Buffers in /proc/meminfo) - .TP - \fBcached\fR --Memory used by the page cache (calculated as Cached - Shmem in --/proc/meminfo - the Cached value is actually the sum of page cache and --tmpfs memory) -+Memory used by the page cache (Cached in /proc/meminfo) - .SH OPTIONS - .TP - \fB\-b\fR, \fB\-\-bytes\fR -diff --git proc/sysinfo.c proc/sysinfo.c -index e07ca86..85fb0a4 100644 ---- proc/sysinfo.c -+++ proc/sysinfo.c -@@ -695,8 +695,6 @@ nextline: - } - if ((ev=getenv("PS_FULL_CACHE"))) - kb_main_cached += kb_swap_reclaimable + kb_swap_cached + kb_nfs_unstable; -- /* "Cached" includes "Shmem" - we want only the page cache here */ -- kb_main_cached -= kb_main_shared; - } - - /*****************************************************************/ -diff --git vmstat.8 vmstat.8 -index 2782a42..420d9f3 100644 ---- vmstat.8 -+++ vmstat.8 -@@ -102,8 +102,7 @@ b: The number of processes in uninterruptible sleep. - swpd: the amount of virtual memory used. - free: the amount of idle memory. - buff: the amount of memory used as buffers. --cache: the amount of memory used as cache (excluding tmpfs memory for --kernels 2.6.32+) -+cache: the amount of memory used as cache. - inact: the amount of inactive memory. (\-a option) - active: the amount of active memory. (\-a option) - .fi --- -1.7.9.2 - diff --git a/0060-top-miscellaneous-accumulated-changes-to-man-documen.patch b/0060-top-miscellaneous-accumulated-changes-to-man-documen.patch deleted file mode 100644 index a2dc89a..0000000 --- a/0060-top-miscellaneous-accumulated-changes-to-man-documen.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 444fa7102b7f130734e35b45ce86fcc15d307a71 Mon Sep 17 00:00:00 2001 -From: Jim Warner -Date: Wed, 7 May 2014 00:00:00 -0500 -Subject: [PATCH] top: miscellaneous accumulated changes to man document - -Signed-off-by: Jim Warner ---- - top/top.1 | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git top/top.1 top/top.1 -index 67b8b35..5ce405e 100644 ---- top/top.1 -+++ top/top.1 -@@ -1062,7 +1062,7 @@ Otherwise, \*(We displays a summation of all threads in each process. - - .TP 7 - \ \ \ \fBI\fR\ \ :\fIIrix/Solaris-Mode\fR toggle \fR --When operating in Solaris mode ('I' toggled \*F), a task's \*(Pu usage -+When operating in Solaris mode (`I' toggled \*F), a task's \*(Pu usage - will be divided by the total number of \*(PUs. - After issuing this command, you'll be told the new state of this toggle. - -@@ -1216,7 +1216,7 @@ This command affects from 2 to many \*(SA lines, depending on the state - of the `1', `2' or `3' \*(CTs and whether or not \*(We is running under - true SMP. - --This portion of the \*(SA is also influenced by the 'H' \*(CI toggle, -+This portion of the \*(SA is also influenced by the `H' \*(CI toggle, - as reflected in the total label which shows either Tasks or Threads. - - .TP 7 -@@ -1856,7 +1856,7 @@ These examples use spaces for clarity but your input generally would not. - - Items #1, #3 and #4 should be self\-explanatory. - Item \fB#2\fR represents both a required \fIdelimiter\fR and the \fIoperator\fR --which must be one of either equality ('=') or relation ('<' or `>'). -+which must be one of either equality (`=') or relation (`<' or `>'). - - The `=' equality operator requires only a partial match and that - can reduce your `if\-value' input requirements. -@@ -2229,7 +2229,7 @@ If necessary, use the `c' \*(CT to display command lines and ensure - that forest view mode is active with the `V' \*(CT. - - Then use the up/down arrow keys to position the display so that some --truncated command lines are shown ('+' in last position). -+truncated command lines are shown (`+' in last position). - You may have to resize your xterm to produce truncation. - - Lastly, use the `j' \*(CT to make the COMMAND column right justified. --- -1.7.9.2 - diff --git a/bsc901202-add-better-help-output.patch b/bsc901202-add-better-help-output.patch deleted file mode 100644 index a5d7d51..0000000 --- a/bsc901202-add-better-help-output.patch +++ /dev/null @@ -1,157 +0,0 @@ - pgrep.c | 39 +++++++++++++++++++-------------------- - 1 file changed, 19 insertions(+), 20 deletions(-) - -diff --git pgrep.c pgrep.c -index d8d3dcb..3ba3634 100644 ---- pgrep.c -+++ pgrep.c -@@ -106,6 +106,7 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - if (i_am_pkill == 0) { - fputs(_(" -d, --delimiter specify output delimiter\n"),fp); - fputs(_(" -l, --list-name list PID and process name\n"),fp); -+ fputs(_(" -a, --list-full list PID and full command line\n"),fp); - fputs(_(" -v, --inverse negates the matching\n"),fp); - fputs(_(" -w, --lightweight list all TID\n"), fp); - } -@@ -137,7 +138,7 @@ static int __attribute__ ((__noreturn__)) usage(int opt) - fputs(USAGE_VERSION, fp); - fprintf(fp, USAGE_MAN_TAIL("pgrep(1)")); - -- exit(fp == stderr ? EXIT_FAILURE : EXIT_SUCCESS); -+ exit(fp == stderr ? EXIT_USAGE : EXIT_SUCCESS); - } - - static struct el *split_list (const char *restrict str, int (*convert)(const char *, struct el *)) -@@ -628,7 +629,7 @@ static struct el * select_procs (int *num) - if (list == NULL) - exit (EXIT_FATAL); - } -- if (opt_long) { -+ if (opt_long || opt_longlong) { - list[matches].str = xstrdup (cmdoutput); - list[matches++].num = subtask.XXXID; - } else { -@@ -747,7 +748,7 @@ static void parse_opts (int argc, char **argv) - case 'G': /* Solaris: match rgid/rgroup */ - opt_rgid = split_list (optarg, conv_gid); - if (opt_rgid == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - /* case 'I': / * FreeBSD: require confirmation before killing * / -@@ -764,7 +765,7 @@ static void parse_opts (int argc, char **argv) - case 'P': /* Solaris: match by PPID */ - opt_ppid = split_list (optarg, conv_num); - if (opt_ppid == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - /* case 'S': / * FreeBSD: don't ignore the built-in kernel tasks * / -@@ -774,7 +775,7 @@ static void parse_opts (int argc, char **argv) - case 'U': /* Solaris: match by ruid/rgroup */ - opt_ruid = split_list (optarg, conv_uid); - if (opt_ruid == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - case 'V': -@@ -794,7 +795,7 @@ static void parse_opts (int argc, char **argv) - case 'g': /* Solaris: match pgrp */ - opt_pgrp = split_list (optarg, conv_pgrp); - if (opt_pgrp == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - /* case 'i': / * FreeBSD: ignore case. OpenBSD: withdrawn. See -I. This sucks. * / -@@ -812,37 +813,37 @@ static void parse_opts (int argc, char **argv) - break; - case 'n': /* Solaris: match only the newest */ - if (opt_oldest|opt_negate|opt_newest) -- usage (opt); -+ usage ('?'); - opt_newest = 1; - ++criteria_count; - break; - case 'o': /* Solaris: match only the oldest */ - if (opt_oldest|opt_negate|opt_newest) -- usage (opt); -+ usage ('?'); - opt_oldest = 1; - ++criteria_count; - break; - case 's': /* Solaris: match by session ID -- zero means self */ - opt_sid = split_list (optarg, conv_sid); - if (opt_sid == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - case 't': /* Solaris: match by tty */ - opt_term = split_list (optarg, conv_str); - if (opt_term == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - case 'u': /* Solaris: match by euid/egroup */ - opt_euid = split_list (optarg, conv_uid); - if (opt_euid == NULL) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - case 'v': /* Solaris: as in grep, invert the matching (uh... applied after selection I think) */ - if (opt_oldest|opt_negate|opt_newest) -- usage (opt); -+ usage ('?'); - opt_negate = 1; - break; - case 'w': // Linux: show threads (lightweight process) too -@@ -857,25 +858,23 @@ static void parse_opts (int argc, char **argv) - case NS_OPTION: - opt_ns_pid = atoi(optarg); - if (opt_ns_pid == 0) -- usage (opt); -+ usage ('?'); - ++criteria_count; - break; - case NSLIST_OPTION: - opt_nslist = split_list (optarg, conv_ns); - if (opt_nslist == NULL) -- usage (opt); -+ usage ('?'); - break; - case 'h': -- usage (opt); -- break; - case '?': -- usage (optopt ? optopt : opt); -+ usage (opt); - break; - } - } - - if(opt_lock && !opt_pidfile) -- xerrx(EXIT_FAILURE, _("-L without -F makes no sense\n" -+ xerrx(EXIT_USAGE, _("-L without -F makes no sense\n" - "Try `%s --help' for more information."), - program_invocation_short_name); - -@@ -890,11 +889,11 @@ static void parse_opts (int argc, char **argv) - if (argc - optind == 1) - opt_pattern = argv[optind]; - else if (argc - optind > 1) -- xerrx(EXIT_FAILURE, _("only one pattern can be provided\n" -+ xerrx(EXIT_USAGE, _("only one pattern can be provided\n" - "Try `%s --help' for more information."), - program_invocation_short_name); - else if (criteria_count == 0) -- xerrx(EXIT_FAILURE, _("no matching criteria specified\n" -+ xerrx(EXIT_USAGE, _("no matching criteria specified\n" - "Try `%s --help' for more information."), - program_invocation_short_name); - } diff --git a/procps-ng-3.3.8-bnc634071_procstat2.diff b/procps-ng-3.3.10-bnc634071_procstat2.diff similarity index 52% rename from procps-ng-3.3.8-bnc634071_procstat2.diff rename to procps-ng-3.3.10-bnc634071_procstat2.diff index 598ee0e..aa4aabf 100644 --- a/procps-ng-3.3.8-bnc634071_procstat2.diff +++ b/procps-ng-3.3.10-bnc634071_procstat2.diff @@ -1,6 +1,6 @@ --- proc/libprocps.sym -+++ proc/libprocps.sym 2014-05-16 10:01:38.446310070 +0000 -@@ -57,6 +57,7 @@ global: ++++ proc/libprocps.sym 2014-05-16 10:01:38.000000000 +0000 +@@ -59,6 +59,7 @@ global: signal_name_to_number; signal_number_to_name; smp_num_cpus; @@ -9,18 +9,18 @@ strtosig; tty_to_dev; --- proc/sysinfo.c -+++ proc/sysinfo.c 2013-05-29 11:26:47.797640941 +0000 ++++ proc/sysinfo.c 2015-01-27 15:17:46.241518734 +0000 @@ -37,7 +37,8 @@ #include /* htons */ #endif -long smp_num_cpus; /* number of CPUs */ +#undef smp_num_cpus -+long smp_num_cpus = -1; /* number of CPUs */ - ++long smp_num_cpus=-1; /* number of CPUs */ + long page_bytes; /* this architecture's page size */ + #define BAD_OPEN_MESSAGE \ - "Error: /proc must be mounted\n" \ -@@ -1012,7 +1012,11 @@ out: +@@ -1069,7 +1070,11 @@ out: /////////////////////////////////////////////////////////////////////////// @@ -33,30 +33,23 @@ // ought to count CPUs in /proc/stat instead of relying // on glibc, which foolishly tries to parse /proc/cpuinfo // note: that may have been the case but now /proc/stat -@@ -1024,7 +1029,11 @@ void cpuinfo (void) { - // _SC_NPROCESSORS_CONF returns 2, resulting in HZ=512 - // _SC_NPROCESSORS_ONLN returns 1, which should work OK - -- smp_num_cpus = sysconf(_SC_NPROCESSORS_ONLN); -- if (smp_num_cpus<1) /* SPARC glibc is buggy */ -- smp_num_cpus=1; -+ smp_num_cpus = sysconf(_SC_NPROCESSORS_ONLN); -+ if (smp_num_cpus<1) /* SPARC glibc is buggy */ -+ smp_num_cpus=1; +@@ -1084,4 +1089,8 @@ void cpuinfo (void) { + smp_num_cpus = sysconf(_SC_NPROCESSORS_ONLN); + if (smp_num_cpus<1) /* SPARC glibc is buggy */ + smp_num_cpus=1; + + return smp_num_cpus; } + +void cpuinfo (void) { (void)__smp_num_cpus(); } --- proc/sysinfo.h -+++ proc/sysinfo.h 2012-06-04 10:04:15.812509959 +0000 -@@ -7,7 +7,8 @@ - EXTERN_C_BEGIN ++++ proc/sysinfo.h 2015-01-27 15:18:35.169518781 +0000 +@@ -8,6 +8,8 @@ EXTERN_C_BEGIN extern unsigned long long Hertz; /* clock tick frequency */ --extern long smp_num_cpus; /* number of CPUs */ -+extern long __smp_num_cpus(void); /* number of CPUs */ + extern long smp_num_cpus; /* number of CPUs */ ++extern long __smp_num_cpus(void); +#define smp_num_cpus __smp_num_cpus() extern int have_privs; /* boolean, true if setuid or similar */ + extern long page_bytes; /* this architecture's bytes per page */ - #if 0 diff --git a/procps-ng-3.3.9-errno.patch b/procps-ng-3.3.10-errno.patch similarity index 82% rename from procps-ng-3.3.9-errno.patch rename to procps-ng-3.3.10-errno.patch index 16bd034..b85af0f 100644 --- a/procps-ng-3.3.9-errno.patch +++ b/procps-ng-3.3.10-errno.patch @@ -10,8 +10,8 @@ and this causes a problem later on (bsc#908516) 1 file changed, 6 insertions(+) --- free.c -+++ free.c 2015-01-23 15:30:56.433518424 +0000 -@@ -189,6 +189,7 @@ int main(int argc, char **argv) ++++ free.c 2015-01-27 15:28:08.494018768 +0000 +@@ -190,6 +190,7 @@ int main(int argc, char **argv) int c, flags = 0; char *endptr; struct commandline_arguments args; @@ -19,7 +19,7 @@ and this causes a problem later on (bsc#908516) /* * For long options that have no equivalent short option, use a -@@ -227,10 +228,12 @@ int main(int argc, char **argv) +@@ -228,10 +229,12 @@ int main(int argc, char **argv) #ifdef HAVE_PROGRAM_INVOCATION_NAME program_invocation_name = program_invocation_short_name; #endif @@ -30,9 +30,9 @@ and this causes a problem later on (bsc#908516) atexit(close_stdout); + errno = errsv; - while ((c = getopt_long(argc, argv, "bkmghlotCc:s:V", longopts, NULL)) != -1) + while ((c = getopt_long(argc, argv, "bkmghltCc:ws:V", longopts, NULL)) != -1) switch (c) { -@@ -266,12 +269,15 @@ int main(int argc, char **argv) +@@ -264,12 +267,15 @@ int main(int argc, char **argv) break; case 's': flags |= FREE_REPEAT; diff --git a/procps-v3.3.3-fdleak.dif b/procps-ng-3.3.10-fdleak.dif similarity index 70% rename from procps-v3.3.3-fdleak.dif rename to procps-ng-3.3.10-fdleak.dif index e28486a..607eef2 100644 --- a/procps-v3.3.3-fdleak.dif +++ b/procps-ng-3.3.10-fdleak.dif @@ -1,17 +1,14 @@ --- vmstat.c -+++ vmstat.c 2012-06-01 15:57:49.952010091 +0000 -@@ -41,9 +41,9 @@ - #include ++++ vmstat.c 2015-01-27 14:59:34.049571755 +0000 +@@ -40,6 +40,7 @@ + #include #include #include +#include #include #include -- - #include "c.h" - #include "fileutils.h" - #include "nls.h" -@@ -545,13 +545,12 @@ static void slabheader(void) + #include +@@ -690,13 +691,12 @@ static void slabheader(void) static void slabformat(void) { @@ -27,7 +24,7 @@ xwarnx(_("your kernel does not support slabinfo or your permissions are insufficient")); return; } -@@ -583,7 +582,6 @@ static void slabformat(void) +@@ -728,7 +728,6 @@ static void slabformat(void) } free(slabs); } diff --git a/procps-ng-3.3.10-integer-overflow.patch b/procps-ng-3.3.10-integer-overflow.patch new file mode 100644 index 0000000..02cb7ec --- /dev/null +++ b/procps-ng-3.3.10-integer-overflow.patch @@ -0,0 +1,52 @@ +--- proc/sysinfo.c ++++ proc/sysinfo.c 2015-01-27 15:04:57.337518882 +0000 +@@ -708,8 +708,14 @@ nextline: + kb_main_cached = kb_page_cache + kb_slab; + if ((ev=getenv("PS_FULL_CACHE"))) + kb_main_cached += kb_slab_reclaimable + kb_swap_cached + kb_nfs_unstable; +- kb_swap_used = kb_swap_total - kb_swap_free; +- kb_main_used = kb_main_total - kb_main_free - kb_main_cached - kb_main_buffers; ++ if (kb_swap_total > kb_swap_free) ++ kb_swap_used = kb_swap_total - kb_swap_free; ++ else ++ kb_swap_used = 0; ++ if (kb_main_total > kb_main_free + kb_main_cached + kb_main_buffers) ++ kb_main_used = kb_main_total - kb_main_free - kb_main_cached - kb_main_buffers; ++ else ++ kb_main_used = 0; + + /* zero? might need fallback for 2.6.27 <= kernel kb_low_free) ++ kb_low_used = kb_low_total - kb_low_free; ++ else ++ kb_low_used = 0; ++ ++ if (kb_high_total > kb_high_free) ++ kb_high_used = kb_high_total - kb_high_free; ++ else ++ kb_high_used = 0; ++ + printf("%-7s", _("Low:")); + printf(" %11s", scale_size(kb_low_total, flags, args)); +- printf(" %11s", scale_size(kb_low_total - kb_low_free, flags, args)); ++ printf(" %11s", scale_size(kb_low_used, flags, args)); + printf(" %11s", scale_size(kb_low_free, flags, args)); + printf("\n"); + + printf("%-7s", _("High:")); + printf(" %11s", scale_size(kb_high_total, flags, args)); +- printf(" %11s", scale_size(kb_high_total - kb_high_free, flags, args)); ++ printf(" %11s", scale_size(kb_high_used, flags, args)); + printf(" %11s", scale_size(kb_high_free, flags, args)); + printf("\n"); + } diff --git a/procps-v3.3.4-large_pcpu.patch b/procps-ng-3.3.10-large_pcpu.patch similarity index 61% rename from procps-v3.3.4-large_pcpu.patch rename to procps-ng-3.3.10-large_pcpu.patch index 320f710..3a196ec 100644 --- a/procps-v3.3.4-large_pcpu.patch +++ b/procps-ng-3.3.10-large_pcpu.patch @@ -1,40 +1,39 @@ --- top/top.c -+++ top/top.c 2012-10-30 11:34:42.634844811 +0000 -@@ -1910,8 +1910,15 @@ static void zap_fieldstab (void) { - Fieldstab[P_CPU].width = 5; ++++ top/top.c 2015-01-27 15:25:34.329519296 +0000 +@@ -2302,8 +2302,15 @@ static void zap_fieldstab (void) { + Fieldstab[EU_CPU].width = 5; if (Rc.mode_irixps && smp_num_cpus > 1 && !Thread_mode) { Cpu_pmax = 100.0 * smp_num_cpus; - if (smp_num_cpus > 10) { + if (smp_num_cpus > 1000) { + if (Cpu_pmax > 9999999.0) Cpu_pmax = 9999999.0; -+ Fieldstab[P_CPU].width = 8; ++ Fieldstab[EU_CPU].width = 8; + } else if (smp_num_cpus > 100) { + if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; -+ Fieldstab[P_CPU].width = 7; ++ Fieldstab[EU_CPU].width = 7; + } else if (smp_num_cpus > 10) { if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; -+ Fieldstab[P_CPU].width = 6; ++ Fieldstab[EU_CPU].width = 6; } else { if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; } -@@ -1921,12 +1928,18 @@ static void zap_fieldstab (void) { - Fieldstab[P_CPU].width = 4; +@@ -2313,12 +2320,18 @@ static void zap_fieldstab (void) { + Fieldstab[EU_CPU].width = 4; if (Rc.mode_irixps && smp_num_cpus > 1 && !Thread_mode) { Cpu_pmax = 100.0 * smp_num_cpus; -- if (smp_num_cpus > 10) { + if (smp_num_cpus > 1000) { + if (Cpu_pmax > 9999999.0) Cpu_pmax = 9999999.0; -+ Fieldstab[P_CPU].width = 7; ++ Fieldstab[EU_CPU].width = 7; + } else if (smp_num_cpus > 100) { + if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; -+ Fieldstab[P_CPU].width = 6; -+ } else if (smp_num_cpus > 10) { ++ Fieldstab[EU_CPU].width = 6; + if (smp_num_cpus > 10) { if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; -+ Fieldstab[P_CPU].width = 5; ++ Fieldstab[EU_CPU].width = 5; } else { if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; } -- Fieldstab[P_CPU].width = 5; +- Fieldstab[EU_CPU].width = 5; } #endif diff --git a/procps-ng-3.3.10-slab.patch b/procps-ng-3.3.10-slab.patch new file mode 100644 index 0000000..77f6867 --- /dev/null +++ b/procps-ng-3.3.10-slab.patch @@ -0,0 +1,117 @@ +--- + free.1 | 7 +++++++ + free.c | 7 ++++++- + proc/sysinfo.c | 4 ++++ + proc/sysinfo.h | 5 +++++ + vmstat.c | 6 +++++- + 5 files changed, 27 insertions(+), 2 deletions(-) + +--- free.1 ++++ free.1 2015-01-27 14:38:35.233518879 +0000 +@@ -82,6 +82,13 @@ Switch to the wide mode. The wide mode p + than 80 characters. In this mode \fBbuffers\fR and \fBcache\fR + are reported in two separate columns. + .TP ++\fB\-C\fR, \fB\-\-full\-cache\fR ++Add to the plain \fBCached\fR in-memory cache for files also more cache lines as ++the \fBNFS_Unstable\fR pages sent to the server, but not yet committed to stable storage, ++the \fBSReclaimable\fR as part of \fISlab\fR, that might be reclaimed, such as caches, ++and the \fBSwapCached\fR memory that once was swapped out but is swapped back. ++Can be also enabled by the environment variable \fBPS_FULL_CACHE\fR. ++.TP + \fB\-c\fR, \fB\-\-count\fR \fIcount\fR + Display the result + .I count +--- free.c ++++ free.c 2015-01-27 14:43:17.341678624 +0000 +@@ -84,6 +84,7 @@ static void __attribute__ ((__noreturn__ + fputs(_(" -t, --total show total for RAM + swap\n"), out); + fputs(_(" -s N, --seconds N repeat printing every N seconds\n"), out); + fputs(_(" -c N, --count N repeat printing N times, then exit\n"), out); ++ fputs(_(" -C, --full-cache add further cache lines to main cache\n"), out); + fputs(_(" -w, --wide wide output\n"), out); + fputs(USAGE_SEPARATOR, out); + fputs(_(" --help display this help and exit\n"), out); +@@ -212,6 +213,7 @@ int main(int argc, char **argv) + { "total", no_argument, NULL, 't' }, + { "seconds", required_argument, NULL, 's' }, + { "count", required_argument, NULL, 'c' }, ++ { "full-cache",required_argument, NULL, HELP_OPTION }, + { "wide", no_argument, NULL, 'w' }, + { "help", no_argument, NULL, HELP_OPTION }, + { "version", no_argument, NULL, 'V' }, +@@ -231,7 +233,7 @@ int main(int argc, char **argv) + textdomain(PACKAGE); + atexit(close_stdout); + +- while ((c = getopt_long(argc, argv, "bkmghltc:ws:V", longopts, NULL)) != -1) ++ while ((c = getopt_long(argc, argv, "bkmghltCc:ws:V", longopts, NULL)) != -1) + switch (c) { + case 'b': + args.exponent = 1; +@@ -281,6 +283,9 @@ int main(int argc, char **argv) + case 'w': + flags |= FREE_WIDE; + break; ++ case 'C': ++ setenv("PS_FULL_CACHE", "yes", 1); ++ break; + case HELP_OPTION: + usage(stdout); + case 'V': +--- proc/sysinfo.c ++++ proc/sysinfo.c 2015-01-27 14:45:59.665518819 +0000 +@@ -3,6 +3,7 @@ + * Copyright (C) 1992-1998 by Michael K. Johnson, johnsonm@redhat.com + * Copyright 1998-2003 Albert Cahalan + * June 2003, Fabian Frederick, disk and slab info ++ * Copyright (c) 2008 Bart Van Assche. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public +@@ -625,6 +626,7 @@ void meminfo(void){ + char namebuf[32]; /* big enough to hold any row name */ + mem_table_struct findme = { namebuf, NULL}; + mem_table_struct *found; ++ const char *ev; + char *head; + char *tail; + static const mem_table_struct mem_table[] = { +@@ -704,6 +706,8 @@ nextline: + kb_inactive = kb_inact_dirty + kb_inact_clean + kb_inact_laundry; + } + kb_main_cached = kb_page_cache + kb_slab; ++ if ((ev=getenv("PS_FULL_CACHE"))) ++ kb_main_cached += kb_slab_reclaimable + kb_swap_cached + kb_nfs_unstable; + kb_swap_used = kb_swap_total - kb_swap_free; + kb_main_used = kb_main_total - kb_main_free - kb_main_cached - kb_main_buffers; + +--- vmstat.c ++++ vmstat.c 2015-01-27 14:51:23.801518151 +0000 +@@ -103,6 +103,7 @@ static void __attribute__ ((__noreturn__ + fputs(_(" -p, --partition partition specific statistics\n"), out); + fputs(_(" -S, --unit define display unit\n"), out); + fputs(_(" -w, --wide wide output\n"), out); ++ fputs(_(" -C, --full-cache add further cache lines to main cache\n"), out); + fputs(_(" -t, --timestamp show timestamp\n"), out); + fputs(USAGE_SEPARATOR, out); + fputs(USAGE_HELP, out); +@@ -881,7 +882,7 @@ int main(int argc, char *argv[]) + atexit(close_stdout); + + while ((c = +- getopt_long(argc, argv, "afmnsdDp:S:wthV", longopts, ++ getopt_long(argc, argv, "aCfmnsdDp:S:wthV", longopts, + NULL)) != EOF) + switch (c) { + case 'V': +@@ -950,6 +951,9 @@ int main(int argc, char *argv[]) + case 't': + t_option = 1; + break; ++ case 'C': ++ setenv("PS_FULL_CACHE", "yes", 1); ++ break; + default: + /* no other aguments defined yet. */ + usage(stderr); diff --git a/procps-v3.3.4-xen.dif b/procps-ng-3.3.10-xen.dif similarity index 74% rename from procps-v3.3.4-xen.dif rename to procps-ng-3.3.10-xen.dif index 63c31b4..ad73c69 100644 --- a/procps-v3.3.4-xen.dif +++ b/procps-ng-3.3.10-xen.dif @@ -1,15 +1,15 @@ --- vmstat.c -+++ vmstat.c 2012-06-01 15:54:39.388411889 +0000 -@@ -244,7 +244,7 @@ static void new_format(void) ++++ vmstat.c 2015-01-27 14:57:19.467491788 +0000 +@@ -292,7 +292,7 @@ static void new_format(void) unsigned int intr[2], ctxt[2]; unsigned int sleep_half; unsigned long kb_per_page = sysconf(_SC_PAGESIZE) / 1024ul; - int debt = 0; /* handle idle ticks running backwards */ + long long debt = 0; /* handle idle ticks running backwards */ - - sleep_half = (sleep_time / 2); - new_header(); -@@ -305,12 +306,12 @@ static void new_format(void) + struct tm *tm_ptr; + time_t the_time; + char timebuf[32]; +@@ -375,12 +375,12 @@ static void new_format(void) /* idle can run backwards for a moment -- kernel "feature" */ if (debt) { diff --git a/procps-ng-3.3.10.tar.xz b/procps-ng-3.3.10.tar.xz new file mode 100644 index 0000000..326f131 --- /dev/null +++ b/procps-ng-3.3.10.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a02e6f98974dfceab79884df902ca3df30b0e9bad6d76aee0fb5dce17f267f04 +size 819880 diff --git a/procps-ng-3.3.8-selinux.patch b/procps-ng-3.3.8-selinux.patch deleted file mode 100644 index ebcd098..0000000 --- a/procps-ng-3.3.8-selinux.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- ps/Makefile.am -+++ ps/Makefile.am 2013-05-29 11:00:12.549939319 +0000 -@@ -3,7 +3,7 @@ AM_CPPFLAGS = \ - -I$(top_srcdir)/include \ - -DLOCALEDIR=\"$(localedir)\" - --AM_LDFLAGS = ../proc/libprocps.la -+AM_LDFLAGS = ../proc/libprocps.la -ldl - - if WITH_SYSTEMD - AM_LDFLAGS += @SYSTEMD_LIBS@ ---- ps/parser.c -+++ ps/parser.c 2013-05-29 10:57:34.177440830 +0000 -@@ -238,7 +238,7 @@ static const char *parse_sysv_option(voi - // In the meantime, please do not add to it. The list is - // intended to ONLY contain flags defined by the POSIX and UNIX - // standards published by The Open Group, IEEE, and ISO. -- if(!strchr("aAdefgGlnoptuU", *flagptr)) not_pure_unix = 1; // dude, -Z ain't in POSIX -+ if(!strchr("aAdefgGlnoptuUZ", *flagptr)) not_pure_unix = 1; // dude, -Z ain't in POSIX - - switch(*flagptr){ - case 'A': ---- ps/ps.1 -+++ ps/ps.1 2012-06-01 15:22:45.268010363 +0000 -@@ -423,6 +423,9 @@ option, which - .B \-F - implies. - .TP -+.BI \-Z -+display security context format (SELinux, etc.) -+.TP - .BI \-\-format \ format - user\-defined format. Identical to - .B \-o ---- w.c -+++ w.c 2013-05-29 10:57:34.349888215 +0000 -@@ -356,6 +356,12 @@ static const proc_t *getproc(const utmp_ - continue; - best = tmp; - } -+ /* -+ * It is there but SELinux wouldn't allow us to know the detail. Really -+ * w should just be given rights -+ */ -+ if(!kill(u->ut_pid, 0) || errno != ESRCH) -+ *found_utpid = 1; - return best ? best : secondbest; - } - diff --git a/procps-v3.3.3-buffersize.diff b/procps-v3.3.3-buffersize.diff deleted file mode 100644 index b4eed43..0000000 --- a/procps-v3.3.3-buffersize.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- proc/sysinfo.c -+++ proc/sysinfo.c 2012-06-01 14:33:02.936510627 +0000 -@@ -56,7 +56,7 @@ static int vminfo_fd = -1; - - // As of 2.6.24 /proc/meminfo seems to need 888 on 64-bit, - // and would need 1258 if the obsolete fields were there. --static char buf[2048]; -+static char buf[4096]; - - /* This macro opens filename only if necessary and seeks to 0 so - * that successive calls to the functions are more efficient. diff --git a/procps-v3.3.3-integer-overflow.patch b/procps-v3.3.3-integer-overflow.patch deleted file mode 100644 index 5c8ff38..0000000 --- a/procps-v3.3.3-integer-overflow.patch +++ /dev/null @@ -1,71 +0,0 @@ ---- proc/sysinfo.c -+++ proc/sysinfo.c 2015-01-23 15:28:10.965520879 +0000 -@@ -684,8 +684,16 @@ nextline: - if(kb_inactive==~0UL){ - kb_inactive = kb_inact_dirty + kb_inact_clean + kb_inact_laundry; - } -- kb_swap_used = kb_swap_total - kb_swap_free; -- kb_main_used = kb_main_total - kb_main_free; -+ if (kb_swap_total > kb_swap_free) { -+ kb_swap_used = kb_swap_total - kb_swap_free; -+ } else { -+ kb_swap_used = 0; -+ } -+ if (kb_main_total > kb_main_free) { -+ kb_main_used = kb_main_total - kb_main_free; -+ } else { -+ kb_main_used = 0; -+ } - if ((ev=getenv("PS_FULL_CACHE"))) - kb_main_cached += kb_swap_reclaimable + kb_swap_cached + kb_nfs_unstable; - } ---- free.c -+++ free.c 2012-06-04 09:50:26.588010539 +0000 -@@ -310,24 +310,44 @@ int main(int argc, char **argv) - * to print the high info, even if it is zero. - */ - if (flags & FREE_LOHI) { -+ unsigned long kb_low_used; -+ unsigned long kb_high_used; -+ -+ if (kb_low_total > kb_low_free) -+ kb_low_used = kb_low_total - kb_low_free; -+ else -+ kb_low_used = 0; -+ -+ if (kb_high_total > kb_high_free) -+ kb_high_used = kb_high_total - kb_high_free; -+ else -+ kb_high_used = 0; -+ - printf("%-7s", _("Low:")); - printf(" %10s", scale_size(kb_low_total, flags, args)); -- printf(" %10s", scale_size(kb_low_total - kb_low_free, flags, args)); -+ printf(" %10s", scale_size(kb_low_used, flags, args)); - printf(" %10s", scale_size(kb_low_free, flags, args)); - printf("\n"); - - printf("%-7s", _("High:")); - printf(" %10s", scale_size(kb_high_total, flags, args)); -- printf(" %10s", scale_size(kb_high_total - kb_high_free, flags, args)); -+ printf(" %10s", scale_size(kb_high_used, flags, args)); - printf(" %10s", scale_size(kb_high_free, flags, args)); - printf("\n"); - } - - if (!(flags & FREE_OLDFMT)) { - unsigned KLONG buffers_plus_cached = kb_main_buffers + kb_main_cached; -+ unsigned long kb_used_minus_bufcache; -+ -+ if (kb_main_used > buffers_plus_cached) -+ kb_used_minus_bufcache = kb_main_used - buffers_plus_cached; -+ else -+ kb_used_minus_bufcache = 0; -+ - printf(_("-/+ buffers/cache:")); - printf(" %10s", -- scale_size(kb_main_used - buffers_plus_cached, flags, args)); -+ scale_size(kb_used_minus_bufcache, flags, args)); - printf(" %10s", - scale_size(kb_main_free + buffers_plus_cached, flags, args)); - printf("\n"); diff --git a/procps-v3.3.3-slab.patch b/procps-v3.3.3-slab.patch deleted file mode 100644 index af573b1..0000000 --- a/procps-v3.3.3-slab.patch +++ /dev/null @@ -1,110 +0,0 @@ ---- - free.1 | 6 ++++++ - free.c | 6 +++++- - proc/sysinfo.c | 16 ++++++++++------ - proc/sysinfo.h | 5 +++++ - 4 files changed, 26 insertions(+), 7 deletions(-) - ---- free.1 -+++ free.1 2015-01-23 15:25:22.093559404 +0000 -@@ -48,6 +48,13 @@ display the units of print out. Followi - If unit is missing, and you have petabyte of RAM or swap, the number is in - terabytes and columns might not be aligned with header. - .TP -+\fB\-C\fR, \fB\-\-full\-cache\fR -+Add to the plain \fBCached\fR in-memory cache for files also more cache lines as -+the \fBNFS_Unstable\fR pages sent to the server, but not yet committed to stable storage, -+the \fBSReclaimable\fR as part of \fISlab\fR, that might be reclaimed, such as caches, -+and the \fBSwapCached\fR memory that once was swapped out but is swapped back. -+Can be also enabled by the environment variable \fBPS_FULL_CACHE\fR. -+.TP - \fB\-c\fR, \fB\-\-count\fR \fIcount\fR - Display the result - .I count ---- free.c -+++ free.c 2015-01-23 15:14:07.186228830 +0000 -@@ -213,6 +213,7 @@ int main(int argc, char **argv) - { "total", no_argument, NULL, 't' }, - { "seconds", required_argument, NULL, 's' }, - { "count", required_argument, NULL, 'c' }, -+ { "full-cache",required_argument, NULL, 'C' }, - { "help", no_argument, NULL, HELP_OPTION }, - { "version", no_argument, NULL, 'V' }, - { NULL, 0, NULL, 0 } -@@ -231,7 +232,7 @@ int main(int argc, char **argv) - textdomain(PACKAGE); - atexit(close_stdout); - -- while ((c = getopt_long(argc, argv, "bkmghlotc:s:V", longopts, NULL)) != -1) -+ while ((c = getopt_long(argc, argv, "bkmghlotCc:s:V", longopts, NULL)) != -1) - switch (c) { - case 'b': - args.exponent = 1; -@@ -281,6 +282,9 @@ int main(int argc, char **argv) - error(EXIT_FAILURE, ERANGE, - _("failed to parse count argument: '%s'"), optarg); - break; -+ case 'C': -+ setenv("PS_FULL_CACHE", "yes", 1); -+ break; - case HELP_OPTION: - usage(stdout); - case 'V': ---- proc/sysinfo.c -+++ proc/sysinfo.c 2015-01-23 15:08:35.381519221 +0000 -@@ -3,6 +3,7 @@ - * Copyright (C) 1992-1998 by Michael K. Johnson, johnsonm@redhat.com - * Copyright 1998-2003 Albert Cahalan - * June 2003, Fabian Frederick, disk and slab info -+ * Copyright (c) 2008 Bart Van Assche. - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public -@@ -598,17 +599,18 @@ static unsigned long kb_vmalloc_chunk; - static unsigned long kb_vmalloc_total; - static unsigned long kb_vmalloc_used; - // seen on 2.6.24-rc6-git12 --static unsigned long kb_anon_pages; --static unsigned long kb_bounce; --static unsigned long kb_commit_limit; --static unsigned long kb_nfs_unstable; --static unsigned long kb_swap_reclaimable; --static unsigned long kb_swap_unreclaimable; -+unsigned long kb_anon_pages; -+unsigned long kb_bounce; -+unsigned long kb_commit_limit; -+unsigned long kb_nfs_unstable; -+unsigned long kb_swap_reclaimable; -+unsigned long kb_swap_unreclaimable; - - void meminfo(void){ - char namebuf[16]; /* big enough to hold any row name */ - mem_table_struct findme = { namebuf, NULL}; - mem_table_struct *found; -+ const char *ev; - char *head; - char *tail; - static const mem_table_struct mem_table[] = { -@@ -684,6 +686,8 @@ nextline: - } - kb_swap_used = kb_swap_total - kb_swap_free; - kb_main_used = kb_main_total - kb_main_free; -+ if ((ev=getenv("PS_FULL_CACHE"))) -+ kb_main_cached += kb_swap_reclaimable + kb_swap_cached + kb_nfs_unstable; - } - - /*****************************************************************/ ---- proc/sysinfo.h -+++ proc/sysinfo.h 2012-06-01 15:10:57.000000000 +0000 -@@ -31,6 +31,11 @@ extern unsigned long kb_main_total; - extern unsigned long kb_swap_free; - extern unsigned long kb_swap_total; - /* recently introduced */ -+extern unsigned long kb_anon_pages; -+extern unsigned long kb_bounce; -+extern unsigned long kb_nfs_unstable; -+extern unsigned long kb_slab_reclaimable; -+extern unsigned long kb_slab_unreclaimable; - extern unsigned long kb_high_free; - extern unsigned long kb_high_total; - extern unsigned long kb_low_free; diff --git a/procps.changes b/procps.changes index 2ed55b2..50107ba 100644 --- a/procps.changes +++ b/procps.changes @@ -1,3 +1,77 @@ +------------------------------------------------------------------- +Tue Feb 3 15:24:19 UTC 2015 - werner@suse.de + +- Update tp procps-ng-3.3.10 + * sysctl --system loads default config file - Debian #732920 + * ps doesn't exit on SIGCONT + * top better accommodates discontinuous NUMA nodes + * ps cmdline trailing spaces suppressed under zsh, redhat #1057600 + * kill restores the '-HUP -1' functionality + * vmstat -d / -p segfault eliminated when /sys is not mounted + * pgrep properly shows full command line when -au are combined + * vmstat supports timestamps with -t/--timestamp option + * top is now immune to distortions when system time is reset + * top standardized the key support with prompted input + * top missing summary area info added to man document, ubuntu #574624 + * top properly responds to the current locale LC_NUMERIC setting + * top provides alternate graph modes for cpu states and memory usage + * top offers new startup defaults, plus ./configure --disable-modern-top + * top exploits MemAvailable field and offers improved memory statistics + * ps new --quick-pid option, a more efficient alternative to --pid option + * usernames up to 32 characters now accommodated (up from 19), redhat #1112734 + * free exploits MemAvailable field and offers improved memory statistics + * free considers slabs in displayed totals, debian #565518, ubuntu #126329 + * watch supports new ANSI styles and background colors +- Remove the patches now upstream + 0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch + 0024-sysctl-system-loads-default-config-file.patch + 0025-Split-help-lines-to-help-translators.patch + 0026-library-fixing-uninitialized-variable-pos-in-whattim.patch + 0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch + 0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch + 0029-ps-ignore-SIGCONT.patch + 0031-vmstat-wide-output-still-not-wide-enough.patch + 0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch + 0033-kill-for-PID-1-restored.patch + 0034-Check-for-presence-of-disks-in-vmstat.patch + 0035-PID-2-to-9-for-kill-too.patch + 0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch + 0036-pgrep-fails-to-show-full-command-line-with-au.patch + 0036-top-restore-the-former-behavior-after-stderr-redirec.patch + 0037-fail-on-null-string-for-arguments.patch + 0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch + 0038-Update-help-files.patch + 0038-top-protect-against-distortion-when-system-time-rese.patch + 0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch + 0040-watch-Don-t-leak-extra-fds-to-the-child.patch + 0041-vmstat-Fixing-format-security-flaws.patch + 0043-Added-get-trans-target-to-Makefile.patch + 0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch + 0045-library-properly-handle-memory-used-by-tmpfs.patch + 0045-top-standardize-Esc-key-support-with-prompted-input.patch + 0046-Minor-i18n-fixes.patch + 0046-top-miscellaneous-accumulated-changes-to-program-cod.patch + 0047-sysctl-increase-max-supported-line-length-of-the-con.patch + 0049-fix-url-for-rsync.patch + 0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch + 0052-top-refactor-man-document-so-as-to-allow-translation.patch + 0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch + 0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch + 0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch + 0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch + 0060-top-miscellaneous-accumulated-changes-to-man-documen.patch + bsc901202-add-better-help-output.patch + procps-ng-3.3.8-selinux.patch + procps-v3.3.3-buffersize.diff +- Modify and rename patches + procps-ng-3.3.8-bnc634071_procstat2.diff becomes procps-ng-3.3.10-bnc634071_procstat2.diff + procps-ng-3.3.9-errno.patch becomes procps-ng-3.3.10-errno.patch + procps-v3.3.3-fdleak.dif becomes procps-ng-3.3.10-fdleak.dif + procps-v3.3.3-integer-overflow.patch becomes procps-ng-3.3.10-integer-overflow.patch + procps-v3.3.4-large_pcpu.patch becomes procps-ng-3.3.10-large_pcpu.patch + procps-v3.3.3-slab.patch becomes procps-ng-3.3.10-slab.patch + procps-v3.3.4-xen.dif becomes procps-ng-3.3.10-xen.dif + ------------------------------------------------------------------- Fri Jan 23 15:53:29 UTC 2015 - werner@suse.de diff --git a/procps.spec b/procps.spec index c25e1cf..767b9a8 100644 --- a/procps.spec +++ b/procps.spec @@ -18,7 +18,7 @@ %bcond_with bin2usr %bcond_with pidof -%define somajor 3 +%define somajor 4 %define libname libprocps%{somajor} Name: procps @@ -40,7 +40,7 @@ BuildRequires: pkgconfig(libsystemd) %endif %endif BuildRequires: xz -Version: 3.3.9 +Version: 3.3.10 Release: 0 Provides: ps = %version-%release Obsoletes: ps < %version-%release @@ -50,7 +50,7 @@ Requires(postun): %insserv_prereq Summary: The ps utilities for /proc License: GPL-2.0+ and LGPL-2.1+ Group: System/Monitoring -Source: http://downloads.sourceforge.net/project/procps-ng/Production/procps-ng-3.3.9.tar.xz +Source: http://downloads.sourceforge.net/project/procps-ng/Production/procps-ng-3.3.10.tar.xz Source1: procps-pmap-legacy.tar.bz2 Source2: boot.sysctl Source3: systat.xinetd @@ -59,20 +59,18 @@ Patch1: procps-v3.3.3-ia64.diff Patch3: procps-ng-3.3.9-w-notruncate.diff Patch4: procps-v3.3.4-w-simply-work.diff Patch5: procps-ng-3.3.8-top.1.diff -Patch6: procps-v3.3.3-buffersize.diff Patch7: procps-ng-3.3.8-readeof.patch -Patch8: procps-v3.3.3-slab.patch -Patch9: procps-ng-3.3.8-selinux.patch +Patch8: procps-ng-3.3.10-slab.patch Patch10: procps-ng-3.3.8-accuracy.dif -Patch11: procps-v3.3.4-xen.dif -Patch12: procps-v3.3.3-fdleak.dif +Patch11: procps-ng-3.3.10-xen.dif +Patch12: procps-ng-3.3.10-fdleak.dif Patch13: procps-v3.3.3-columns.dif -Patch14: procps-v3.3.3-integer-overflow.patch -Patch15: procps-ng-3.3.8-bnc634071_procstat2.diff +Patch14: procps-ng-3.3.10-integer-overflow.patch +Patch15: procps-ng-3.3.10-bnc634071_procstat2.diff Patch16: procps-ng-3.3.8-bnc634840.patch Patch17: procps-v3.3.3-read-sysctls-also-from-boot-sysctl.conf-kernelversion.diff Patch18: procps-ng-3.3.8-petabytes.patch -Patch19: procps-v3.3.4-large_pcpu.patch +Patch19: procps-ng-3.3.10-large_pcpu.patch Patch20: procps-ng-3.3.8-tinfo.dif Patch21: procps-v3.3.3-pwdx.patch # PATCH-FIX-OPENSUSE -- trifle rest of the old terabyte patch @@ -80,62 +78,7 @@ Patch28: procps-ng-3.3.8-vmstat-terabyte.dif # PATCH-FIX-SUSE -- Ignore scan_unevictable_pages in sysctl Patch31: procps-ng-3.3.8-ignore-scan_unevictable_pages.patch # PATCH-FIX-SUSE -- Avoid errno set by setlocale() -Patch32: procps-ng-3.3.9-errno.patch - -Patch60: 0024-sysctl-system-loads-default-config-file.patch -Patch61: 0025-Split-help-lines-to-help-translators.patch -Patch62: 0026-library-fixing-uninitialized-variable-pos-in-whattim.patch -Patch63: 0027-pgrep-Fixing-memory-leak-in-do_regcomp.patch -Patch64: 0028-sysctl-Fixing-memory-leaks-in-PreloadSystem.patch -Patch65: 0029-ps-ignore-SIGCONT.patch -Patch66: 0031-vmstat-wide-output-still-not-wide-enough.patch -Patch67: 0032-library-skip-replacement-of-trailing-0-in-read_unvec.patch -Patch68: 0033-kill-for-PID-1-restored.patch -Patch69: 0034-Check-for-presence-of-disks-in-vmstat.patch -Patch70: 0035-PID-2-to-9-for-kill-too.patch -Patch71: 0036-pgrep-fails-to-show-full-command-line-with-au.patch -Patch72: 0037-fail-on-null-string-for-arguments.patch -Patch73: 0038-Update-help-files.patch -Patch74: 0039-vmstat-Support-for-timestamps-with-t-fix-for-wd.patch -Patch75: 0040-watch-Don-t-leak-extra-fds-to-the-child.patch -Patch76: 0041-vmstat-Fixing-format-security-flaws.patch -Patch77: 0043-Added-get-trans-target-to-Makefile.patch -Patch78: 0045-library-properly-handle-memory-used-by-tmpfs.patch -Patch79: 0046-Minor-i18n-fixes.patch -Patch80: 0047-sysctl-increase-max-supported-line-length-of-the-con.patch -Patch81: 0049-fix-url-for-rsync.patch -Patch82: 0055-misc-fix-man-doc-spelling-and-grammar-for-translatio.patch -Patch83: 0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch - -# Top patches -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch121: 0023-top-do-not-forget-the-fscanf-s-terminating-null-byte.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch122: 0035-top-provide-for-discontinuous-not-active-NUMA-nodes.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch123: 0036-top-restore-the-former-behavior-after-stderr-redirec.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch124: 0037-top-avoid-name-conflict-in-the-next-version-of-stdli.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch125: 0038-top-protect-against-distortion-when-system-time-rese.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch126: 0044-top-avoid-a-nan-when-the-delay-interval-is-very-low.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch127: 0045-top-standardize-Esc-key-support-with-prompted-input.patch -# PATCH-FIX-UPSTREAM added at 2014/05/15 -Patch128: 0046-top-miscellaneous-accumulated-changes-to-program-cod.patch -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch129: 0051-top-update-copyright-dates-plus-1-preprocessor-chang.patch -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch130: 0052-top-refactor-man-document-so-as-to-allow-translation.patch -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch131: 0053-top-minimize-the-usage-of-apostrophes-in-man-documen.patch -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch132: 0054-top-swap-opening-quotes-for-back-tics-in-man-documen.patch -# PATCH-FIX-UPSTREAM added at 2014/05/16 -Patch133: 0060-top-miscellaneous-accumulated-changes-to-man-documen.patch -# PATCH-FIX-UPSTREAM added at 2014/12/16 -Patch134: bsc901202-add-better-help-output.patch +Patch32: procps-ng-3.3.10-errno.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -185,10 +128,8 @@ the process information pseudo-file system, %patch3 %patch4 %patch5 -%patch6 %patch7 -%patch8 -%patch9 +%patch8 -b .cache %patch10 %patch11 %patch12 @@ -204,45 +145,6 @@ the process information pseudo-file system, %patch28 %patch31 -p1 %patch32 -%patch60 -%patch61 -%patch62 -%patch63 -%patch64 -%patch65 -%patch66 -%patch67 -%patch68 -%patch69 -%patch70 -%patch71 -%patch72 -%patch73 -%patch74 -%patch75 -%patch76 -%patch77 -%patch78 -%patch79 -%patch80 -%patch81 -%patch82 -%patch83 -b .xyz -# Patches for top -%patch121 -%patch122 -%patch123 -%patch124 -%patch125 -%patch126 -%patch127 -%patch128 -%patch129 -%patch130 -%patch131 -%patch132 -%patch133 -%patch134 %build tar --strip-components=1 -xf %{S:1} @@ -416,6 +318,9 @@ make check %{_includedir}/proc/whattime.h %{_libdir}/libprocps.so %{_libdir}/pkgconfig/libprocps.pc +%_mandir/man3/openproc.3.gz +%_mandir/man3/readproc.3.gz +%_mandir/man3/readproctab.3.gz %files -n %{libname} %defattr (-,root,root,755)