Hello community, here is the log from the commit of package procps for openSUSE:Factory checked in at 2015-02-06 10:44:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/procps (Old) and /work/SRC/openSUSE:Factory/.procps.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "procps" Changes: -------- --- /work/SRC/openSUSE:Factory/procps/procps.changes 2014-12-29 00:33:08.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.procps.new/procps.changes 2015-02-06 10:44:36.000000000 +0100 @@ -1,0 +2,86 @@ +Tue Feb 3 15:24:19 UTC 2015 - [email protected] + +- 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 <Esc> 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 - [email protected] + +- Modify patch procps-v3.3.3-slab.patch to be able to make the adding + further cache lines to cache output of the free command switchable. +- This requires modifing the patches + 0045-library-properly-handle-memory-used-by-tmpfs.patch + 0058-library-reverting-tmpfs-subtraction-from-cached-18-F.patch + procps-ng-3.3.9-errno.patch + procps-v3.3.3-integer-overflow.patch + procps-v3.3.3-slab.patch + +------------------------------------------------------------------- Old: ---- 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-bnc634071_procstat2.diff procps-ng-3.3.8-selinux.patch procps-ng-3.3.9-errno.patch procps-ng-3.3.9.tar.xz procps-v3.3.3-buffersize.diff procps-v3.3.3-fdleak.dif procps-v3.3.3-integer-overflow.patch procps-v3.3.3-slab.patch procps-v3.3.4-large_pcpu.patch procps-v3.3.4-xen.dif New: ---- procps-ng-3.3.10-bnc634071_procstat2.diff procps-ng-3.3.10-errno.patch procps-ng-3.3.10-fdleak.dif procps-ng-3.3.10-integer-overflow.patch procps-ng-3.3.10-large_pcpu.patch procps-ng-3.3.10-slab.patch procps-ng-3.3.10-xen.dif procps-ng-3.3.10.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ procps.spec ++++++ --- /var/tmp/diff_new_pack.24ixds/_old 2015-02-06 10:44:38.000000000 +0100 +++ /var/tmp/diff_new_pack.24ixds/_new 2015-02-06 10:44:38.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package procps # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -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 @@ %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 @@ 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 @@ 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 @@ # 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 @@ %patch3 %patch4 %patch5 -%patch6 %patch7 -%patch8 -%patch9 +%patch8 -b .cache %patch10 %patch11 %patch12 @@ -204,45 +145,6 @@ %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 @@ %{_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) ++++++ procps-ng-3.3.8-bnc634071_procstat2.diff -> procps-ng-3.3.10-bnc634071_procstat2.diff ++++++ --- /work/SRC/openSUSE:Factory/procps/procps-ng-3.3.8-bnc634071_procstat2.diff 2014-05-27 07:09:00.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.procps.new/procps-ng-3.3.10-bnc634071_procstat2.diff 2015-02-06 10:44:36.000000000 +0100 @@ -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 <netinet/in.h> /* 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 ++++++ procps-ng-3.3.9-errno.patch -> procps-ng-3.3.10-errno.patch ++++++ --- /work/SRC/openSUSE:Factory/procps/procps-ng-3.3.9-errno.patch 2014-12-06 13:45:26.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.procps.new/procps-ng-3.3.10-errno.patch 2015-02-06 10:44:36.000000000 +0100 @@ -9,8 +9,9 @@ free.c | 6 ++++++ 1 file changed, 6 insertions(+) -+++ free.c 2014-12-05 10:00:37.282018794 +0000 -@@ -189,6 +189,7 @@ int main(int argc, char **argv) +--- free.c ++++ 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; @@ -18,7 +19,7 @@ /* * For long options that have no equivalent short option, use a -@@ -226,10 +227,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 @@ -29,9 +30,9 @@ atexit(close_stdout); + errno = errsv; - while ((c = getopt_long(argc, argv, "bkmghlotc:s:V", longopts, NULL)) != -1) + while ((c = getopt_long(argc, argv, "bkmghltCc:ws:V", longopts, NULL)) != -1) switch (c) { -@@ -265,12 +268,15 @@ int main(int argc, char **argv) +@@ -264,12 +267,15 @@ int main(int argc, char **argv) break; case 's': flags |= FREE_REPEAT; ++++++ procps-ng-3.3.10-fdleak.dif ++++++ --- vmstat.c +++ vmstat.c 2015-01-27 14:59:34.049571755 +0000 @@ -40,6 +40,7 @@ #include <string.h> #include <sys/ioctl.h> #include <sys/types.h> +#include <sys/stat.h> #include <termios.h> #include <unistd.h> #include <time.h> @@ -690,13 +691,12 @@ static void slabheader(void) static void slabformat(void) { - FILE *fSlab; + struct stat fSlab; struct slab_cache *slabs; unsigned long nSlab, i, j, k; const char format[] = "%-24s %6u %6u %6u %6u\n"; - fSlab = fopen("/proc/slabinfo", "rb"); - if (!fSlab) { + if (stat("/proc/slabinfo", &fSlab) < 0) { xwarnx(_("your kernel does not support slabinfo or your permissions are insufficient")); return; } @@ -728,7 +728,6 @@ static void slabformat(void) } free(slabs); } - fclose(fSlab); } static void disksum_format(void) ++++++ procps-ng-3.3.10-integer-overflow.patch ++++++ --- 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 <? 3.14 */ if (!kb_main_available) { --- free.c +++ free.c 2015-01-27 15:07:36.725518136 +0000 @@ -327,15 +327,28 @@ 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(" %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"); } ++++++ procps-ng-3.3.10-large_pcpu.patch ++++++ --- top/top.c +++ 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[EU_CPU].width = 8; + } else if (smp_num_cpus > 100) { + if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; + Fieldstab[EU_CPU].width = 7; + } else if (smp_num_cpus > 10) { if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; + Fieldstab[EU_CPU].width = 6; } else { if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; } @@ -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 > 1000) { + if (Cpu_pmax > 9999999.0) Cpu_pmax = 9999999.0; + Fieldstab[EU_CPU].width = 7; + } else if (smp_num_cpus > 100) { + if (Cpu_pmax > 999999.0) Cpu_pmax = 999999.0; + Fieldstab[EU_CPU].width = 6; if (smp_num_cpus > 10) { if (Cpu_pmax > 99999.0) Cpu_pmax = 99999.0; + Fieldstab[EU_CPU].width = 5; } else { if (Cpu_pmax > 999.9) Cpu_pmax = 999.9; } - Fieldstab[EU_CPU].width = 5; } #endif ++++++ procps-ng-3.3.10-slab.patch ++++++ --- 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, [email protected] * 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 <dev> partition specific statistics\n"), out); fputs(_(" -S, --unit <char> 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); ++++++ procps-ng-3.3.10-xen.dif ++++++ --- vmstat.c +++ 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 */ 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) { - didl = (int)didl + debt; - debt = 0; + didl = (long long)didl + debt; + debt = 0LL; } - if ((int)didl < 0) { - debt = (int)didl; - didl = 0; + if ((long long)didl < 0) { + debt = (long long)didl; + didl = 0ULL; } Div = duse + dsys + didl + diow + dstl; ++++++ procps-ng-3.3.9.tar.xz -> procps-ng-3.3.10.tar.xz ++++++ ++++ 74424 lines of diff (skipped) -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
