Hello community,

here is the log from the commit of package iprutils for openSUSE:Factory 
checked in at 2018-06-13 15:15:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/iprutils (Old)
 and      /work/SRC/openSUSE:Factory/.iprutils.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "iprutils"

Wed Jun 13 15:15:18 2018 rev:61 rq:614471 version:2.4.16

Changes:
--------
--- /work/SRC/openSUSE:Factory/iprutils/iprutils.changes        2018-03-26 
13:06:59.644868022 +0200
+++ /work/SRC/openSUSE:Factory/.iprutils.new/iprutils.changes   2018-06-13 
15:15:27.345293762 +0200
@@ -1,0 +2,13 @@
+Tue May 29 06:27:01 UTC 2018 - [email protected]
+
+- version update to 2.4.16 (fate#325179)
+  - Speedup for show-details
+  - Improve error messages when creating the arrays with RI and non-RI disks
+  - Fix download microcode to all devices
+  - Fix microcode image sorting on little endian systems
+
+- removed patches:
+  * iprutils-Fix-download-microcode-to-all-devices.patch
+  * iprutils-Fix-microcode-image-sorting-on-little-endian-systems.patch
+
+-------------------------------------------------------------------

Old:
----
  iprutils-2.4.15.1.tar.gz
  iprutils-Fix-download-microcode-to-all-devices.patch
  iprutils-Fix-microcode-image-sorting-on-little-endian-systems.patch

New:
----
  iprutils-2.4.16.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ iprutils.spec ++++++
--- /var/tmp/diff_new_pack.eul5sf/_old  2018-06-13 15:15:28.225261657 +0200
+++ /var/tmp/diff_new_pack.eul5sf/_new  2018-06-13 15:15:28.229261511 +0200
@@ -20,7 +20,7 @@
 Name:           iprutils
 # NOTE: package's changelog is hidden in % changelog section
 # in file iprutils/spec/iprutils.spec
-Version:        2.4.15
+Version:        2.4.16
 Release:        0
 Summary:        Utilities for the IBM Power Linux RAID Adapters
 License:        CPL-1.0
@@ -28,8 +28,6 @@
 Url:            https://sourceforge.net/projects/iprdd
 Source0:        
https://sourceforge.net/projects/iprdd/files/iprutils%%20for%%202.6%%20kernels/%{version}/%{name}-%{version}.%{revision}.tar.gz
 Patch0:         iprutils.fix_ncurses_cflags_var.patch
-Patch1:         iprutils-Fix-download-microcode-to-all-devices.patch
-Patch2:         
iprutils-Fix-microcode-image-sorting-on-little-endian-systems.patch
 BuildRequires:  libtool
 BuildRequires:  pkgconfig
 BuildRequires:  systemd-rpm-macros
@@ -51,8 +49,6 @@
 %prep
 %setup -q -n %{name}-%{version}.%{revision}
 %patch0 -p2
-%patch1 -p1
-%patch2 -p1
 
 %build
 export CPPFLAGS="$(pkg-config ncurses form --cflags)"

++++++ iprutils-2.4.15.1.tar.gz -> iprutils-2.4.16.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/configure 
new/iprutils-2.4.16.1/configure
--- old/iprutils-2.4.15.1/configure     2017-06-19 15:37:20.000000000 +0200
+++ new/iprutils-2.4.16.1/configure     2018-05-08 17:22:14.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for iprutils 2.4.15.1.
+# Generated by GNU Autoconf 2.69 for iprutils 2.4.16.1.
 #
 # Report bugs to <[email protected]>.
 #
@@ -590,8 +590,8 @@
 # Identity of this package.
 PACKAGE_NAME='iprutils'
 PACKAGE_TARNAME='iprutils'
-PACKAGE_VERSION='2.4.15.1'
-PACKAGE_STRING='iprutils 2.4.15.1'
+PACKAGE_VERSION='2.4.16.1'
+PACKAGE_STRING='iprutils 2.4.16.1'
 PACKAGE_BUGREPORT='[email protected]'
 PACKAGE_URL=''
 
@@ -1337,7 +1337,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 iprutils 2.4.15.1 to adapt to many kinds of systems.
+\`configure' configures iprutils 2.4.16.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1407,7 +1407,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of iprutils 2.4.15.1:";;
+     short | recursive ) echo "Configuration of iprutils 2.4.16.1:";;
    esac
   cat <<\_ACEOF
 
@@ -1518,7 +1518,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-iprutils configure 2.4.15.1
+iprutils configure 2.4.16.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -1995,7 +1995,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by iprutils $as_me 2.4.15.1, which was
+It was created by iprutils $as_me 2.4.16.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2859,7 +2859,7 @@
 
 # Define the identity of the package.
  PACKAGE='iprutils'
- VERSION='2.4.15.1'
+ VERSION='2.4.16.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -13037,7 +13037,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by iprutils $as_me 2.4.15.1, which was
+This file was extended by iprutils $as_me 2.4.16.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -13094,7 +13094,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; 
s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-iprutils config.status 2.4.15.1
+iprutils config.status 2.4.16.1
 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/iprutils-2.4.15.1/configure.ac 
new/iprutils-2.4.16.1/configure.ac
--- old/iprutils-2.4.15.1/configure.ac  2017-06-19 15:37:02.000000000 +0200
+++ new/iprutils-2.4.16.1/configure.ac  2018-05-01 22:18:46.000000000 +0200
@@ -10,7 +10,7 @@
 AC_PREREQ([2.63])
 # For RC releases, version should be set to 2.4.10.0.rc1, 2.4.10.0.rc2, etc.
 # For GA releases, version should be set to 2.4.10.1, 2.4.10.2, etc.
-AC_INIT([iprutils], [2.4.15.1], [[email protected]])
+AC_INIT([iprutils], [2.4.16.1], [[email protected]])
 
 AM_INIT_AUTOMAKE([1.9 foreign])
 AC_CONFIG_MACRO_DIR([build-aux])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/iprconfig.c 
new/iprutils-2.4.16.1/iprconfig.c
--- old/iprutils-2.4.15.1/iprconfig.c   2017-04-19 17:55:24.000000000 +0200
+++ new/iprutils-2.4.16.1/iprconfig.c   2018-04-25 23:31:46.000000000 +0200
@@ -4102,6 +4102,7 @@
        int header_lines;
        int toggle = 0;
        struct screen_output *s_out;
+       int is_ri_count = 0, non_ri_count = 0;
 
        rc = RC_SUCCESS;
 
@@ -4113,12 +4114,24 @@
                        print_dev(k, cur_raid_cmd->dev, buffer, "1", k);
 
                        for_each_af_dasd(ioa, dev) {
-                               if (dev->dev_rcd->issue_cmd)
+                               if (dev->dev_rcd->issue_cmd) {
                                        print_dev(k, dev, buffer, "1", k);
+                                       if (dev->block_dev_class & IPR_SSD) {
+                                               if (dev->read_intensive & 
IPR_RI)
+                                                       is_ri_count++;
+                                               else
+                                                       non_ri_count++;
+                                       }
+                               }
                        }
                }
        }
 
+       if (is_ri_count > 0 && non_ri_count > 0) {
+               rc = RC_95_Mixed_RISSD_SSDs;
+               return rc;
+       }
+
        toggle_field = 0;
 
        do {
@@ -11842,7 +11855,7 @@
                if (!ioa->ioa.scsi_dev_data || ioa->ioa_dead)
                        continue;
 
-               for_each_dev (ioa, dev) {
+               for_ioa_and_each_dev (ioa, dev) {
                        if (ipr_is_volume_set(dev))
                                continue;
 
@@ -14115,6 +14128,7 @@
 {
        int i, num_devs = 0, ssd_num_devs = 0, rc, prot_level;
        int non_4k_count = 0, is_4k_count = 0;
+       int non_ri_count = 0, is_ri_count = 0;
        int next_raid_level, next_stripe_size, next_qdepth, next_label;
        char *raid_level = IPR_DEFAULT_RAID_LVL;
        char label[8];
@@ -14210,6 +14224,12 @@
                        is_4k_count++;
                else
                        non_4k_count++;
+
+               if (dev->block_dev_class & IPR_SSD)
+                       if (dev->read_intensive & IPR_RI)
+                               is_ri_count++;
+                       else
+                               non_ri_count++;
        }
 
        if (is_4k_count > 0 && non_4k_count > 0) {
@@ -14217,6 +14237,11 @@
                return -EINVAL;
        }
 
+       if (is_ri_count > 0 && non_ri_count > 0) {
+               syslog(LOG_ERR, _("SSD disks and RI SSD disks can not be mixed 
in an array.\n"));
+               return -EINVAL;
+       }
+
        if (!ioa) {
                syslog(LOG_ERR, _("No valid devices specified.\n"));
                return -EINVAL;
@@ -15754,7 +15779,7 @@
        for_each_ioa(ioa) {
                if (!ioa->ioa.scsi_dev_data)
                        continue;
-               for_each_dev(ioa, dev) {
+               for_ioa_and_each_dev(ioa, dev) {
                        if (ipr_is_volume_set(dev))
                                continue;
 
@@ -19408,11 +19433,15 @@
 static int non_intenactive_cmd(char *cmd, char **args, int num_args)
 {
        int rc, i;
+       int show_details = 0;
 
        exit_func = cmdline_exit_func;
        closelog();
        openlog("iprconfig", LOG_PERROR | LOG_PID | LOG_CONS, LOG_USER);
-       check_current_config(false);
+       if (!strcmp("show-details", cmd))
+               show_details = 1;
+
+       __check_current_config(false, show_details);
 
        for (i = 0; i < ARRAY_SIZE(command); i++) {
                if (strcmp(cmd, command[i].cmd) != 0)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/iprconfig.h 
new/iprutils-2.4.16.1/iprconfig.h
--- old/iprutils-2.4.15.1/iprconfig.h   2016-04-05 14:11:35.000000000 +0200
+++ new/iprutils-2.4.16.1/iprconfig.h   2018-04-25 23:31:46.000000000 +0200
@@ -1717,6 +1717,7 @@
        /* 92 */ __("Create disk array failed - can not build with read 
intensive disks only."),
        /* 93 */ __("All devices up to date"),
        /* 94 */ __("Temporary log file creation failed: %s"),
+       /* 95 */ __("Create disk array failed - can not mix SSDs and RI SSDs."),
 
       /* NOTE:  127 maximum limit */
 };
@@ -1818,6 +1819,7 @@
        RC_92_UNSUPT_REQ_BLK_DEV_CLASS,
        RC_93_All_Up_To_Date,
        RC_94_Tmp_Log_Fail,
+       RC_95_Mixed_RISSD_SSDs,
 
        /* NOTE:  127 maximum limit */
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/iprlib.c 
new/iprutils-2.4.16.1/iprlib.c
--- old/iprutils-2.4.15.1/iprlib.c      2017-06-16 23:10:01.000000000 +0200
+++ new/iprutils-2.4.16.1/iprlib.c      2018-04-25 23:27:18.000000000 +0200
@@ -6552,13 +6552,14 @@
 }
 
 /**
- * check_current_config - populates the ioa configuration data
+ * __check_current_config - populates the ioa configuration data
  * @allow_rebuild_refresh:     allow_rebuild_refresh flag
+ * @device_details_only:       Skip commands not needed for show-details
  *
  * Returns:
  *   nothing
  **/
-void check_current_config(bool allow_rebuild_refresh)
+void __check_current_config(bool allow_rebuild_refresh, bool 
device_details_only)
 {
        struct scsi_dev_data *scsi_dev_data;
        int num_sg_devices, rc, device_count, j, k;
@@ -6695,7 +6696,7 @@
 
                                /* Send Test Unit Ready to start device if its 
a volume set */
                                /* xxx TODO try to remove this */
-                               if (!ipr_fast && 
ipr_is_volume_set(&ioa->dev[device_count]))
+                               if (!ipr_fast && 
ipr_is_volume_set(&ioa->dev[device_count]) && !device_details_only)
                                        
__ipr_test_unit_ready(&ioa->dev[device_count], &sense_data);
 
                                device_count++;
@@ -6743,7 +6744,7 @@
                        for_each_ra(ra, dev)
                                memcpy(ra, &res_addr, sizeof(*ra));
 
-                       if (ipr_is_gscsi(dev) || ipr_is_af_dasd_device(dev))
+                       if (ipr_is_gscsi(dev) || ipr_is_af_dasd_device(dev) && 
!device_details_only)
                                init_inquiry_c7(dev);
 
                        if (!dev->qac_entry)
@@ -6842,6 +6843,11 @@
         }
 }
 
+void check_current_config(bool allow_rebuild_refresh)
+{
+       __check_current_config(allow_rebuild_refresh, 0);
+}
+
 /**
  * num_devices_opens - return usage count (number of opens) for a given device
  * @host_num:          host number
@@ -8369,8 +8375,11 @@
        struct ipr_fw_images *first = (struct ipr_fw_images *)parm1;
        struct ipr_fw_images *second = (struct ipr_fw_images *)parm2;
 
-       return memcmp(&second->version, &first->version,
-                     sizeof(second->version));
+       if (first->version < second->version)
+               return 1;
+       if (second->version > first->version)
+               return -1;
+       return 0;
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/iprlib.h 
new/iprutils-2.4.16.1/iprlib.h
--- old/iprutils-2.4.15.1/iprlib.h      2017-06-16 23:10:01.000000000 +0200
+++ new/iprutils-2.4.16.1/iprlib.h      2018-05-01 20:08:37.000000000 +0200
@@ -1594,6 +1594,10 @@
 
 #define for_each_dev(i, d) for (d = (i)->dev; (d - (i)->dev) < 
(i)->num_devices; d++)
 
+#define for_ioa_and_each_dev(i, d) for (d = &((i)->ioa); \
+                                       (d == &((i)->ioa)) || ((d - (i)->dev) < 
(i)->num_devices); \
+                                       d = (d == &((i)->ioa)) ? (i)->dev : d + 
1)
+
 #define for_each_hotplug_dev(i, d) \
       for_each_dev(i, d) \
            if (ipr_is_af_dasd_device(d) || ipr_is_gscsi(d))
@@ -2811,6 +2815,7 @@
 int set_ha_mode(struct ipr_ioa *, int);
 int set_preferred_primary(struct ipr_ioa *, int);
 void check_current_config(bool);
+void __check_current_config(bool, bool);
 int num_device_opens(int, int, int, int);
 int open_and_lock(char *);
 int tool_init(int);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/iprutils-2.4.15.1/spec/iprutils.spec 
new/iprutils-2.4.16.1/spec/iprutils.spec
--- old/iprutils-2.4.15.1/spec/iprutils.spec    2017-06-19 15:37:02.000000000 
+0200
+++ new/iprutils-2.4.16.1/spec/iprutils.spec    2018-05-01 22:22:00.000000000 
+0200
@@ -1,6 +1,6 @@
 Summary: Utilities for the IBM Power Linux RAID adapters
 Name: iprutils
-Version: 2.4.15
+Version: 2.4.16
 # For RC releases, release_prefix should be set to 0.rc1, 0.rc2, etc.
 # For GA releases, release_prefix should be set to 1, 2, 3, etc.
 %define release_prefix 1
@@ -322,6 +322,11 @@
 %endif #WITH_STATIC
 
 %changelog
+* Tue May 1 2018 Brian King <[email protected]> 2.4.16
+- Speedup for show-details 
+- Improve error messages when creating the arrays with RI and non-RI disks
+- Fix download microcode to all devices
+- Fix microcode image sorting on little endian systems
 * Mon Jun 19 2017 Brian King <[email protected]> 2.4.15
 - Released iprutils 2.4.15
 - Enable write cache policy for JBODs


Reply via email to