Hello community, here is the log from the commit of package sysstat for openSUSE:Factory checked in at 2019-06-04 12:08:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/sysstat (Old) and /work/SRC/openSUSE:Factory/.sysstat.new.5148 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "sysstat" Tue Jun 4 12:08:55 2019 rev:80 rq:706769 version:12.0.5 Changes: -------- --- /work/SRC/openSUSE:Factory/sysstat/sysstat.changes 2019-02-24 16:56:05.728888787 +0100 +++ /work/SRC/openSUSE:Factory/.sysstat.new.5148/sysstat.changes 2019-06-04 12:09:01.119887047 +0200 @@ -1,0 +2,7 @@ +Fri May 31 21:44:31 UTC 2019 - [email protected] + +- Version update to 12.0.5 + * Complete support for PCP output formwat with sadf + * Includes simulation/test environment to run non-regression tests + +------------------------------------------------------------------- Old: ---- sysstat-12.0.3.tar.xz New: ---- sysstat-12.0.5.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ sysstat.spec ++++++ --- /var/tmp/diff_new_pack.i4Oyb3/_old 2019-06-04 12:09:03.683886208 +0200 +++ /var/tmp/diff_new_pack.i4Oyb3/_new 2019-06-04 12:09:03.727886193 +0200 @@ -17,7 +17,7 @@ Name: sysstat -Version: 12.0.3 +Version: 12.0.5 Release: 0 Summary: Sar and Iostat Commands for Linux License: GPL-2.0-or-later ++++++ sysstat-12.0.3.tar.xz -> sysstat-12.0.5.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/CHANGES new/sysstat-12.0.5/CHANGES --- old/sysstat-12.0.3/CHANGES 2018-12-14 15:08:26.000000000 +0100 +++ new/sysstat-12.0.5/CHANGES 2019-05-31 08:42:11.000000000 +0200 @@ -1,5 +1,34 @@ Changes: +2019/05/31: Version 12.0.5 - Sebastien Godard (sysstat <at> orange.fr) + * sar: Add missing %gnice CPU value for tickless CPU. + * sar: Better detect if a disk has been unregistered then registered + again. + * sar: Allow option -i when no input file is specified. + * sadc: Fix bad number of CPU displayed in a LINUX RESTART message. + * sadf: Fix SVG output for filesystem statistics when the user asked for + the mount point to be displayed ("-F MOUNT"). + * iostat: Fix invalid JSON output when option -y is used. + * sar: Cosmetic fix in manual page. + * Cosmectic changes in code. + +2019/04/18: Version 12.0.4 - Sebastien Godard (sysstat <at> orange.fr) + * [Ondrej Dubaj]: sar/sadc: Ignore autofs entries in /etc/mtab. + * [Huang Ying]: mpstat: Fix missing "}" and "]" in JSON output when + stopped by SIGINT. + * iostat: Add a SIGINT handler so that JSON output can be terminated + properly when the user presses Ctrl/C. + * sadf: Fix segmentation fault error when trying to display XML or JSON + data using a file which contains only RESTART records. + * mpstat: JSON output should display "all" for CPU number for global + CPU utilization. + * [Danny Smit]: Add umask sysconfig variable for sa1 and sa2. + * configure: Don't check for sensors library if --disable-sensors + option is used. + * sadf: Don't test for activities available in file if only the header + needs to be displayed. + * json_stats.h: Replace XML -> JSON. + 2018/12/14: Version 12.0.3 - Sebastien Godard (sysstat <at> orange.fr) * sadf: Fix out of bound reads security issues (CVE-2018-19416 and CVE-2018-19517). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/configure new/sysstat-12.0.5/configure --- old/sysstat-12.0.3/configure 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/configure 2019-05-31 08:28:49.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for sysstat 12.0.3. +# Generated by GNU Autoconf 2.69 for sysstat 12.0.5. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -577,8 +577,8 @@ # Identity of this package. PACKAGE_NAME='sysstat' PACKAGE_TARNAME='sysstat' -PACKAGE_VERSION='12.0.3' -PACKAGE_STRING='sysstat 12.0.3' +PACKAGE_VERSION='12.0.5' +PACKAGE_STRING='sysstat 12.0.5' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1304,7 +1304,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures sysstat 12.0.3 to adapt to many kinds of systems. +\`configure' configures sysstat 12.0.5 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1365,7 +1365,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of sysstat 12.0.3:";; + short | recursive ) echo "Configuration of sysstat 12.0.5:";; esac cat <<\_ACEOF @@ -1482,7 +1482,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -sysstat configure 12.0.3 +sysstat configure 12.0.5 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1901,7 +1901,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by sysstat $as_me 12.0.3, which was +It was created by sysstat $as_me 12.0.5, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4558,18 +4558,19 @@ fi if test $SENSORS != "yes"; then - HAVE_SENSORS="n" + HAVE_SENSORS="n" else - HAVE_SENSORS="y" + HAVE_SENSORS="y" fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SENSORS" >&5 $as_echo "$SENSORS" >&6; } # Check for lm_sensors -SENSORS=no LFSENSORS="" DFSENSORS="" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sensors_get_detected_chips in -lsensors" >&5 +if test $HAVE_SENSORS = "y"; then + SENSORS=no + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sensors_get_detected_chips in -lsensors" >&5 $as_echo_n "checking for sensors_get_detected_chips in -lsensors... " >&6; } if ${ac_cv_lib_sensors_sensors_get_detected_chips+:} false; then : $as_echo_n "(cached) " >&6 @@ -4611,12 +4612,12 @@ HAVE_SENSORS="n" fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sensors lib" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sensors lib" >&5 $as_echo_n "checking for sensors lib... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include <sensors/sensors.h> -#include <sensors/error.h> + #include <sensors/error.h> int main () @@ -4632,8 +4633,9 @@ HAVE_SENSORS="n"; SENSORS=no fi rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $SENSORS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SENSORS" >&5 $as_echo "$SENSORS" >&6; } +fi @@ -5959,7 +5961,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by sysstat $as_me 12.0.3, which was +This file was extended by sysstat $as_me 12.0.5, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -6012,7 +6014,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -sysstat config.status 12.0.3 +sysstat config.status 12.0.5 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/configure.in new/sysstat-12.0.5/configure.in --- old/sysstat-12.0.3/configure.in 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/configure.in 2019-05-31 08:28:49.000000000 +0200 @@ -4,7 +4,7 @@ # Modified by Sebastien Godard (sysstat <at> orange.fr) # Initialization of $PACKAGE_VERSION and $PACKAGE_NAME variables -AC_INIT(sysstat, 12.0.3) +AC_INIT(sysstat, 12.0.5) # Ensure that a recent enough version of Autoconf is being used AC_PREREQ(2.53) @@ -97,22 +97,24 @@ [disable sensors support]), SENSORS=$enableval,SENSORS=yes) if test $SENSORS != "yes"; then - HAVE_SENSORS="n" + HAVE_SENSORS="n" else - HAVE_SENSORS="y" + HAVE_SENSORS="y" fi AC_MSG_RESULT($SENSORS) # Check for lm_sensors -SENSORS=no LFSENSORS="" DFSENSORS="" -AC_CHECK_LIB(sensors, sensors_get_detected_chips, LFSENSORS="-lsensors", HAVE_SENSORS="n") -AC_MSG_CHECKING(for sensors lib) -AC_TRY_COMPILE(#include <sensors/sensors.h> -#include <sensors/error.h> - , sensors_cleanup();,SENSORS=yes; DFSENSORS="-DHAVE_SENSORS", HAVE_SENSORS="n"; SENSORS=no) -AC_MSG_RESULT($SENSORS) +if test $HAVE_SENSORS = "y"; then + SENSORS=no + AC_CHECK_LIB(sensors, sensors_get_detected_chips, LFSENSORS="-lsensors", HAVE_SENSORS="n") + AC_MSG_CHECKING(for sensors lib) + AC_TRY_COMPILE(#include <sensors/sensors.h> + #include <sensors/error.h> + , sensors_cleanup();,SENSORS=yes; DFSENSORS="-DHAVE_SENSORS", HAVE_SENSORS="n"; SENSORS=no) + AC_MSG_RESULT($SENSORS) +fi AC_SUBST(HAVE_SENSORS) AC_SUBST(LFSENSORS) AC_SUBST(DFSENSORS) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/count.c new/sysstat-12.0.5/count.c --- old/sysstat-12.0.3/count.c 2018-10-13 09:28:34.000000000 +0200 +++ new/sysstat-12.0.5/count.c 2019-05-31 08:28:49.000000000 +0200 @@ -1,6 +1,6 @@ /* * count.c: Count items for which statistics will be collected. - * (C) 1999-2018 by Sebastien GODARD (sysstat <at> orange.fr) + * (C) 1999-2019 by Sebastien GODARD (sysstat <at> orange.fr) * *************************************************************************** * This program is free software; you can redistribute it and/or modify it * @@ -463,8 +463,8 @@ __nr_t get_filesystem_nr(void) { FILE *fp; - char line[512], fs_name[MAX_FS_LEN], mountp[256]; - char *pos = 0; + char line[512], fs_name[MAX_FS_LEN], mountp[256], type[128]; + char *pos = 0, *pos2 = 0; __nr_t fs = 0; int skip = 0, skip_next = 0; struct statvfs buf; @@ -491,6 +491,19 @@ if (pos == NULL) continue; + /* + * Find second field separator position, + * read filesystem type, + * if filesystem type is autofs, skip it + */ + pos2 = strchr(pos + 1, ' '); + if (pos2 == NULL) + continue; + + sscanf(pos2 + 1, "%127s", type); + if(strcmp(type, "autofs") == 0) + continue; + /* Read filesystem name and mount point */ sscanf(line, "%127s", fs_name); sscanf(pos + 1, "%255s", mountp); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/iostat.c new/sysstat-12.0.5/iostat.c --- old/sysstat-12.0.3/iostat.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/iostat.c 2019-05-31 08:28:49.000000000 +0200 @@ -74,7 +74,8 @@ long interval = 0; char timestamp[TIMESTAMP_LEN]; -struct sigaction alrm_act; +struct sigaction alrm_act, int_act; +int sigint_caught = 0; /* *************************************************************************** @@ -140,6 +141,19 @@ /* *************************************************************************** + * SIGINT signal handler. + * + * IN: + * @sig Signal number. + ************************************************************************** + */ +void int_handler(int sig) +{ + sigint_caught = 1; +} + +/* + *************************************************************************** * Initialize stats common structures. *************************************************************************** */ @@ -1638,6 +1652,17 @@ skip = 1; } + /* Set a handler for SIGALRM */ + memset(&alrm_act, 0, sizeof(alrm_act)); + alrm_act.sa_handler = alarm_handler; + sigaction(SIGALRM, &alrm_act, NULL); + alarm(interval); + + /* Set a handler for SIGINT */ + memset(&int_act, 0, sizeof(int_act)); + int_act.sa_handler = int_handler; + sigaction(SIGINT, &int_act, NULL); + /* Don't buffer data if redirected to a pipe */ setbuf(stdout, NULL); @@ -1690,21 +1715,22 @@ if (count > 0) { count--; } - if (DISPLAY_JSON_OUTPUT(flags)) { - if (count) { - printf(","); - } - printf("\n"); - } - } - else { - skip = 0; } if (count) { curr ^= 1; pause(); + + if (sigint_caught) { + /* SIGINT signal caught => Terminate JSON output properly */ + count = 0; + } + else if (DISPLAY_JSON_OUTPUT(flags) && count && !skip) { + printf(","); + } + skip = 0; } + printf("\n"); } while (count); @@ -2058,12 +2084,6 @@ printf("\n"); } - /* Set a handler for SIGALRM */ - memset(&alrm_act, 0, sizeof(alrm_act)); - alrm_act.sa_handler = alarm_handler; - sigaction(SIGALRM, &alrm_act, NULL); - alarm(interval); - /* Main loop */ rw_io_stat_loop(count, &rectime); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/json_stats.h new/sysstat-12.0.5/json_stats.h --- old/sysstat-12.0.3/json_stats.h 2018-10-13 09:28:35.000000000 +0200 +++ new/sysstat-12.0.5/json_stats.h 2019-05-31 08:28:49.000000000 +0200 @@ -14,7 +14,7 @@ *************************************************************************** */ -/* Functions used to display statistics in XML */ +/* Functions used to display statistics in JSON */ __print_funct_t json_print_cpu_stats (struct activity *, int, int, unsigned long long); __print_funct_t json_print_pcsw_stats @@ -94,4 +94,4 @@ __print_funct_t json_print_softnet_stats (struct activity *, int, int, unsigned long long); -#endif /* _XML_STATS_H */ +#endif /* _JSON_STATS_H */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/man/sar.in new/sysstat-12.0.5/man/sar.in --- old/sysstat-12.0.3/man/sar.in 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/man/sar.in 2019-05-31 08:28:49.000000000 +0200 @@ -1,4 +1,4 @@ -.TH SAR 1 "OCTOBER 2018" Linux "Linux User's Manual" -*- nroff -*- +.TH SAR 1 "APRIL 2019" Linux "Linux User's Manual" -*- nroff -*- .SH NAME sar \- Collect, report, or save system activity information. .SH SYNOPSIS @@ -173,7 +173,7 @@ .SH OPTIONS .IP -A This is equivalent to specifying -.BR "-bBdFHqSuvwWy -I SUM -I ALL -m ALL -n ALL -r ALL -u ALL -P ALL". +.BR "-bBdFHqSvwWy -I SUM -I ALL -m ALL -n ALL -r ALL -u ALL -P ALL". .IP -B Report paging statistics. The following values are displayed: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/mpstat.c new/sysstat-12.0.5/mpstat.c --- old/sysstat-12.0.3/mpstat.c 2018-11-01 09:59:02.000000000 +0100 +++ new/sysstat-12.0.5/mpstat.c 2019-05-31 08:28:49.000000000 +0200 @@ -652,6 +652,7 @@ unsigned char offline_cpu_bitmap[]) { int i, next = FALSE; + char cpu_name[16]; struct stats_cpu *scc, *scp; xprintf(tab++, "\"cpu-load\": ["); @@ -675,7 +676,15 @@ } next = TRUE; - if (i != 0) { + if (i == 0) { + /* This is CPU "all" */ + strcpy(cpu_name, "all"); + + } + else { + snprintf(cpu_name, 16, "%d", i - 1); + cpu_name[15] = '\0'; + /* Recalculate itv for current proc */ deltot_jiffies = get_per_cpu_interval(scc, scp); @@ -694,9 +703,9 @@ } } - xprintf0(tab, "{\"cpu\": \"%d\", \"usr\": %.2f, \"nice\": %.2f, \"sys\": %.2f, " + xprintf0(tab, "{\"cpu\": \"%s\", \"usr\": %.2f, \"nice\": %.2f, \"sys\": %.2f, " "\"iowait\": %.2f, \"irq\": %.2f, \"soft\": %.2f, \"steal\": %.2f, " - "\"guest\": %.2f, \"gnice\": %.2f, \"idle\": %.2f}", i - 1, + "\"guest\": %.2f, \"gnice\": %.2f, \"idle\": %.2f}", cpu_name, (scc->cpu_user - scc->cpu_guest) < (scp->cpu_user - scp->cpu_guest) ? 0.0 : ll_sp_value(scp->cpu_user - scp->cpu_guest, @@ -1871,12 +1880,10 @@ STATS_IRQCPU_SIZE * (cpu_nr + 1) * softirqcpu_nr); } - if (!DISPLAY_JSON_OUTPUT(flags)) { - /* Set a handler for SIGINT */ - memset(&int_act, 0, sizeof(int_act)); - int_act.sa_handler = int_handler; - sigaction(SIGINT, &int_act, NULL); - } + /* Set a handler for SIGINT */ + memset(&int_act, 0, sizeof(int_act)); + int_act.sa_handler = int_handler; + sigaction(SIGINT, &int_act, NULL); pause(); @@ -1932,17 +1939,16 @@ if (count) { - if (DISPLAY_JSON_OUTPUT(flags)) { - printf(",\n"); - } pause(); if (sigint_caught) { /* SIGINT signal caught => Display average stats */ count = 0; - printf("\n"); /* Skip "^C" displayed on screen */ } else { + if (DISPLAY_JSON_OUTPUT(flags)) { + printf(",\n"); + } curr ^= 1; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/nls/sysstat.pot new/sysstat-12.0.5/nls/sysstat.pot --- old/sysstat-12.0.3/nls/sysstat.pot 2018-12-14 15:07:05.000000000 +0100 +++ new/sysstat-12.0.5/nls/sysstat.pot 2019-05-31 08:40:52.000000000 +0200 @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: sysstat <at> orange.fr\n" -"POT-Creation-Date: 2018-12-14 15:07+0100\n" +"POT-Creation-Date: 2019-05-31 08:40+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <[email protected]>\n" @@ -17,144 +17,268 @@ "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: pr_stats.c:2609 pr_stats.c:2616 pr_stats.c:2721 pr_stats.c:2766 -msgid "Summary:" +#: cifsiostat.c:73 mpstat.c:132 iostat.c:90 tapestat.c:101 sar.c:102 +#, c-format +msgid "Usage: %s [ options ] [ <interval> [ <count> ] ]\n" msgstr "" -#: iostat.c:89 tapestat.c:101 cifsiostat.c:73 mpstat.c:132 sar.c:102 +#: cifsiostat.c:77 #, c-format -msgid "Usage: %s [ options ] [ <interval> [ <count> ] ]\n" +msgid "" +"Options are:\n" +"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ --" +"debuginfo ]\n" msgstr "" -#: iostat.c:92 +#: cifsiostat.c:80 #, c-format msgid "" "Options are:\n" -"[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] " -"[ -z ]\n" -"[ -j { ID | LABEL | PATH | UUID | ... } ]\n" -"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -o JSON ]\n" -"[ [ -H ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]\n" -"[ <device> [...] | ALL ] [ --debuginfo ]\n" +"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -h ] [ -k | -m ] [ -t ] [ -V ]\n" +msgstr "" + +#: sadc.c:91 +#, c-format +msgid "Usage: %s [ options ] [ <interval> [ <count> ] ] [ <outfile> ]\n" msgstr "" -#: iostat.c:99 +#: sadc.c:94 #, c-format msgid "" "Options are:\n" -"[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] " -"[ -z ]\n" -"[ -j { ID | LABEL | PATH | UUID | ... } ]\n" -"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -o JSON ]\n" -"[ [ -H ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]\n" -"[ <device> [...] | ALL ]\n" +"[ -C <comment> ] [ -D ] [ -F ] [ -L ] [ -V ]\n" +"[ -S { INT | DISK | IPV6 | POWER | SNMP | XDISK | ALL | XALL } ]\n" +msgstr "" + +#: sadc.c:253 +#, c-format +msgid "Cannot write data to system activity file: %s\n" msgstr "" -#: iostat.c:331 +#: sadc.c:692 sadc.c:755 ioconf.c:506 rd_stats.c:75 sa_common.c:1691 +#: count.c:118 #, c-format -msgid "Cannot find disk data\n" +msgid "Cannot open %s: %s\n" msgstr "" -#: iostat.c:1832 sa_common.c:2136 +#: sadc.c:977 #, c-format -msgid "Invalid type of persistent device name\n" +msgid "Cannot append data to that file (%s)\n" msgstr "" -#: tapestat.c:103 +#: mpstat.c:135 #, c-format msgid "" "Options are:\n" -"[ --human ] [ -k | -m ] [ -t ] [ -V ] [ -y ] [ -z ]\n" +"[ -A ] [ -n ] [ -u ] [ -V ]\n" +"[ -I { SUM | CPU | SCPU | ALL } ] [ -N { <node_list> | ALL } ]\n" +"[ --dec={ 0 | 1 | 2 } ] [ -o JSON ] [ -P { <cpu_list> | ALL } ]\n" msgstr "" -#: tapestat.c:269 -#, c-format -msgid "No tape drives with statistics found\n" +#: mpstat.c:1641 pidstat.c:2406 sar.c:370 +msgid "Average:" msgstr "" -#: sadc.c:91 +#: sadf.c:91 #, c-format -msgid "Usage: %s [ options ] [ <interval> [ <count> ] ] [ <outfile> ]\n" +msgid "" +"Usage: %s [ options ] [ <interval> [ <count> ] ] [ <datafile> | -[0-9]+ ]\n" msgstr "" -#: sadc.c:94 +#: sadf.c:94 #, c-format msgid "" "Options are:\n" -"[ -C <comment> ] [ -D ] [ -F ] [ -L ] [ -V ]\n" -"[ -S { INT | DISK | IPV6 | POWER | SNMP | XDISK | ALL | XALL } ]\n" +"[ -C ] [ -c | -d | -g | -j | -p | -r | -x ] [ -H ] [ -h ] [ -T | -t | -U ] " +"[ -V ]\n" +"[ -O <opts> [,...] ] [ -P { <cpu> [,...] | ALL } ]\n" +"[ --dev=<dev_list> ] [ --fs=<fs_list> ] [ --iface=<iface_list> ]\n" +"[ -s [ <hh:mm[:ss]> ] ] [ -e [ <hh:mm[:ss]> ] ]\n" +"[ -- <sar_options> ]\n" msgstr "" -#: sadc.c:253 +#: rd_stats.c:351 #, c-format -msgid "Cannot write data to system activity file: %s\n" +msgid "Cannot read %s\n" msgstr "" -#: sadc.c:692 sadc.c:755 count.c:118 ioconf.c:506 rd_stats.c:75 -#: sa_common.c:1689 +#: sa_common.c:297 #, c-format -msgid "Cannot open %s: %s\n" +msgid "File created by sar/sadc from sysstat version %d.%d.%d" msgstr "" -#: sadc.c:974 +#: sa_common.c:328 #, c-format -msgid "Cannot append data to that file (%s)\n" +msgid "Invalid system activity file: %s\n" msgstr "" -#: count.c:169 +#: sa_common.c:336 #, c-format -msgid "Cannot handle so many processors!\n" +msgid "Current sysstat version cannot read the format of this file (%#x)\n" msgstr "" -#: cifsiostat.c:77 +#: sa_common.c:353 pidstat.c:244 +#, c-format +msgid "Requested activities not available\n" +msgstr "" + +#: sa_common.c:1392 +#, c-format +msgid "Error while reading system activity file: %s\n" +msgstr "" + +#: sa_common.c:1402 +#, c-format +msgid "End of system activity file unexpected\n" +msgstr "" + +#: sa_common.c:1694 +#, c-format +msgid "Please check if data collecting is enabled\n" +msgstr "" + +#: sa_common.c:2018 +#, c-format +msgid "Requested activities not available in file %s\n" +msgstr "" + +#: sa_common.c:2139 iostat.c:1858 +#, c-format +msgid "Invalid type of persistent device name\n" +msgstr "" + +#: pidstat.c:91 #, c-format msgid "" -"Options are:\n" -"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -h ] [ -k | -m ] [ -t ] [ -V ] [ --" -"debuginfo ]\n" +"Usage: %s [ options ] [ <interval> [ <count> ] ] [ -e <program> <args> ]\n" msgstr "" -#: cifsiostat.c:80 +#: pidstat.c:94 #, c-format msgid "" "Options are:\n" -"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -h ] [ -k | -m ] [ -t ] [ -V ]\n" +"[ -d ] [ -H ] [ -h ] [ -I ] [ -l ] [ -R ] [ -r ] [ -s ] [ -t ] [ -U " +"[ <username> ] ]\n" +"[ -u ] [ -V ] [ -v ] [ -w ] [ -C <command> ] [ -G <process_name> ]\n" +"[ -p { <pid> [,...] | SELF | ALL } ] [ -T { TASK | CHILD | ALL } ]\n" +"[ --dec={ 0 | 1 | 2 } ] [ --human ]\n" msgstr "" -#: common.c:78 +#: sadf_misc.c:831 #, c-format -msgid "sysstat version %s\n" +msgid "System activity data file: %s (%#x)\n" msgstr "" -#: mpstat.c:135 +#: sadf_misc.c:840 +#, c-format +msgid "Genuine sa datafile: %s (%x)\n" +msgstr "" + +#: sadf_misc.c:841 +msgid "no" +msgstr "" + +#: sadf_misc.c:841 +msgid "yes" +msgstr "" + +#: sadf_misc.c:844 +#, c-format +msgid "Host: " +msgstr "" + +#: sadf_misc.c:854 +#, c-format +msgid "File date: %s\n" +msgstr "" + +#: sadf_misc.c:857 +#, c-format +msgid "File time: " +msgstr "" + +#: sadf_misc.c:863 +#, c-format +msgid "File composition: (%d,%d,%d),(%d,%d,%d),(%d,%d,%d)\n" +msgstr "" + +#: sadf_misc.c:868 +#, c-format +msgid "Size of a long int: %d\n" +msgstr "" + +#: sadf_misc.c:870 +#, c-format +msgid "Number of activities in file: %u\n" +msgstr "" + +#: sadf_misc.c:873 +#, c-format +msgid "List of activities:\n" +msgstr "" + +#: sadf_misc.c:884 +msgid "Unknown activity" +msgstr "" + +#: sadf_misc.c:892 +#, c-format +msgid " \t[Unknown format]" +msgstr "" + +#: pr_stats.c:2609 pr_stats.c:2616 pr_stats.c:2721 pr_stats.c:2766 +msgid "Summary:" +msgstr "" + +#: count.c:169 +#, c-format +msgid "Cannot handle so many processors!\n" +msgstr "" + +#: iostat.c:93 #, c-format msgid "" "Options are:\n" -"[ -A ] [ -n ] [ -u ] [ -V ]\n" -"[ -I { SUM | CPU | SCPU | ALL } ] [ -N { <node_list> | ALL } ]\n" -"[ --dec={ 0 | 1 | 2 } ] [ -o JSON ] [ -P { <cpu_list> | ALL } ]\n" +"[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] " +"[ -z ]\n" +"[ -j { ID | LABEL | PATH | UUID | ... } ]\n" +"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -o JSON ]\n" +"[ [ -H ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]\n" +"[ <device> [...] | ALL ] [ --debuginfo ]\n" msgstr "" -#: mpstat.c:1632 sar.c:370 pidstat.c:2406 -msgid "Average:" +#: iostat.c:100 +#, c-format +msgid "" +"Options are:\n" +"[ -c ] [ -d ] [ -h ] [ -k | -m ] [ -N ] [ -s ] [ -t ] [ -V ] [ -x ] [ -y ] " +"[ -z ]\n" +"[ -j { ID | LABEL | PATH | UUID | ... } ]\n" +"[ --dec={ 0 | 1 | 2 } ] [ --human ] [ -o JSON ]\n" +"[ [ -H ] -g <group_name> ] [ -p [ <device> [,...] | ALL ] ]\n" +"[ <device> [...] | ALL ]\n" msgstr "" -#: sadf.c:91 +#: iostat.c:345 #, c-format -msgid "" -"Usage: %s [ options ] [ <interval> [ <count> ] ] [ <datafile> | -[0-9]+ ]\n" +msgid "Cannot find disk data\n" msgstr "" -#: sadf.c:94 +#: tapestat.c:103 #, c-format msgid "" "Options are:\n" -"[ -C ] [ -c | -d | -g | -j | -p | -r | -x ] [ -H ] [ -h ] [ -T | -t | -U ] " -"[ -V ]\n" -"[ -O <opts> [,...] ] [ -P { <cpu> [,...] | ALL } ]\n" -"[ --dev=<dev_list> ] [ --fs=<fs_list> ] [ --iface=<iface_list> ]\n" -"[ -s [ <hh:mm[:ss]> ] ] [ -e [ <hh:mm[:ss]> ] ]\n" -"[ -- <sar_options> ]\n" +"[ --human ] [ -k | -m ] [ -t ] [ -V ] [ -y ] [ -z ]\n" +msgstr "" + +#: tapestat.c:269 +#, c-format +msgid "No tape drives with statistics found\n" +msgstr "" + +#: common.c:78 +#, c-format +msgid "sysstat version %s\n" msgstr "" #: sar.c:117 @@ -341,11 +465,6 @@ msgid "Cannot find the data collector (%s)\n" msgstr "" -#: rd_stats.c:351 -#, c-format -msgid "Cannot read %s\n" -msgstr "" - #: sa_conv.c:98 #, c-format msgid "Cannot convert the format of this file\n" @@ -386,122 +505,3 @@ #, c-format msgid "File successfully converted to sysstat format version %s\n" msgstr "" - -#: pidstat.c:91 -#, c-format -msgid "" -"Usage: %s [ options ] [ <interval> [ <count> ] ] [ -e <program> <args> ]\n" -msgstr "" - -#: pidstat.c:94 -#, c-format -msgid "" -"Options are:\n" -"[ -d ] [ -H ] [ -h ] [ -I ] [ -l ] [ -R ] [ -r ] [ -s ] [ -t ] [ -U " -"[ <username> ] ]\n" -"[ -u ] [ -V ] [ -v ] [ -w ] [ -C <command> ] [ -G <process_name> ]\n" -"[ -p { <pid> [,...] | SELF | ALL } ] [ -T { TASK | CHILD | ALL } ]\n" -"[ --dec={ 0 | 1 | 2 } ] [ --human ]\n" -msgstr "" - -#: pidstat.c:244 sa_common.c:353 -#, c-format -msgid "Requested activities not available\n" -msgstr "" - -#: sadf_misc.c:831 -#, c-format -msgid "System activity data file: %s (%#x)\n" -msgstr "" - -#: sadf_misc.c:840 -#, c-format -msgid "Genuine sa datafile: %s (%x)\n" -msgstr "" - -#: sadf_misc.c:841 -msgid "no" -msgstr "" - -#: sadf_misc.c:841 -msgid "yes" -msgstr "" - -#: sadf_misc.c:844 -#, c-format -msgid "Host: " -msgstr "" - -#: sadf_misc.c:854 -#, c-format -msgid "File date: %s\n" -msgstr "" - -#: sadf_misc.c:857 -#, c-format -msgid "File time: " -msgstr "" - -#: sadf_misc.c:863 -#, c-format -msgid "File composition: (%d,%d,%d),(%d,%d,%d),(%d,%d,%d)\n" -msgstr "" - -#: sadf_misc.c:868 -#, c-format -msgid "Size of a long int: %d\n" -msgstr "" - -#: sadf_misc.c:870 -#, c-format -msgid "Number of activities in file: %u\n" -msgstr "" - -#: sadf_misc.c:873 -#, c-format -msgid "List of activities:\n" -msgstr "" - -#: sadf_misc.c:884 -msgid "Unknown activity" -msgstr "" - -#: sadf_misc.c:892 -#, c-format -msgid " \t[Unknown format]" -msgstr "" - -#: sa_common.c:297 -#, c-format -msgid "File created by sar/sadc from sysstat version %d.%d.%d" -msgstr "" - -#: sa_common.c:328 -#, c-format -msgid "Invalid system activity file: %s\n" -msgstr "" - -#: sa_common.c:336 -#, c-format -msgid "Current sysstat version cannot read the format of this file (%#x)\n" -msgstr "" - -#: sa_common.c:1390 -#, c-format -msgid "Error while reading system activity file: %s\n" -msgstr "" - -#: sa_common.c:1400 -#, c-format -msgid "End of system activity file unexpected\n" -msgstr "" - -#: sa_common.c:1692 -#, c-format -msgid "Please check if data collecting is enabled\n" -msgstr "" - -#: sa_common.c:2015 -#, c-format -msgid "Requested activities not available in file %s\n" -msgstr "" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/pr_stats.c new/sysstat-12.0.5/pr_stats.c --- old/sysstat-12.0.3/pr_stats.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/pr_stats.c 2019-05-31 08:28:49.000000000 +0200 @@ -218,8 +218,8 @@ * %irq, %soft, %guest, %gnice. */ else if (DISPLAY_CPU_ALL(a->opt_flags)) { - cprintf_pc(DISPLAY_UNIT(flags), 4, 9, 2, - 0.0, 0.0, 0.0, 100.0); + cprintf_pc(DISPLAY_UNIT(flags), 5, 9, 2, + 0.0, 0.0, 0.0, 0.0, 100.0); printf("\n"); } continue; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/rd_stats.c new/sysstat-12.0.5/rd_stats.c --- old/sysstat-12.0.3/rd_stats.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/rd_stats.c 2019-05-31 08:28:49.000000000 +0200 @@ -2429,9 +2429,9 @@ __nr_t read_filesystem(struct stats_filesystem *st_filesystem, __nr_t nr_alloc) { FILE *fp; - char line[512], fs_name[128], mountp[256]; + char line[512], fs_name[MAX_FS_LEN], mountp[256], type[128]; int skip = 0, skip_next = 0; - char *pos = 0; + char *pos = 0, *pos2 = 0; __nr_t fs_read = 0; struct stats_filesystem *st_filesystem_i; struct statvfs buf; @@ -2456,6 +2456,19 @@ if (pos == NULL) continue; + /* + * Find second field separator position, + * read filesystem type, + * if filesystem type is autofs, skip it + */ + pos2 = strchr(pos + 1, ' '); + if (pos2 == NULL) + continue; + + sscanf(pos2 + 1, "%127s", type); + if(strcmp(type, "autofs") == 0) + continue; + /* Read current filesystem name */ sscanf(line, "%127s", fs_name); /* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sa.h new/sysstat-12.0.5/sa.h --- old/sysstat-12.0.3/sa.h 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sa.h 2019-05-31 08:28:49.000000000 +0200 @@ -375,8 +375,13 @@ * * If the record header's type is R_COMMENT then we find only a comment * following the record_header structure. + * * If the record_header's type is R_RESTART then we find only the number of CPU * (of type __nr_t) of the machine following the record_header structure. + * This number is 1 for 1 CPU and not an SMP kernel (CPU "all"), + * 2 for 1 CPU and SMP kernel (CPU "all" and CPU 0), etc. + * Of course we display the real number of CPU (e.g. "1" for 1 CPU and SMP + * kernel) with the LINUX RESTART message. *************************************************************************** */ @@ -1293,8 +1298,8 @@ int check_disk_reg (struct activity *, int, int, int); void check_file_actlst - (int *, char *, struct activity * [], struct file_magic *, struct file_header *, - struct file_activity **, unsigned int [], int, int *, int *); + (int *, char *, struct activity * [], unsigned int, struct file_magic *, + struct file_header *, struct file_activity **, unsigned int [], int, int *, int *); int check_net_dev_reg (struct activity *, int, int, int); int check_net_edev_reg diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sa1.in new/sysstat-12.0.5/sa1.in --- old/sysstat-12.0.3/sa1.in 2018-10-13 09:28:35.000000000 +0200 +++ new/sysstat-12.0.5/sa1.in 2019-05-31 08:28:49.000000000 +0200 @@ -12,9 +12,12 @@ SADC_OPTIONS="" SA_DIR=@SA_DIR@ SYSCONFIG_DIR=@SYSCONFIG_DIR@ -umask 0022 +UMASK=0022 [ -r ${SYSCONFIG_DIR}/sysstat ] && . ${SYSCONFIG_DIR}/sysstat + +umask ${UMASK} + [ -d ${SA_DIR} ] || SA_DIR=@SA_DIR@ if [ ${HISTORY} -gt 28 ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sa2.in new/sysstat-12.0.5/sa2.in --- old/sysstat-12.0.3/sa2.in 2018-10-13 09:28:35.000000000 +0200 +++ new/sysstat-12.0.5/sa2.in 2019-05-31 08:28:49.000000000 +0200 @@ -6,7 +6,6 @@ #@(#) sa2: Write a daily report # S_TIME_FORMAT=ISO ; export S_TIME_FORMAT -umask 0022 prefix=@prefix@ exec_prefix=@exec_prefix@ SA_DIR=@SA_DIR@ @@ -14,10 +13,13 @@ HISTORY=@HISTORY@ COMPRESSAFTER=@COMPRESSAFTER@ ZIP="@ZIP@" +UMASK=0022 # Read configuration file, overriding variables set above [ -r ${SYSCONFIG_DIR}/sysstat ] && . ${SYSCONFIG_DIR}/sysstat +umask ${UMASK} + [ -d ${SA_DIR} ] || SA_DIR=@SA_DIR@ # if YESTERDAY=no then today's summary is generated diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sa_common.c new/sysstat-12.0.5/sa_common.c --- old/sysstat-12.0.3/sa_common.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sa_common.c 2019-05-31 08:28:49.000000000 +0200 @@ -1093,10 +1093,12 @@ * is that the disk has been unregistered and a new disk inserted. * If only one or two have decreased then the likelyhood * is that the counter has simply wrapped. + * Don't take into account a counter if its previous value was 0 + * (this may be a read-only device). */ if ((sdc->nr_ios < sdp->nr_ios) && - (sdc->rd_sect < sdp->rd_sect) && - (sdc->wr_sect < sdp->wr_sect)) + (!sdp->rd_sect || (sdc->rd_sect < sdp->rd_sect)) && + (!sdp->wr_sect || (sdc->wr_sect < sdp->wr_sect))) /* Same device registered again */ return -2; @@ -1768,6 +1770,7 @@ * IN: * @dfile Name of system activity data file. * @act Array of activities. + * @flags Flags for common options and system state. * @ignore Set to 1 if a true sysstat activity file but with a bad * format should not yield an error message. Used with * sadf -H (sadf -c doesn't call check_file_actlst() function). @@ -1785,7 +1788,7 @@ * @arch_64 TRUE if file's data come from a 64 bit machine. *************************************************************************** */ -void check_file_actlst(int *ifd, char *dfile, struct activity *act[], +void check_file_actlst(int *ifd, char *dfile, struct activity *act[], unsigned int flags, struct file_magic *file_magic, struct file_header *file_hdr, struct file_activity **file_actlst, unsigned int id_seq[], int ignore, int *endian_mismatch, int *arch_64) @@ -2011,7 +2014,7 @@ * NB: Error is ignored if we only want to display * datafile header (sadf -H). */ - if (!get_activity_nr(act, AO_SELECTED, COUNT_ACTIVITIES) && !ignore) { + if (!get_activity_nr(act, AO_SELECTED, COUNT_ACTIVITIES) && !DISPLAY_HDR_ONLY(flags)) { fprintf(stderr, _("Requested activities not available in file %s\n"), dfile); close(*ifd); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sadc.c new/sysstat-12.0.5/sadc.c --- old/sysstat-12.0.3/sadc.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sadc.c 2019-05-31 08:28:49.000000000 +0200 @@ -909,7 +909,7 @@ } if ((file_act[i].has_nr && (act[p]->f_count_index < 0)) || - (!file_act[i].has_nr && (act[p]->f_count_index >=0))) { + (!file_act[i].has_nr && (act[p]->f_count_index >= 0))) { #ifdef DEBUG fprintf(stderr, "%s: %s: has_nr=%d count_index=%d\n", __FUNCTION__, act[p]->name, file_act[i].has_nr, act[p]->f_count_index); @@ -942,8 +942,11 @@ * Since we are appending data to a file, set @nr_ini to the value of the file. * Stats saved in file will all be 0 for that activity if no items exist on * the machine. + * NB: We must preserve the value read for A_CPU when a LINUX RESTART is inserted. */ - act[p]->nr_ini = file_act[i].nr; + if ((act[p]->id != A_CPU) || !act[p]->nr_ini) { + act[p]->nr_ini = file_act[i].nr; + } /* * Force number of sub-items to that of the file, and reallocate structures. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sadf.c new/sysstat-12.0.5/sadf.c --- old/sysstat-12.0.3/sadf.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sadf.c 2019-05-31 08:28:49.000000000 +0200 @@ -1024,14 +1024,15 @@ (tm_start.use && (datecmp(loctime, &tm_start) < 0)) || (tm_end.use && (datecmp(loctime, &tm_end) >= 0)))); - /* Save the first stats collected. Used for example in next_slice() function */ - copy_structures(act, id_seq, record_hdr, 2, 0); - curr = 1; cnt = count; reset = TRUE; if (!eosaf) { + + /* Save the first stats collected. Used for example in next_slice() function */ + copy_structures(act, id_seq, record_hdr, 2, 0); + do { eosaf = read_next_sample(ifd, IGNORE_COMMENT | IGNORE_RESTART, curr, file, &rtype, tab, file_magic, file_actlst, @@ -1398,7 +1399,7 @@ /* Prepare file for reading and read its headers */ ignore = ACCEPT_BAD_FILE_FORMAT(fmt[f_position]->options); - check_file_actlst(&ifd, dfile, act, &file_magic, &file_hdr, + check_file_actlst(&ifd, dfile, act, flags, &file_magic, &file_hdr, &file_actlst, id_seq, ignore, &endian_mismatch, &arch_64); if (DISPLAY_HDR_ONLY(flags)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sadf_misc.c new/sysstat-12.0.5/sadf_misc.c --- old/sysstat-12.0.3/sadf_misc.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sadf_misc.c 2019-05-31 08:28:49.000000000 +0200 @@ -1081,7 +1081,9 @@ for (i = 0; i < a->nr[curr]; i++) { sfc = (struct stats_filesystem *) ((char *) a->buf[curr] + i * a->msize); - nr += add_list_item(&(a->item_list), sfc->fs_name, MAX_FS_LEN); + nr += add_list_item(&(a->item_list), + DISPLAY_MOUNT(a->opt_flags) ? sfc->mountp : sfc->fs_name, + MAX_FS_LEN); } return nr; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sar.c new/sysstat-12.0.5/sar.c --- old/sysstat-12.0.3/sar.c 2018-12-14 15:06:43.000000000 +0100 +++ new/sysstat-12.0.5/sar.c 2019-05-31 08:28:49.000000000 +0200 @@ -987,7 +987,7 @@ rows = get_win_height(); /* Read file headers and activity list */ - check_file_actlst(&ifd, from_file, act, &file_magic, &file_hdr, + check_file_actlst(&ifd, from_file, act, flags, &file_magic, &file_hdr, &file_actlst, id_seq, FALSE, &endian_mismatch, &arch_64); /* Perform required allocations */ @@ -1468,7 +1468,7 @@ /* 'sar' is equivalent to 'sar -f' */ if ((argc == 1) || - ((interval < 0) && !from_file[0] && !to_file[0])) { + (((interval < 0) || INTERVAL_SET(flags)) && !from_file[0] && !to_file[0])) { set_default_file(from_file, day_offset, -1); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sysstat-12.0.3.lsm new/sysstat-12.0.5/sysstat-12.0.3.lsm --- old/sysstat-12.0.3/sysstat-12.0.3.lsm 2018-12-14 15:10:30.000000000 +0100 +++ new/sysstat-12.0.5/sysstat-12.0.3.lsm 1970-01-01 01:00:00.000000000 +0100 @@ -1,35 +0,0 @@ -Begin4 -Title: sysstat - the sar, sadf, mpstat, iostat, tapestat, pidstat and cifsiostat commands for Linux -Version: 12.0.3 -Entered-date: 2018-12-14 -Description: The sysstat package contains the sar, sadf, mpstat, iostat, tapestat, - pidstat, cifsiostat and sa tools for Linux. - The sar command collects and reports system activity - information. - The information collected by sar can be saved in a file - in a binary format for future inspection. - The statistics reported by sar concern I/O transfer rates, - paging activity, process-related activities, interrupts, - network activity, memory and swap space utilization, CPU - utilization, kernel activities and TTY statistics, among - others. Both UP and SMP machines are fully supported. - The sadf command is used to display data collected by sar in various - formats (XML, database-friendly, etc.) and to draw graphs (SVG). - The mpstat command reports global and per-processor statistics. - The iostat command reports CPU utilization and I/O statistics - for disks. - The tapestat command reports statistics for tape drives connected - to the system. - The pidstat command reports statistics for Linux tasks (processes). - The cifsiostat command reports I/O statistics for CIFS filesystems. - NB: Send bugs, patches, suggestions and/or questions to - (sysstat [at] orange.fr). - URL: http://pagesperso-orange.fr/sebastien.godard/ -Keywords: system administration, system monitoring, sar, sadf, iostat, mpstat, tapestat, pidstat, system accounting, performance, tuning -Author: [email protected] (Sebastien Godard) -Maintained-by: [email protected] (Sebastien Godard) -Primary-site: http://pagesperso-orange.fr/sebastien.godard/ - 589kiB sysstat-12.0.3.tar.xz -Alternate-site: -Copying-policy: GPL -End diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sysstat-12.0.3.spec new/sysstat-12.0.5/sysstat-12.0.3.spec --- old/sysstat-12.0.3/sysstat-12.0.3.spec 2018-12-14 15:09:22.000000000 +0100 +++ new/sysstat-12.0.5/sysstat-12.0.3.spec 1970-01-01 01:00:00.000000000 +0100 @@ -1,83 +0,0 @@ -Summary: SAR, SADF, MPSTAT, IOSTAT, TAPESTAT, PIDSTAT and CIFSIOSTAT for Linux -Name: sysstat -Version: 12.0.3 -Release: 1 -License: GPL -Group: Applications/System -Source0: %{name}-%{version}.tar.gz -URL: http://pagesperso-orange.fr/sebastien.godard/ -Packager: Sebastien Godard <sysstat _at_ orange.fr> -BuildRoot: %{_tmppath}/%{name}-%{version}-root-%(id -u -n) -Requires: gettext - -%description -The sysstat package contains the sar, sadf, mpstat, iostat, tapestat, -pidstat, cifsiostat and sa tools for Linux. -The sar command collects and reports system activity information. -The information collected by sar can be saved in a file in a binary -format for future inspection. The statistics reported by sar concern -I/O transfer rates, paging activity, process-related activities, -interrupts, network activity, memory and swap space utilization, CPU -utilization, kernel activities and TTY statistics, among others. Both -UP and SMP machines are fully supported. -The sadf command may be used to display data collected by sar in -various formats (CSV, XML, etc.) and to draw graphs (SVG). -The iostat command reports CPU utilization and I/O statistics for disks. -The tapestat command reports statistics for tapes connected to the system. -The mpstat command reports global and per-processor statistics. -The pidstat command reports statistics for Linux tasks (processes). -The cifsiostat command reports I/O statistics for CIFS filesystems. - -%define debug_package %{nil} - -%prep -%setup - -%build -# To include cron installation, add options --enable-install-cron and --enable-copy-only -./configure --prefix=%{_prefix} \ - --disable-file-attr \ - sa_lib_dir=%{_libdir}/sa \ - --mandir=%{_mandir} \ - DESTDIR=$RPM_BUILD_ROOT -make - -%install -rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/var/log/sa - -make install - -mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d -install -m 755 sysstat $RPM_BUILD_ROOT/etc/rc.d/init.d/sysstat -mkdir -p $RPM_BUILD_ROOT/etc/sysconfig -install -m 644 sysstat.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/sysstat -install -m 644 sysstat.ioconf $RPM_BUILD_ROOT/etc/sysconfig/sysstat.ioconf -mkdir -p $RPM_BUILD_ROOT/etc/cron.d -install -m 644 cron/sysstat.crond.sample $RPM_BUILD_ROOT/etc/cron.d/sysstat -mkdir -p $RPM_BUILD_ROOT/etc/rc2.d -cd $RPM_BUILD_ROOT/etc/rc2.d && ln -sf ../init.d/sysstat S01sysstat -mkdir -p $RPM_BUILD_ROOT/etc/rc3.d -cd $RPM_BUILD_ROOT/etc/rc3.d && ln -sf ../init.d/sysstat S01sysstat -mkdir -p $RPM_BUILD_ROOT/etc/rc5.d -cd $RPM_BUILD_ROOT/etc/rc5.d && ln -sf ../init.d/sysstat S01sysstat - -%clean -rm -rf $RPM_BUILD_ROOT - -%files -%defattr(644,root,root,755) -%doc %{_datadir}/doc/sysstat-%{version}/* -%attr(755,root,root) %{_bindir}/* -%attr(755,root,root) %{_libdir}/sa/* -%attr(644,root,root) %{_mandir}/man*/* -%attr(644,root,root) %{_datadir}/locale/*/LC_MESSAGES/sysstat.mo -%attr(755,root,root) %dir /var/log/sa -%attr(755,root,root) /etc/rc.d/init.d/sysstat -%attr(644,root,root) /etc/sysconfig/sysstat -%attr(644,root,root) /etc/sysconfig/sysstat.ioconf -/etc/rc2.d/S01sysstat -/etc/rc3.d/S01sysstat -/etc/rc5.d/S01sysstat -%config(noreplace) %attr(0644,root,root) /etc/cron.d/sysstat - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sysstat-12.0.5.lsm new/sysstat-12.0.5/sysstat-12.0.5.lsm --- old/sysstat-12.0.3/sysstat-12.0.5.lsm 1970-01-01 01:00:00.000000000 +0100 +++ new/sysstat-12.0.5/sysstat-12.0.5.lsm 2019-05-31 08:44:14.000000000 +0200 @@ -0,0 +1,35 @@ +Begin4 +Title: sysstat - the sar, sadf, mpstat, iostat, tapestat, pidstat and cifsiostat commands for Linux +Version: 12.0.5 +Entered-date: 2019-05-31 +Description: The sysstat package contains the sar, sadf, mpstat, iostat, tapestat, + pidstat, cifsiostat and sa tools for Linux. + The sar command collects and reports system activity + information. + The information collected by sar can be saved in a file + in a binary format for future inspection. + The statistics reported by sar concern I/O transfer rates, + paging activity, process-related activities, interrupts, + network activity, memory and swap space utilization, CPU + utilization, kernel activities and TTY statistics, among + others. Both UP and SMP machines are fully supported. + The sadf command is used to display data collected by sar in various + formats (XML, database-friendly, etc.) and to draw graphs (SVG). + The mpstat command reports global and per-processor statistics. + The iostat command reports CPU utilization and I/O statistics + for disks. + The tapestat command reports statistics for tape drives connected + to the system. + The pidstat command reports statistics for Linux tasks (processes). + The cifsiostat command reports I/O statistics for CIFS filesystems. + NB: Send bugs, patches, suggestions and/or questions to + (sysstat [at] orange.fr). + URL: http://pagesperso-orange.fr/sebastien.godard/ +Keywords: system administration, system monitoring, sar, sadf, iostat, mpstat, tapestat, pidstat, system accounting, performance, tuning +Author: [email protected] (Sebastien Godard) +Maintained-by: [email protected] (Sebastien Godard) +Primary-site: http://pagesperso-orange.fr/sebastien.godard/ + 536kiB sysstat-12.0.5.tar.xz +Alternate-site: +Copying-policy: GPL +End diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sysstat-12.0.5.spec new/sysstat-12.0.5/sysstat-12.0.5.spec --- old/sysstat-12.0.3/sysstat-12.0.5.spec 1970-01-01 01:00:00.000000000 +0100 +++ new/sysstat-12.0.5/sysstat-12.0.5.spec 2019-05-31 08:42:48.000000000 +0200 @@ -0,0 +1,83 @@ +Summary: SAR, SADF, MPSTAT, IOSTAT, TAPESTAT, PIDSTAT and CIFSIOSTAT for Linux +Name: sysstat +Version: 12.0.5 +Release: 1 +License: GPL +Group: Applications/System +Source0: %{name}-%{version}.tar.gz +URL: http://pagesperso-orange.fr/sebastien.godard/ +Packager: Sebastien Godard <sysstat _at_ orange.fr> +BuildRoot: %{_tmppath}/%{name}-%{version}-root-%(id -u -n) +Requires: gettext + +%description +The sysstat package contains the sar, sadf, mpstat, iostat, tapestat, +pidstat, cifsiostat and sa tools for Linux. +The sar command collects and reports system activity information. +The information collected by sar can be saved in a file in a binary +format for future inspection. The statistics reported by sar concern +I/O transfer rates, paging activity, process-related activities, +interrupts, network activity, memory and swap space utilization, CPU +utilization, kernel activities and TTY statistics, among others. Both +UP and SMP machines are fully supported. +The sadf command may be used to display data collected by sar in +various formats (CSV, XML, etc.) and to draw graphs (SVG). +The iostat command reports CPU utilization and I/O statistics for disks. +The tapestat command reports statistics for tapes connected to the system. +The mpstat command reports global and per-processor statistics. +The pidstat command reports statistics for Linux tasks (processes). +The cifsiostat command reports I/O statistics for CIFS filesystems. + +%define debug_package %{nil} + +%prep +%setup + +%build +# To include cron installation, add options --enable-install-cron and --enable-copy-only +./configure --prefix=%{_prefix} \ + --disable-file-attr \ + sa_lib_dir=%{_libdir}/sa \ + --mandir=%{_mandir} \ + DESTDIR=$RPM_BUILD_ROOT +make + +%install +rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT/var/log/sa + +make install + +mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d +install -m 755 sysstat $RPM_BUILD_ROOT/etc/rc.d/init.d/sysstat +mkdir -p $RPM_BUILD_ROOT/etc/sysconfig +install -m 644 sysstat.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/sysstat +install -m 644 sysstat.ioconf $RPM_BUILD_ROOT/etc/sysconfig/sysstat.ioconf +mkdir -p $RPM_BUILD_ROOT/etc/cron.d +install -m 644 cron/sysstat.crond.sample $RPM_BUILD_ROOT/etc/cron.d/sysstat +mkdir -p $RPM_BUILD_ROOT/etc/rc2.d +cd $RPM_BUILD_ROOT/etc/rc2.d && ln -sf ../init.d/sysstat S01sysstat +mkdir -p $RPM_BUILD_ROOT/etc/rc3.d +cd $RPM_BUILD_ROOT/etc/rc3.d && ln -sf ../init.d/sysstat S01sysstat +mkdir -p $RPM_BUILD_ROOT/etc/rc5.d +cd $RPM_BUILD_ROOT/etc/rc5.d && ln -sf ../init.d/sysstat S01sysstat + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(644,root,root,755) +%doc %{_datadir}/doc/sysstat-%{version}/* +%attr(755,root,root) %{_bindir}/* +%attr(755,root,root) %{_libdir}/sa/* +%attr(644,root,root) %{_mandir}/man*/* +%attr(644,root,root) %{_datadir}/locale/*/LC_MESSAGES/sysstat.mo +%attr(755,root,root) %dir /var/log/sa +%attr(755,root,root) /etc/rc.d/init.d/sysstat +%attr(644,root,root) /etc/sysconfig/sysstat +%attr(644,root,root) /etc/sysconfig/sysstat.ioconf +/etc/rc2.d/S01sysstat +/etc/rc3.d/S01sysstat +/etc/rc5.d/S01sysstat +%config(noreplace) %attr(0644,root,root) /etc/cron.d/sysstat + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/sysstat-12.0.3/sysstat.sysconfig.in new/sysstat-12.0.5/sysstat.sysconfig.in --- old/sysstat-12.0.3/sysstat.sysconfig.in 2017-11-13 15:06:01.000000000 +0100 +++ new/sysstat-12.0.5/sysstat.sysconfig.in 2019-05-10 08:02:37.000000000 +0200 @@ -26,3 +26,10 @@ # By default sa2 script generates reports files (the so called sarDD files). # Set this variable to false to disable reports generation. #REPORTS=false + +# The sa1 and sa2 scripts generate system activity data and report files in +# the @SA_DIR@ directory. By default the files are created with umask 0022 +# and are therefore readable for all users. Change this variable to restrict +# the permissions on the files (e.g. use 0027 to adhere to more strict +# security standards). +UMASK=0022 Binary files old/sysstat-12.0.3/tmp/sadc and new/sysstat-12.0.5/tmp/sadc differ Binary files old/sysstat-12.0.3/tmp/sar and new/sysstat-12.0.5/tmp/sar differ
