libdmmp0_2_0-0.9.0+119+suse.308c007-150400.4.16.1 >  A d9p9|"wp]u~׹ƭ"CzJL\xK(~6ȴ &uE0ƙ=Ke!"cdasho'm,ieA)Ls0%5YltE3V/1^z͠hXh\ [q?)2P~w~fPaE}M[6pI.{5E~MO%6nmkX?It1MQ%­ٖ] ʨ@ʹSl8>p@d?Td& 4 N  =CLX ^ d p  "`l(89T:M>@FGHIXY\8]D^jbcVdefluv wxy zPClibdmmp0_2_00.9.0+119+suse.308c007150400.4.16.1C API for multipath-toolsThis library enables the use of libmultipath commands from C code.dibs-arm-2SUSE Linux Enterprise 15SUSE LLC GPL-3.0-or-laterhttps://www.suse.com/System/Librarieshttp://christophe.varoqui.free.fr/linuxaarch64MA큤dddKdc5a4abfe4b1bd5fadc1f83b5fe34ac02e592e2672848f9a11584689e5468d2e3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986rootrootrootrootrootrootmultipath-tools-0.9.0+119+suse.308c007-150400.4.16.1.src.rpmlibdmmp.so.0.2.0()(64bit)libdmmp0_2_0libdmmp0_2_0(aarch-64)@@@@@@@@@    /sbin/ldconfig/sbin/ldconfigld-linux-aarch64.so.1()(64bit)ld-linux-aarch64.so.1(GLIBC_2.17)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libjson-c.so.3()(64bit)libmpathcmd.so.0()(64bit)libmpathcmd.so.0(LIBMPATHCMD_1.0.0)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)multipath-toolsrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3d ddac@c6@c6@cbγbγb{@bzSby@bX bA@b @b bar@a+@a@aa@aI@a;Ha^a @`[`@`g@`e`e`S@`KW`H`#__$_cO_a@_a@_Z@_G@_FN_?@_>e^@^(@^^>@^>@^I^C^ P@]4@]o@]g@]-@]G@] ] \8\@\\\\\~d\~d\8@\5@\4\@\@\@[@[@[@[:[6@[0@[0@ZJ@ZJ@Z̧@Z̧@Z̧@Za@ZZZI@ZZZZZp^@Zk@ZaZ]@ZWQZtimeout for updating persistent reservations (gh#opensvc/multipath-tools#45) * libmultipath: is_path_valid(): check if device is in use (bsc#1203141) (added libmount dependency) * libmultipath: orphan paths if coalesce_paths frees newmp (bsc#1207546) * multipathd: handle no active paths in update_map_pr (bsc#1207546) * multipathd: make pr registration consistent (bsc#1207546) * multipath.conf(5): improve documentation of dev_loss_tmo (bsc#1207546) * libmpathpersist: fix command keyword ordering (bsc#1207546, bsc#1209345) * libmultipath: fix 'show paths format' failure * Use "queue_mode bio" for NVMeoF/TCP devices * minor upstream bug fixes * man page fixes * hwtable fixes * github workflow adaptations from Factory / SLE15-SP5- Fix "rpm --verify" (bsc#1207232)- Use %tmpfiles_create macro for tmpfiles.d file- Update to version 0.9.0+62+suse.3e048d4: * Fix multipathd authorization bypass and symlink attack (bsc#1202739 CVE-2022-41973 CVE-2022-41974) * add multipath-dracut.conf: dracut config file to install tmpfiles.d/multipath.conf in initramfs- Update to version 0.9.0+55+suse.33d8854: * Avoid linking to libreadline to avoid licensing issue (bsc#1202616)- Update to version 0.9.0+39+suse.51a2ab1: Upstream bug fixes: * libmultipath: fix find_multipaths_timeout for unknown hardware (boo#1201483) * multipath-tools: fix "multipath -ll" for Native NVME Multipath devices (boo#1201483)- Update to version 0.9.0+33+suse.fdc6686 * multipath.conf: add support for "protocol" subsection in "overrides" section to set certain config options by protocol. * Removed the previously deprecated options getuid_callout, config_dir, multipath_dir, pg_timeout * hwable fixes and additions * multipath.conf(5): add disclaimer about vendor support * libmultipath, kpartx: fix callers of dm_get_next_target() * Change built-in defaults for NVMe: group by prio, and immediate failback * Allow compilation with -D_FORTIFY_SOURCE=3- Update to version 0.8.9+90+suse.71a70fb: * support overriding -D_FORTIFY_SOURCE in OPTFLAGS * add -U_FORTIFY_SOURCE to optflags to avoid compilation errors on old distros- Update to version 0.8.9+87+suse.a1eb122: * add ability to autodetect support for -D_FORTIFY_SOURCE=3- Update to version 0.8.9+85+suse.a9da21c: * This is a pre-release of multipath-tools 0.9.0 * multipath.conf: add "protocol" subsection in "overrides" section This allows to set "dev_loss_tmo", "fast_io_fail_tmo", and "eh_deadline" on a per-protocol basis rather than per storage * multipath.conf: drop support for deprecated options: getuid_callout, pg_timeout, config_dir, multipath_dir * multipathd: don't switch to DAEMON_IDLE during startup (bsc#1199346, bsc#1197570) * multipathd: avoid delays during uevent processing (bsc#1199347) * Fixes for minor issues reported by coverity * Fix for memory leak with uid_attrs * Fix possibility to redefine -D_FORTIFY_SOURCE macro. * Updates for built in hardware db- Update to version 0.8.9+42+suse.45974f11: * Logging improvements * Fix busy loop with delayed_reconfigure (bsc#1199342) * multipathd: use remove_map_callback for delayed reconfigure * multipathd: Don't keep starting TUR threads, if they always hang. (bsc#1199345) * Fix handling of path addition in read-only arrays on NVMe * Updates of built-in hardware database - Update to upstream 0.8.9 * libmultipath: only warn once about unsupported dev_loss_tmo * Otherwise code-identical to 0.8.8+64- If multipath-tools is newly installed, load dm-multipath (bsc#1196898)- Update to version 0.8.8+64+suse.f265f7e0: * libmultipath: fix printing native nvme multipath topology (bsc#1196011) * libmultipath: add %L path wildcard for 64-bit hex LUN * libmultipath: support host adapter name lookup for s390x ccw bus- Update to version 0.8.8+60+suse.4c5922cb: * multipathd: add suppport for FC Fabric Performance Impact Notifications (FPIN) (bsc#1195506)- Version 0.8.8+57+suse.dfb672fe * kpartx.rules: skip MD devices (bsc#1195644) * libmultipath: hwtable: use ALUA for all LIO targets (bsc#1195649) * multipathd.service: drop ExecStartPre for loading dm-multipath (bsc#1195397)- Version 0.8.8+45+suse.628d603e * fix handling of historical-service-time path selector (bsc#1195425) * fix marking multipath devices as failed prematurely on startup (bsc#1195426) * multipathd.service: remove LimitCORE=infinity directive This should only be enabled for debugging. * multipathd.service: don't load scsi_dh modules (bsc#1195397) This is done via modules-load.d functionality on (open)SUSE - Upstream fixes: * Fix claiming of paths with "find_multipaths strict" * Avoid unnecessary read-only reloads- Version 0.8.8+13+suse.79c3556f * code-wise identical to 0.8.8+38+suse.2bdd3a14 (previous version number was too high by mistake)- Update to 0.8.8+38+suse.2bdd3a14.obscpio * upstream version bump. Code-wise identical to 0.8.7+138+suse.7c9afe31- Drop versioned dependency on libmpath0 again (bsc#1190622) * Since 0.8.6, libmultipath and libmpathpersist have got proper ABI versioning, and rpmbuild auto-generates dependencies on libmultipath.so.0(LIBMULTIPATH_13.0.0) etc.- Update to version 0.8.7+138+suse.7c9afe31: New upstream version (pre-0.8.8) * deprecate "config_dir" and "multipath_dir" config options (will be removed in future version) * remove dependency on systemd-udevd-settle.service (boo#1193336) * fix crash in remove_map (boo#1193334) * CLI: add path wildcard "%I" for init state * CLI: add "reconfigure all" command * allow multiple pending "reconfigure" commands (bsc#1189551) * speed up "reconfigure" by avoiding unnecessary map reloads (bsc#1189551) * rework of CLI command handler (unix socket handler) to avoid hanging CLI commands (bsc#1189551) * fix multipathd startup after stop during reconfigure (boo#1193338) * improve error detection and warning messages in config file parser * fix exit status of multipath -T (bsc#1191900) * fix defects reported by coverity (boo#1193342) - avoid sleeping with locks held - exit if bindings file is broken - set umask before mkstemp - add bounds and consistency checks in SCSI VPD parsing code * add hardware table entry for DellEMC/ME4 (PowerVault ME4)- Add a versioned dependency of multipath-tools on libmpath0 (bsc#1190622)- Update to version 0.8.7+14+suse.5a09bfa1: * Fix possible string overflows (bsc#1188148) - Upstream fixes / changes * better string handling * multipath: print warning if multipathd isn't running * mpathpersist: better error msg when no usable paths exist * fixes from 0.8.6+32+suse.f11c192 merged upstream- Spec file: remove compatibility code for SLE <= SLE15-SP2- Update to version 0.8.6+32+suse.f11c192: * libmultipath:fix compilation with glibc 2.34 (bsc#1189099) * libmultipath: avoid buffer size warning with systemd 240+ (bsc#1189176) * libmultipath: use uint64_t for sg_id.lun (bsc#1187534) - Upstream bug fixes: * multipath-tools: make HUAWEI/XSG1 config work with alua and multibus * multipath-tools: add info about HPE Alletra 6000 and 9000 * multipathd: cli_getprkey(): fix return value and "aptpl" support * multipathd: don't rescan_path on wwid change in uev_update_path * kpartx: Don't leak memory when getblock returns NULL * multipath: free vectors in configure * multipathd: fix ev_remove_path return code handling * multipathd: remove duplicate orphan_paths in flush_map * multipathd: don't fail to remove path once the map is removed * multipathd: fix compilation issue with liburcu < 0.8- install to /usr on Tumbleweed (boo#1029961)- Update to version 0.8.6+10+suse.47711374: * Github workflows: add CI for SUSE-specific branches- Disabled LTO for multipath-tools * The test for is_valid_path fails if LTO is enabled, just disabling it for %check is insufficient.- Update to version 0.8.6+9+suse.6c05a61: Update to upstream 0.8.6. * add eh_deadline option to avoid endless SCSI error handling * add wwid_recheck option to detect storage configuration changes * add library versioning for libmultipath, libmpathpersist etc. and to libmultipath plugins * move some global symbols to libmultipath (udev, logsink, etc) and provide default implementations for get_multipath_config() etc. This allows simplifiying libmpathpersist_example.c drastically. * fixes for shutdown issues and various race conditions on exit * improve cleanup on exit, fix memory leaks * add libmpathvalid library * fixes for SAS expanders (bsc#1178377, bsc#1178379, bsc#1177081) * Avoid access to root FS while queueing IO (bsc#1178049, bsc#1181234) * lots of bug fixes, additions to built-in hardware table, and CI improvements (bsc#1186212) * kpartx: free loop device after listing partitions (boo#1107187) Bug fixes on top of 0.8.5 mentioned below are also included in this upstream version.- Update to version 0.8.5+30+suse.633836e: * multipathd: give up "add missing path" after multiple failures (bsc#1183963)- Update to version 0.8.5+29+suse.5dabcd2: * 11-dm-mpath.rules: run "multipath -U" with -v1 (bsc#1182871) * libmultipath: merge update_multipath_table() and update_multipath_status() (bsc#1183666)- Update to version 0.8.5+26+suse.2cbedfd: Avoid "illegal request" errors on non-RDAC storage (bsc#1182072, bsc#1177371)- Update to version 0.8.5+23+suse.c11b054: * multipath -U: reduce log level of "adding new path" message (bsc#1181435, bsc#1183666)- Update to version 0.8.5+22+suse.e1e3c48: * multipath-tools tests: fix stringop-overflow build errors with gcc 11 (bsc#1181877) * README moved to README.md (has been converted to markdown upstream)- Update to version 0.8.5+12+suse.3b0e9ca * libmultipath: force map reload if udev incomplete (bsc#1178662, bsc#1172157, bsc#1175454, bsc#1176406) - Fixes from upstream 0.8.5 * multipath-tools: add MacroSAN arrays to hwtable * libmultipath: Allow discovery of USB devices (add configuration option "allow_usb_devices")- Remove compatibility code for SLE <= 12-SP2 from spec file- Bugref for all minor fixes since SLE15-SP2 release (bsc#1176670) - Added README.alua- Update to version 0.8.4+192+suse.1bc10ad: * Fix handling of hardware properties for maps without paths (bsc#1176644)- Update to version 0.8.4+190+suse.fe234ea: * Fixes for daemon shutdown issues from SLE(bsc#1110060, bsc#1110439) - multipathd: allow shutdown during configure() * fix compilation of external programs with -lmultipath (bsc#1133957, necessary after the above fix) * Minor upstream fixes- Missing past changelog bug references: * 0.7.3+10+suse.70ccb55b0439: Patch series for NVMe discovery and failover (bsc#1038865, bsc#1057820) * 0.7.9+109+suse.203c1cf * setup_map: wait for pending path checkers to finish (bsc#1118224)- Update to version 0.8.4+183+suse.1817ce2: Added reviewed upstream fix for multipath crash * multipath: get_dm_mpvec: discard broken maps- Update to version 0.8.4+180+suse.50a2698: * Fix memory access / leak issues found with valgrind- Update to version 0.8.4+170+suse.801341f: * libmultipath: tests: fix bitfield tests * Spec file: disable LTO for %check (bsc#1133122)- Update to version 0.8.4+167+suse.70bef90: Pull in reviewed upstream changes - Bug fixes * libmultipath: add consistency check for alias settings (bsc#1172429) * libmultipath: select_action(): don't drop map if alias clashes (bsc#1172429) * libmultipath: refuse reloading an existing map with different WWID (bsc#1172429) * libmultipath: select_action(): force udev reload for uninitialized maps (bsc#1172157) * multipathd: uev_trigger(): handle incomplete ADD events (bsc#1172157) * improve logging for failure to set dev_loss_tmo (bsc#1173060, bsc#1173064) * libmultipath: add device to hwtable.c (bsc#1174026) (ETERNUS AHB) - New features * multipath: add -D option to skip multipathd delegation * multipath: delegate flushing maps to multipathd * multipathd: add "del maps" multipathd command - Other changes * cleanup disassemble_map() code path (bsc#1178377, bsc#1178379) * multipath-tools: introduce INIT_REMOVED state * logging improvements * fix "multipathd show devices" * libmultipath: remove uevent listener failback * libmultipath: create bitfield abstraction * libmultipath: count pending paths as active on loads * kpartx: handle alternate bsd disklabel location - Lots of minor fixes and cleanups - Spec file: use %service_del_postun_without_restart macro- Update to version 0.8.4+43+suse.908383f: * enable negated regular expression syntax in conf file (bsc#1182917) * change default devnode blacklist to '!^(sd[a-z]|dasd[a-z]|nvme[0-9])'- Update to version 0.8.4+40+suse.b06c2e5a: - Fix udev rule processing during coldplug (bsc#1172157) * 11-dm-mpath.rules: Fix udev rule processing during coldplug - Fix compilation with gcc-10 * fix boolean value with json-c 0.14 * libmultipath: fix condlog NULL argument in uevent_get_env_var - Reviewed upstream changes: * simplify failed_wwid code * centralize path validation code - Use pkgconfig for BuildRequires- Update to version 0.8.4+31+suse.8f53764: * Fix sporadic build failures caused by missing build dependencies- Update to version 0.8.4+29+suse.c27ed8d: * multipath-tools: Makefile.inc: set -Wno-error=clobbered * Makefile.inc: keep warning flags during rpm build * Eliminate compiler warnings on 32bit build. * Fixes for tests under i586 - Spec file: add %check section to run multipath-tools CI * not on SLE12, as cmocka is missing * add build dependency on cmocka for building tests * run "make test" with parallel make- Update to version 0.8.4+19+suse.48fc2f4: * multipath: add "-e" option to enable foreign libraries * libmultipath: set "enable_foreign" to NONE by default * deleted libmultipath-set-enable_foreign-to-NONE-by-default.patch (included in factory git repo now). * Makefile: dependency fixes for parallel build - Get rid of %is_opensuse: * drop build workaround for Leap 42.1 * build libdmmp for everything except SLE12/Leap42 and older - Other spec file updates: * use %make_build to speed up build (possible with 0.8.4) - Migrated to .obscpio format.- Update to version 0.8.4+16+suse.f319f7ea - Changed github workflow back from merge-based to rebase-based. This makes it much easier to assess differences between upstream and SUSE code. * Use TAG_OFFSET in _service, as this is now possible again. - Reviewed upstream patches added: * kpartx.rules: fix handling of synthetic uevents (bsc#1161923) * libmpathpersist: limit PRIN allocation length to 8192 bytes (bsc#1165786) - Update upstream version to 0.8.4 * drop nr_active field, always count active paths (bsc#1125043) * kpartx: fix detection of dasd partition tables on loop devices (bsc#1139775) * directio path checker fixes * lots of fixes for compiler warnings, and cleanups * nvme: update to nvme-cli 1.9- Update to version 0.8.3+11+suse.7dcdf2f: * libmultipath: fix files read from config_dir (bsc#1162896)- Update to version 0.8.3+10+suse.86684b9: * libmultipath: fix compilation with -fno-common (boo#1160403)- Update to version 0.8.3+9+suse.f6f2a52 - Minor upstream improvements and bug fixes * libmultipath: EMC PowerMax NVMe device config- Update to version 0.8.2+27+suse.3ff280b: * Added upstream patch to fix premature path reinstantiation with san_path_err_XX (boo#1149319)- Update to version 0.8.2+26+suse.d884195: - Don't activate NVMe native multipath support by default * multipath.conf.5: document foreign library support * multipath.conf: add "enable_foreign" parameter (bsc#1139837) * Set default for "enable_foreign" to "NONE" (bsc#1139837) added libmultipath-set-enable_foreign-to-NONE-by-default.patch - Added reviewed upstream patches (marginal path patch set from Red Hat) * add "marginal_pathgroups" config option * deprecate "delay_wait_checks" and "delay_watch_checks"; they are now automatically mapped to eqivalent "san_path_err_..." settings.- Update to version 0.8.2+11+suse.0f6a649: * kpartx: recognize DASD on loop devices again (bsc#1139775) * Bump version to 0.8.2 - most changes were already in SUSE tree * Man page improvements (bsc#1148767)- Update to version 0.8.1+59+suse.f947184: * libmultipath: trigger uevents for partitions, too (bsc#1140146)- Update to version 0.8.1+58+suse.2af8f92: * libmultipath: more cautious blacklisting by missing property (don't blacklist paths because of temporarily missing udev properties) * libmultipath: fix memory leak with "uid_attrs" config option * libmultipath: get_uid: straighten the fallback logic - Fix SCSI VPD 0x80/0x83 parsing - Fix compiler warnings introduced by gcc 9: * -Wstringop-overflow, -Wstringop-truncation, - Waddress-of-packed-member- Update to version 0.8.1+28+suse.fea562a: * mpathpersist: optimize for setups with many LUNs (bsc#1134648) * mpathpersist: add option -f/--batch-file (bsc#1134648) * libmultipath: get_prio(): really don't reset prio for inaccessible paths (bsc#1118495) - Upstream bug fixes from dm-devel (bsc#1139369): * multipath: call store_pathinfo with DI_BLACKLIST * multipathd: fix REALLOC_REPLY with max length reply * libmultipath: make vector_foreach_slot_backwards work as expected * multipathd: fix client response for socket activation (bsc#1133861) * various minor fixes (coverity)- Disable kmod() style dependencies again (bsc#1119414) * For TW, dependencies will be autogenerated (gh#openSUSE/rpm-config-SUSE#3) * For SLE, feature is currently rejected (jsc#SLE-3853) - Update to version 0.8.1+8+suse.8c11498: * Avoid deadlock situation during udev settle (bsc#1131789, bsc#1125145) - multipath -u: test socket connection in non-blocking mode * Fix priority handling for offline paths (bsc#1118495) - Update to upstream 0.8.1 (bsc#1148767) * Avoid device IO in "multipath -u" (bsc#1125145) * multipathd: protect all access to running_state (bsc##1110060, bsc#1110439) * Improve handling of changed WWIDs and temporary failure to obtain WWID. Option "disable_changed_wwids" is now ignored. (bsc#1184260) * Fixes for PATH_PENDING state handling (bsc#1125043) * libmultipath: hwtable: add Lenovo DE series (bsc#1125507)- Trim %if..%endif guards that do not affect the build result. - Combine %service_* calls to reduce generated code. - Make use of %make_install.- Re-enable kmod-style dependencies for multipath-tools package (bsc#1119414) - Separate out libmpath0 (bsc#1119414) - Spec file improvements * Add Conflicts: for older multipath-tools to libmpath0 * Move license files to the libmpath0 package, which contains the code with complex licensing. The executables are GPL-2.0 anyway. * Remove bogus dependency of -devel package on device-mapper * -devel package depends on libmpath0, not multipath-tools * Remove %dir %{_defaultlicensedir} for SLE12-SP3 and newer (John Vandenberg ) * Remove unused /var/cache/multipath directory * Remove check for multipath maps in %pre and %post * Remove SLE11-specific multipathd service stop / start from %pre / %post * Remove obsolete tools from package description (bsc#1129827) * Add -n to %service_del_{pre,post}un for multipathd.socket- Update to version 0.8.0+17+suse.a28893f: * Code-identical to 0.7.9+139+suse.ed9d450, except for new version number - Disable kmod() style dependencies for now, as they are causing problems with image builds (bsc#1119414). They'd been active for SLE15-SP1 only, anyway. - _service: determine "tag offset" manually, the patch count determined by git is far too high.- Fix module name in multipath.conf (bsc#1119414) * The modules-load.d entry must match the filename exactly- Update to version 0.7.9+139+suse.ed9d450: * multipath-tools: Build: properly parse systemd's version- Add kmod(xyz) style dependencies for SLE15-SP1 (jsc#SLE-3853, fate#326579, bsc#1119414)- Update to version 0.7.9+138+suse.0edd0a2: - Include reviewed fixes from upstream * libmutipath: continue to use old state on PATH_PENDING * libmultipath: disable user_friendly_names for NetApp * multipath: blacklist zram devices * various fixes for martinal path code - Bug fixes: * multipathd: Fix miscounting active paths (bsc#1125043) * multipathd: avoid null pointer dereference in LOG_MSG (bsc#1127873) * minor fixes suggested by coverity (bsc#1127879)- Add BuildRequires on suse-module-tools * we need it for regenerate_initrd_posttrans- Update to version 0.7.9+111+suse.b4232b7: - merged upstream cb4a979a (SUSE bug fixes merged upstream, code-identical to previous release).- Update to version 0.7.9+109+suse.203c1cf: * multipathd: avoid crash in cli_list_path (bsc#1121134) * libmultipath: fix compilation with older kernel headers (bsc#1121066) - merged upstream fb824725 * Improved NVMe support in both native and dm-mpath mode added basic NVMe ANA support (bsc#1119898, bsc#1118495) * Fix prio output in "multipathd show topology" (bsc#1119897) * multipathd: fix daemon not really shutdown (bsc##1110060, bsc#1110439)- Update to version 0.7.9+90+suse.f81e290: * libmultipath: Increase SERIAL_SIZE to 128 bytes (bsc#1107179)- Update to version 0.7.9+89+suse.df77b66: - re-enable "san_path_err_xy" options These have been removed upstream, but they were supported in SLE-15/Leap15.0, so we can't simply throw them away. Improve documentation, mark them as deprecated, but keep the code in place.- Update to version 0.7.9+85+suse.766b95e: * upstream patch series to make verbosity level 3 less verbose and thus better usable (bsc#1118937) * fix for handling device size mismatch in coalesce_paths() (bsc#1037379) * libmultipath: fix false removes in dmevents polling code (bsc#1116272) * Spec file: remove build dependency on dracut which causes build errors for some distributions- Update to version 0.7.9+58+suse.0790830: * libmpathpersist: fix off-by-one error in PRIN length check (bsc#1099007) * multipathd: fix mpp->hwe handling when paths are freed (fix possible crash caused by new hardware table code)- Update to version 0.7.9+55+suse.9fc8439: (note the "55" is due to former merge operations. We actually only have 7 patches on top of upstream. All other patches referenced below as "not upstream" have been merged). * Bump version to 0.7.9 * multipathd: reset delay_wait_checks counter on failure (bsc#1114771) * multipathd: fix irritating "minor number mismatch" message (bsc#1111116) * fix possible failure to shut down (bsc#1110060, bsc#1110439) * upstream "checker overhaul" - cleanups and improvements for path checkers * Upstream fixes for failures handling path initializiation * various small upstream bug fixes.- Update to version 0.7.7+136+suse.19bb285: Bug fixes from upstream, and SUSE bug fixes * multipathd: try SCSI persistent reservations for SCSI only (bsc#1108875) * libmultipath: allow sysfs_pathinfo to return SKIPPED (bsc#1098458) * libmultipath: Fixup updating paths (bsc#1110418) * multipathd: fix memory leak on error in configure (bsc#1110418) * multipathd: minor fixes (bsc#1110418) * multipathd: function return value tweaks (bsc#1110418) * multipath: fix max array size in print_cmd_valid (bsc#1110418) * libmutipath: don't use malformed uevents (bsc#1110418) * libmultipath: fix null dereference int alloc_path_group (bsc#1110418) * libmultipath: fix memory issue in path_latency prio (bsc#1110418) * libmultipath: fix length issues in get_vpd_sgio (bsc#1110418) * multipathd: decrease log level of uevent messages (bsc#1110586) * multipathd: fix version check for DM_DEV_ARM_POLL ioctl (bsc#1110587) * libmultipath: pathinfo: skip hidden devices (bsc#1110586) * libmultipath: nvme: shorter topology output (bsc#1082419) * libmultipath: nvme: fix path detection for kernel 4.16 (bsc#1091112) * libmultipath: fix gcc 8.1 "truncated output" warnings (bsc#1099007) * (lib)mpathpersist: use O_RDONLY file descriptors (bsc#1093220) * libmpathpersist: fix byte swapping for big endian systems (bsc#1099036) * multipath-tools/tests: add tests for get_unaligned_beXX (bsc#1099036) * libmultipath: add (get|put)_unaligned_be64 (bsc#1099036) * libmpathpersist: fix stack overflow in mpath_format_readfullstatus() (bsc#1099007) * libmpathpersist: fix typo in mpath_format_readfullstatus (bsc#1099007) * libmpathpersist: remove duplicate test in readfullstatus (bsc#1099007) - Update to upstream 1a8625abd (0.7.7+82) * minor fixes for kpartx, found by coverity * mpathpersist: add --param-alltgpt option * libmultipath: add "protocol" blacklist option. * multipathd: add new wildcard "%P" for "protocol" * multipath-tools: fix products names in hwtable * libmultipath: more debug output in alua prioritizer (bsc#1080965) * libmultipath: alua: retry RTPG for NOT_READY and UNIT_ATTENTION (bsc#1080965) * libmultipath: alua_rtpg: use condlog for error messages (bsc#1080965)- Update to version 0.7.7+75+suse.6287aef: Added minor updates from upstream * multipath-tools: add info about how to enable ALUA in ONTAP * multipath-tools: add directio path_checker for DASD devices * multipath-tools: make Product Name mandatory and add all of them Minor rebase, as some SUSE patches have been merged upstream (all mentioned in previous changelogs)- Update to version 0.7.7+72+suse.4b24466: * multipath: fix return code handling in delegate_to_multipathd (bsc#1098177) * multipath: don't start multipathd unnecessarily (bsc#1098177)- Update to version 0.7.7+70+suse.4a5941e: * libmultipath: change partition_delimiter default to "-part" (bsc#1073622, bsc#1056526) * change default for find_multipaths to "greedy" (bsc#1099054) * libmultipath: allow distributions to change partition_delim default (bsc#1073622, bsc#1056526)- Update to version 0.7.7+67+suse.a7d1e14: - RBD/RADOS backend support has been removed upstream remove support for it in SUSE, too (boo#1099037, FATE#826853) * added Obsoletes: for multipath-tools-rbd. - libdmmp version has changed to 0.2.0 - New patches not yet upstream: (Wed Jun 12 2018: these are now upstream, since 0.7.8) * multipathd: fix mpp->hwe handling on path removal (boo#1099028) * libmultipath: print correct default for delay_*_checks (boo#1099026, bsc#1110418) * libmultipath: avoid error messages from RDAC check (bsc#1108728, bsc#1075539) * (lib)mpathpersist: use O_RDONLY file descriptors (bsc#1093220) * libmpathpersist: fix byte swapping for big endian systems (bsc#1099036) * multipath-tools/tests: add tests for get_unaligned_beXX (bsc#1099036) * libmultipath: add (get|put)_unaligned_be64 (bsc#1099036) * libmpathpersist: fix stack overflow in mpath_format_readfullstatus() (bsc#1099007) * multipathd: fix buffer size in cli_getprkey (bsc#1099028) * libmultipath: fix gcc 8.1 "truncated output" warnings (bsc#1099007) * libmpathpersist: fix typo in mpath_format_readfullstatus (bsc#1099007) * libmpathpersist: remove duplicate test in readfullstatus (bsc#1099007) - SUSE specific patches preserved: * multipath.rules: temporary rule to obtain ID_WWN for NVMe (bsc#1076828) * kpartx: create symlinks for dmraid devices (bsc#1064212) * multipath.conf.5: document no_partitons compat support (fate#323406) * libmultipath: compat support for 'features "1 no_partitions"' (fate#323406) * Added fossology assessment as README.licenses (bsc#1088801) - Dropped patches from previous factory/SLE15 release (0.7.3+69+suse.218a0d0): * libmultipath: don't [un]set queue_if_no_path after domap obsoleted by "libmultipath: cleanup features handling code" * multipath.rules: use -i flag to multipath obsoleted by path detection patch series * libmpathpersist: add support for prkeys file v3 obsoleted by "mpathpersist: Fix invalid condition check" * libmultipath: fix deadlock in tur.c obsoleted by "libmultipath: fix tur checker locking" * checkers/rbd: missing pthread_lock() on failure path obsolete because of RBD removal * libmultipath/hwtable: don't hard-code ALUA for IBM IPR obsoleted by "libmultipath: hwhandler auto-detection for ALUA" and "libmultipath: don't reject maps with undefined prio" (bsc#1085212, bsc#1075129) - Update to upstream version 0.7.7+50 (39ad8dc8) - rework of "find_multipaths" logic * find_multipaths can now be "strict", "yes", "no", "greedy", or "smart" * SUSE default is "greedy" for now, consistent with previous behavior * "multipath -u -i" not necessary in udev rules any more (removed SUSE patch "multipath.rules: use -i flag to multipath") - patch series for config file handling (bsc#1067789): * fix inconsistent handling of multiple config file entries matching the same device (bsc#1067789) * multipath: implement "multipath -T" (bsc#1067789) * multipathd: implement "show config local" (bsc#1067789) * libmultipath: merge "multipath" config sections by wwid * multipathd: add path format wildcard "%0" for failures * libmultipath: config parser: Allow '"' in strings - multipath-tools: foreign/NVME implementation (bsc#1082419) for native NVME multipath configurations - Other new upstream features: * mpathpersist: add all_tg_pt option * add polling dmevent handler (only one thread waiting for device-mapper events rather than one per map). * multipath: add "ghost_delay" parameter * "marginal path" path state checking for better handling of unstable "shaky" connections in a SAN. conf options "marginal_path_err_rate_threshold" etc, see man page. This replaces the previous "san_path_err_threshold" functionality. - Upstream bug fixes: * Man page corrections and improvements for multipath.conf(5) * libmultipath: fix memory leak in process_config_dir() (bsc#1110352) * multipath: don't check timestamps without a path * multipathd: handle errors in uxlsnr as fatal (bsc#1086025) * libmultipath: don't reject maps with undefined prio (bsc#1085212, bsc#1075129) * multipathd: fix reservation_key check (bsc#1099008) * 11-dm-mpath.rules: dont't run "multipath -U" during coldplug (bsc#1084748) * libmultipath: hwhandler auto-detection for ALUA (bsc#1085212, bsc#1075129) * multipath: fix rcu thread cancellation hang (bsc#1110418) * multipathd: register threads that use rcu calls (bsc#1110418) * multipathd: fix waiter thread cancelling * multipathd: use nanosleep for strict timing (avoids possible races with SIGALRM) * logging fixes: * libmultipath: fix log_pthread processing * libmultipath: set dm_conf_verbosity * libmultipath: fix basenamecpy * libmultipath: uev_update_path: update path properties * libmultipath: uev_update_path: always warn if WWID changed * libmultipath: get_uid: don't quit prematurely without udev (bsc#1108728) * libmultipath: get_uid: check VPD pages for SCSI only (bsc#1108728) * libmultipath: fix wrong output of "multipath -t" * Introduce the libmultipath/unaligned.h header file (bsc#1099036) * libmultipath: Fix sgio_get_vpd() (bsc#1099484) * kpartx: Improve reliability of find_loop_by_file() * libmultipath, alloc_path_with_pathinfo(): Ensure that pp->wwid is '\0'-terminated * libmultipath: enable feature disable changed wwid by default * multipathd: add lock protection for cli_list_status * bug fixes for "marginal path checker" * multipathd: fix signal blocking logic (bsc#1110060, bsc#1110439, bsc#1086025) * multipath-tools: add INSPUR/MCS to hardware table * multipath-tools: add RDAC SUN/ArrayStorage to hwtable * multipath-tools: remove DF arrays from HP * multipath: print sysfs state in fast list mode (bsc#1110354) * multipathd: remove coalesce_paths from ev_add_map * multipath: fix DEF_TIMEOUT use * libmultipath: fix tur checker locking * multipath-tools: handle exit signal immediately (bsc#1086025) * multipathd: release uxsocket and resource when cancel thread (bsc#1110355) * path latency prioritizer fixes * multipathd.service: set TasksMax=infinity (bsc#1060616) * multipathd.service: drop Before=lvm2-lvmetad.service (bsc#1070427) * multipathd.socket: add WantedBy=sockets.target * kpartx.rules: fix by-id/scsi-* for user_friendly_names * multipath -C: decrease log level * libmultipath: hwtable: no_path_retry="queue" for NetApp NVMe * libmultipath: hwtable: multibus for NetApp NVMe-FC * libmultipath: select ALUA prioritizer for RDAC arrays only (bsc#1075539, bsc#1081241) * libmultipath: get_vpd_sgio: support VPD 0xc9 (bsc#1055949) * libmultipath: condlog: log to stderr (bsc#1055949) * multipath: delegate dangerous commands to multipathdd (bsc#1047639) * libmultipath: don't try to set hwhandler if it is retained (bsc#1047639) * libmultipath: don't update path queueing on reload * multipathd: marginal path code fixes * multipath: check failed path dmstate in check_path * multipathd: clean up set_no_path_retry * multipathd: fix device creation issues * libmultipath: cleanup features handling code * multipath: fix hwhandler check in select_action * kpartx: don't delete partitions from partitions * limbultipath: prefer RDAC checker with detect_checker * multipath-tools: add AccelStor/NeoSapphire to hardware table * multipath-tools: add TMS/RamSan to hardware table * multipath-tools: add XIV/NEXTRA to hardware table * multipath-tools: add XIOtech/Magnitude to hardware table * libmultipath: ensure checker->fd == -1 if not set- Update to version 0.7.3+69+suse.218a0d0: * multipath -ll: print foreign maps only with "-o" flag (bsc#1089353) * Revert "disable nvme foreign library"- Update to version 0.7.3+67+suse.8f0c27b: * disable nvme foreign library (bsc#1089353)- No functional changes - Fixed rpmlint warnings (bsc#1088946) * multipath-tools-devel: moved .so files to /usr/lib[64] * added version dependencies for -devel packages- No functional changes * fixed SPDX syntax (and -> AND) * added /usr/share/licenses- No functional changes, just licenses - Spec file: fix %license tags and info after closer inspection (bsc#1088801) * kpartx is under GPL-2.0-only * rbd is under LGPL-2.1-only - Update to version 0.7.3+66+suse.dc5fe2d: Fix licensing info (bsc#1088801) * Added fossology assessment as README.licenses * multipath-tools: create LICENSES dir with the text of all used licences- Update to version 0.7.3+61+suse.d4d0494: * 11-dm-mpath.rules: dont't run "multipath -U" during coldplug (bsc#1084748)- Fixed license tags in spec file * multipath tools / libmultipath is GPL-2.0-only * libmpathcmd is LGPL-2.0-or-later * libdmmp is GPL-3.0-or-later * adopt SPDX format.- Update to version 0.7.3+60+suse.46ac839: * libmultipath/hwtable: don't hard-code ALUA for IBM IPR (bsc#1085212, bsc#1075129)- Update to version 0.7.3+59+suse.1b6191c26774: * libmultipath: don't reject maps with undefined prio (bsc#1085212, bsc#1075129) * multipathd: handle errors in uxlsnr as fatal (bsc#1086025)- Update to version 0.7.3+57+suse.bb6be4c8b4ca: * multipathd: fix signal blocking logic (bsc#1086025) * multipath-tools: handle exit signal immediately (bsc#1086025) * multipath: fix DEF_TIMEOUT use (bsc#1086014) * multipath-tools: foreign/NVME implementation v2 (upstream accepted) (bsc#1082419)- Update to version 0.7.3+53+suse.140f4937e9e7: * libmultipath: fix wrong output of "multipath -t" (bsc#1082835)- Update to version 0.7.3+52+suse.08a969b7fce0: - Add limited support for displaying native NVMe multipath (bsc#1082419) * libmultipath: foreign/nvme: implement path display * multipathd: use foreign API * multipath: use foreign API * libmultipath/foreign: nvme foreign library * libmultipath/print: add "%G - foreign" wildcard * libmultipath: API for foreign multipath handling * libmultipath: print: use generic API for get_x_layout() * libmultipath: print: convert API to generic data type * libmultipath: "generic multipath" interface * libmultipath: add vector_convert() * libmultipath: add vector_free_const() * libmultipath: get rid of selector "hack" in print.c - Fix locking errors detected by coverity check (bsc#1082418) * checkers/rbd: missing pthread_lock() on failure path * libmultipath: fix deadlock in tur.c- Fix whitespace in dracut conf file (bsc#1080562)- Update to version 0.7.3+38+suse.a16beed5280a: * kpartx: don't delete partitions from partitions (bsc#1078362) * hwtable: add latest updates (bsc#1078363) * multipathd.service: set TasksMax=infinity (bsc#1060616)- Update to version 0.7.3+31+suse.6804bb73f72d: * libmultipath: hwtable: no_path_retry="queue" for NetApp NVMe (bsc#1073319)- Update to version 0.7.3+30+suse.6b5ed839: * multipath.rules: temporary rule to obtain ID_WWN for NVMe (bsc#1076828) * libmultipath: ignore natively multipathed NVME devices (bsc#1076828) * multipath.rules: handle NVME devices (bsc#1076828) * FIX "libmultipath: hwtable: multibus for NetApp NVMe-FC" (bsc#1073319) * libmultipath: increase path product_id/rev field size for NVMe (bsc#1073319)- Update to version 0.7.3+25+suse.7c9920e2: * assemble_map: no newline at end of params string (bsc#1072253)- Update to version 0.7.3+24+suse.703a61d5: * multipathd.service: drop Before=lvm2-lvmetad.service (bsc#1070427) * libmultipath: hwtable: multibus for NetApp NVMe-FC (bsc#1073319) * libmultipath/propsel: select ALUA prioritizer for RDAC arrays only (bsc#1075539, bsc#1081241) * libmultipath: get_vpd_sgio: support VPD 0xc9 (bsc#1055949) * libmultipath: sgio_get_vpd: add page argument (bsc#1055949) * libmultipath: fix return code of sgio_get_vpd() (bsc#1055949)- Update to version 0.7.3+19+suse.0fd18bdd: * multipathd.socket: add WantedBy=sockets.target (bsc#1072253)- Update to version 0.7.3+18+suse.8c97f433: * multipath -C: decrease log level (bsc#1072504)- Update to version 0.7.3+17+suse.cac42e6f: * test-kpartx: add test for mapping without UUID (bsc#1074013)- Update to version 0.7.3+15+suse.570d5938: * kpartx.rules: fix by-id/scsi-* for user_friendly_names (bsc#1066893)- Update to version 0.7.3+14+suse.da06e7f3: * libmultipath: fix return code of sysfs_get_timeout (bsc#1069037)- added sample code for libmpathpersist (bsc#1066376) * added libmpathpersist-example.c - multipath-tools.spec: package libmultipath.so symlink in -devel package (bsc#1066376). We *do not* package header files for libmultipath, as the APIs are not public.- multipath-tools.spec: package *.so symlinks in -devel pkgs (bsc#1066376) - multipath-tools.spec: SLE15: add RADOS support for s390x (bsc#1066380) - Fix build error for targets SLE_12, SLE_12_SP1 (bsc#1066392)- Update to version 0.7.3+13+suse.db431514080f: * kpartx: create symlinks for dmraid devices (bsc#1064212) * limbultipath: prefer RDAC checker with detect_checker (bsc#1055949)- Update to version 0.7.3+11+suse.4de08d96: * libmultipath: condlog: log to stderr (bsc#1063059)- Update to version 0.7.3+10+suse.70ccb55b0439: - Rebase to upstream release 0.7.3 * libmultipath: add pthread_cleanup hook for udev monitor * libmultipath: pull functions into util.c * libmultipath: change reservation_key to a be64 * libmpathpersist: fix update_prflag code * multipath: add alternate reservation_key method * mpathpersist: add support for prkeys file * multipath-tools: minor edition and corrections in multipath.conf.5 * multipath-tools: fix incorrect length for strncmp in uevent.c * multipath-tools: clarify how to dump the multipathd config * multipath-tools: replace "setting: array" with "setting: storage device" at multipath output * libmultipath: sanitize fd handling * multipath-tools: link internal libraries before foreigns * multipath-tools: remove Sun StorEdge T4(6020,6120,6320) arrays from hwtable * multipath-tools: add support for all arrays from Sun StorEdge 3000 family * multipath-tools: add Xiotech iglu blaze arrays to hwtable * multipath-tools: add Dot Hill/Seagate arrays to hwtable * libmultipath: update INFINIDAT builtin config * multipath-tools: add info about adding new hardware * multipath-tools: Remove the limitation of IPC command reply length. * multipath-tools: libdmmp: Improve timeout mechanism * multipath-tools: libdmmp: New function to flush and reconfig * Bump version to 0.7.3 - minor fixes for upstream 0.7.3 * libmultipath: ensure checker->fd == -1 if not set * libmpathpersist: add support for prkeys file v3 * multipath: add man page info for my prkey changes - Patch series for NVMe discovery and failover (bsc#1038865) * discovery: sanitize NVMe discovery * libmultipath/discovery: modify NVMe path states * Add 'none' checker * hwtable: set 'none' as default checker for NVMe- Update to version 0.7.2+49+suse.993a29b1188d: * Revert "11-dm-mpath.rules: Remember DM_ACTIVATION" (boo#1059227) * Revert "11-dm-mpath.rules: don't set READY->ACTIVATION" (boo#1059227) * multipath: delegate using libmpathcmd (bsc#1047639)- split off rados support into separate multipath-tools-rbd package. This avoids pulling in the whole rados/ibverbs/rdma stack with multipath-tools. (bsc#1058504). - multipath-tools-rbd is Recommended but not Required by multipath-tools.- Update to version 0.7.2+44.3a8d750c: Misc bug fixes: * multipathd: don't flood system with sd_notify calls (bsc#1056011) * libmultipath: add_feature: skip pointless NULL check (bsc#1055635) * libmultipath: add_feature: allow only 1 feature (bsc#1055635) * multipath: delegate dangerous commands to multipathd (bsc#1047639) * libmultipath: fix partition_delimiter config option (bsc#1056526) * kpartx: helper functions for name and uuid generation (bsc#1056508) * kpartx: search partitions by UUID, and rename (bsc#1056508) * kpartx: fix a corner case when renaming partitions (bsc#1056508) * kpartx: -d must work with empty partition table (boo#1056599) * kpartx: only recognize dasd part table on DASD (boo#1056599) Rework of the udev rules related to multipath and kpartx (bsc#1054363): * libmultipath: support MPATH_UDEV_NO_PATHS_FLAG on map creation * libmultipath: add get_udev_device * libmultipath: get_refwwid: use get_udev_device * libmultipath: use const char* in some dm helpers * libmultipath: add DI_NOIO flag for pathinfo * libmultipath: add dm_get_multipath * multipath: implement "check usable paths" (-C/-U) * 11-dm-mpath.rules: multipath -U for READY check * 11-dm-mpath.rules: import more ID_FS_xxx vars from db * 11-dm-mpath.rules: no need to test before IMPORT * 11-dm-mpath.rules: handle new maps with READY==0 * 11-dm-mpath.rules: don't set READY->ACTIVATION * 11-dm-mpath.rules: Remember DM_ACTIVATION * multipath.rules: set ID_FS_TYPE to "mpath_member" * kpartx.rules: don't rely on DM_DEPS and DM_TABLE_STATE * kpartx.rules: respect DM_UDEV_LOW_PRIORITY_FLAG * kpartx.rules: improved logic for by-uuid and by-label links * kpartx.rules: create by-partuuid and by-partlabel symlinks * kpartx.rules: generate type-name links only for multipath devices * kpartx.rules: fix logic for adding partitions * multipath/kpartx rules: avoid superfluous scanning * kpartx/del-part-nodes.rules: new udev file * kpartx.rules: move symlink code to other files - multipath-tools.spec: * added 68-del-part-nodes.rules to support partition deletion * added 00-dont-del-part-nodes.rules to disable partition deletion by default on openSUSE/SLES for now. * added 11-dm-parts.rules to kpartx package * added dracut.conf file to make sure 11-dm-parts.rules is included in initrd- Update to version 0.7.2+14+suse.5721c345: * cli_add_map: Use CMD_NONE (bsc#1053515) * multipath-tools: link internal libraries before foreigns (bsc#1028132) * multipathd daemon: Fix incorrect use of CLOCK_MONOTONIC in pthread (bsc#1053757)- Update to version 0.7.2+11+suse.448921a2: * multipath.conf.5: document no_partitions compat support * libmultipath: fixup compat support for 'features "1 no_partitions"'- Dropped 67-kpartx-compat.rules (SUSE legacy). * symlinks "/dev/mapper/${UUID}_part${X}" are not created any more, only "/dev/mapper/${UUID}-part${X}" (with "minus") - Dropped automatic kpartx invocation on dmraid devices (fate#323743) - Rebase to upstream multipath-tools 0.7.2: * libmultipath: retain_attached_hw_handler obsolete with 4.3+ * multipath-tools: move up TEMPLATE in hwtable * multipath-tools: delete libdmmp/docs/man directory in make clean * libmultipath: fix unit to seconds in log message for checker timeout * multipath-tools: add HPE StoreVirtual 3200 family to hwtable * multipath-tools: add HPE MSA 2050/2052 to hwtable * multipath-tools: add/change fujitsu arrays * multipath-tools: check sysfs path state for NVMe/NVMf * multipath-tools: sync third-party headers with 3.13 upstream * multipath-tools: beautify path_latency.c code * multipath-tools: fix format in multipath.conf.5 * libmultipath: update 3PARdata builtin config * Bump version to 0.7.2 - Update to version 0.7.2+8+suse.95e8f43e: * libmultipath: don't try to set hwhandler if it is retained (bsc#1037533) * libmultipath: don't [un]set queue_if_no_path after domap * kpartx/devmapper.h: remove dm_no_partitions * libmultipath: compat support for 'features "1 no_partitions"' (fate#323406) * kpartx.rules: respect DM_UDEV_LOW_PRIORITY_FLAG (bsc#1047180) * kpartx.rules: Use DM_ACTIVATION as condition (fate#323406) * kpartx.rules: skip creating by-uuid and by-label links (fate#32340)- Update to version 0.7.1+69+suse.3bfa5af1: * Merge branch 'sles12-sp3-fixes' into sles12-sp3 * libmultipath: get_udev_uid: make sure pp->wwid is 0-terminated (bsc#1048146) * libmultipath: drop uevent_can_discard_by_devpath (bsc#1048052) * libmultipath: only listen for uevents with DEVTYPE=disk (bsc#1048052) * libmultipath: fix over-long NVME WWIDs (bsc#1048146)- Update to version 0.7.1+64+suse.aabe8c87: * Updated "no_path_retry" patchset to v4 (minor change) * kpartx.rules: Fix syntax error in skip_kpartx code (bsc#1046092) - _service: use "match-tag" to refer only to offical tags- Update to version 0.7.1+62+suse.62a2c36e: * kpartx: only check for 'no_partitions' feature on dm devices (bsc#1037533) * Revert "kpartx: use mapname if no uuid is present" (bsc#1037533, bsc#1033541) - "no_path_retry" patch series (bsc#1043027) * libmultipath: load_config: skip setting unnecessary defaults * libmultipath: add/remove_feature: use const char* for feature * libmultipath: clarify option conflicts for "features" * libmultipath: merge_hwe: fix queue_if_no_path logic * libmultipath: assemble_map: fix queue_if_no_path logic * multipath.conf.5: document no_path_retry vs. queue_if_no_path * multipath.conf.5: Remove ??? and other minor fixes * libmultipath: add deprecated warning for some features settings - _service: Use "sles12-sp3" branch as revision, as factory and SLE12-SP3 submissions are in sync. Will be changed when factory forks off (latest at SLE12-SP3 GA).- set KBUILD_BUILD_TIMESTAMP to generate reproducible man-pages to fix build-compare (bsc#1045111)- Update to version 0.7.1+53+suse.07c2f6ac - kpartx patch series from upstream (bsc#1037533, bsc#1033541) * kpartx: only check for 'no_partitions' feature on dm devices * kpartx: test-kpartx: new unit test program * kpartx: remove is_loop_device * kpartx: relax and improve UUID check in dm_compare_uuid * kpartx: dm_remove_partmaps: support non-dm devices * kpartx: dm_devn: return error for non-existent device * kpartx: don't treat multi-linear mappings as partitions * libmultipath: don't treat multi-linear mappings as partitions * kpartx: use partition UUID for non-DM devices * kpartx: use absolute path for regular files * kpartx: find_loop_by_file: use sysfs * kpartx: include sys/sysmacros.h * Revert "kpartx: relax check when checking for a kpartx device" - Spec file: use new build flag for libdmmp installation (bsc#1036652), enabled by upstream fix: * libdmmp: enable library installation in alternative directory - Other bug fixes from upstream: * libmultipath: print.c: make sure lines are 0-terminated (bsc#1038865) * multipath-tools: fix compilation with gcc < 4.9 * kpartx: fix device checks * mpath_persist: Don't join threads that don't exist * libmultipath: fix suspended devs from failed reloads * mpathpersist: fix one more crash possiblity - Minor upstream changes: * multipath: Merge the DELL MD3xxx device configs * multipath: fix up position independent code * libmultipath: fix partition detection (bsc#1037533) * kpartx: default to running in sync mode * libmultipath: force udev reloads * libmultipath: print alias with no_path_retry message * multipathd: force reload device on all resizes * libmultipath: refactor calls to get dm device info * multipath-tools: document uid_attribute for NVME devices * Makefile: Remove assignments to unused variables * libmultipath/configure.h: Add a forward declaration * libmpathpersist: Add two missing #include directives * Remove mpath_reverse_8bytes_order() * Move the declaration of mpath_mx_alloc_len to a header file * Remove a superfluous "extern" keyword * mpathpersist.8: add missing documentation for -K, -C, -l- spec file: Disable RADOS support for i586 on Leap 42.x (bsc#1036271) - spec file: Move libdmmp to /usr/lib[64] (bsc#1036652) - Update to version 0.7.1+7+suse.3edc5f7d: * kpartx: use mapname if no uuid is present (bsc#1033541) * kpartx: relax check when checking for a kpartx device (bsc#1033541) * libmpathpersist: use extern struct udev (bsc#1027188) * kpartx: include sys/sysmacros.h (fix compilation warning) - Update to upstream version 0.7.1: * multipath-tools: improve processing efficiency for addition and deletion of multipath devices * uevent_can_discard: optimize devpath check * multipathd: fix SIGUSR2 handling * multipath-tools: clean up libdmmp/Makefile * multipath-tools: libdmmp: Fix incorrect use of __attribute__ * multipath-tools: Remove trailing whitespaces * multipath-tools: add missing "-l" flag for pthread in libdmmp/Makefile * multipath-tools: build objects for libdmmp and libmpathpersist independently * libdmmp: minor Makefile cleanup * multipath-tools: remove incdir from Makefiles * libdmmp: don't disconnect from multipathd twice * multipathd: don't call strlen on NULL variables * libdmmp: move libdmmp.pc install location * multipathd: drop lock before calling uev_add_path * multipathd: allow devices to switch from RW to RO * libmultipath: don't set max_sectors_kb on reloads * Remove a trailing tab * multipath: fix segfault with disable_changed_wwids * multipath-tools: amend text from multipath/multipath.conf.5 * Bump the version code and date * multipath-tools: replace multipath configuration output * Revert "multipathd: set timeout for CLI commands correctly" * libmultipath: fix skip_kpartx support for removing maps * Bump version to 0.7.1- spec file changes suggested by factory review team (bsc#1030699) * RPM group adjustments. * Avoid %__ macro indirections- Enable rados for SLES only for x86_64 and aarch64 (ceph is currently disabled on SLES on s390x and ppc64le) (bsc#1030699) - Downgrade to version 0.6.4+103+suse.bcb5d0f4: * temporarily remove commit "multipathd: fix SIGUSR2 handling" until it's merged in official repo (bsc#1030699)- Spec file: disable librados for architectures for which ceph is not built - Spec file: enable librados by default for SLES12 SP3, disable it on Leap <= 42.1 - Update to version 0.6.4+104+suse.ac0df678: * multipathd: fix SIGUSR2 handling- Update to version 0.6.4+103+suse.bcb5d0f4: * changed to official github repo openSUSE/multipath-tools (no changes code-wise)- Spec file: Added dependency on sg3_utils (boo#1028857)- spec file changes: optional librados and libdmmp support * enabled by default on Factory and Leap (disable with --without-rados, --without-libdmmp) * disabled by default on SLES12 (enable with --with-rados, --with-libdmmp) * libdmmp0_1_0 and libdmmp-devel as separate packages * minor fixes for RPMLINT warnings - Update to version 0.6.4+102.0119472d: * rebased, code-wise identical to previous checkout- Update to version 0.6.4+102.df7d367e: * libmultipath/propsel: Do not select sysfs prioritizer for RDAC arrays (bsc#1004858)- Update to version 0.6.4+101.f01ef4da (SLES12 SP2 changes wrt upstream): * Make libdmmp build optional * multipath.rules: use -i flag to multipath * kpartx: create symlinks for dmraid devices * kpartx: Add udev compability rules for SUSE * libmultipath/checkers: make RADOS checker optional * multipathd: fixup check for new path states (bsc#1019798) * tur: Add pthread_testcancel() (bsc#101979) * kpartx: sanitize delete partitions (bsc#100869) * libmultipath: coalesce_paths: trigger uevent if nothing done (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: differentiate ACT_NOTHING and ACT_IMPOSSIBLE (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: reload map if not known to udev (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: sysfs_attr_set_value: use const char* (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: select_action: check special features separately (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: disassemble_map: treat aminio like assemble_map does (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: disassemble_map: skip no_path_retry check (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_feature: handle "retain_attached_hw_handler" (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_feature: print log msg if no_path_retry cant be set (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * libmultipath: setup_features: log msg if queue_if_no_path is ignored (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * multipathd: use weaker "force_reload" at startup (bsc#998906, bsc#998893, bsc#1005763, bsc#1011400) * multipathd: imply -n if find_multipaths is set (bsc#1012910) * multipath: ignore -i if find_multipaths is set (bsc#1012910) * libmultipath: move suspend logic to _dm_flush_map (bsc#986838) * multipath -ll: set DI_SERIAL (bsc#991432) * libmultipath: use existing alias from bindings file (bsc#1005255) * libmultipath/discovery: do not cache 'access_state' sysfs attribute (bsc#1004858) * multipathd: issue systemd READY after initial configuration (bsc#1006469) * multipath: avoid crash when using modified configuration (bsc#1000914) * multipathd: Set CLI timeout correctly (bsc#999061) * libmultipath: Do not crash on empty features (bsc#994812) * libmultipath: fall back to search paths by devt (bsc#995645) * multipathd: set timeout for CLI commands correctly (bsc#999061) * Invalid error code when using multipathd CLI * multipath: do not check daemon from udev rules (bsc#986734) * Add support for "multipath=off" and "nompath" on kernel cmdline * multipathd: start daemon after udev trigger (bsc#98673) * multipathd.service: fixup Wants= and Before= statements (bsc#1019181, bsc#991742, bsc#986734) - Update to current upstream (0.6.4-65-ga2675025) * Avoid that reloading a map sporadically triggers I/O errors * fix udev rules for failed multipath devices * multipathd: allow resetting stats * multipathd: add messages on delayed path addition * multipathd: don't update priority of failed paths * libmultipath: cleanup orphan device states * libmultipath: add detect_checker option * kpartx: don't keep creating recursive partitions * multipath-tools: Introducing multipath C API * multipath-tools: sync valgrind.h with 3.12 upstream * multipath-tools: add availability of service-time and queue-length to multipath.conf.5 * multipath-tools: add availability of service-time and queue-length to multipath.conf.5 * Fill NVMe specific path info * Don't blacklist nvme * multipath-tools: fix misspellings * multipath-tools: git should ignore rej and orig files * Include sys/sysmacros.h * Tolerate modprobe failures in multipathd.service * multipath-tools: Remove trailing and leading whitespaces * multipath-tools: Perform socket client uid check on IPC commands. * multipath-tools: Set errno mpath_recv_reply() when failure * multipath-tools: New way to limit the IPC command length. * multipath-tools: libmultipath: Removed unused functions. * multipath-tools: libmultipath: fix gcc link failure on rcu_register_thread_mb. * multipath-tools: multipathd: Fix memory leak on load_config(). * [multipathd] Remove trailing whitespaces * multipathd: deterministic io throughput in multipath- Remove superfluous PreReq for insserv and fillup- Update to version 0.6.2+suse20160928.8939fb6- Implement support for 'multipath=off' and 'nompath' kernel commandline options (bsc#1001691)- multipath: avoid crash when using modified configuration (bsc#1000914)- libmultipath: Do not crash on empty features (bsc#994812) - multipathd: Set CLI timeout correctly (bsc#999061) - Moved multipath-tools repository to github.com:/openSUSE/multipath-tools.git- Fixup glitch from patch 'fixup check from udev rules' (bsc#986734) - Remove 0001-libmultipath-fall-back-to-search-paths-by-devt.patch; integrated into git repository- libmultipath: fall back to search paths by devt (bsc#995645)- Fixup module name in /usr/lib/modules-load.d (bsc#986734)- multipath: fixup check from udev rules (bsc#986734)- multipathd: start daemon after udev trigger (bsc#986734) - Load device handler and multipath module at boot (bsc#991634)- Do not check daemon from udev rules (bsc#986734,bsc#990538)- Include fixes from upstream: * memory leak in orphan_paths * More hardware table cleanups * Add 'serial' keyword to weightedpath prioritizer - Set timeout for CLI commands correctly (bsc#990265) - Start daemon after udev trigger (bsc#991742,bsc#986734,bsc#990538) - multipathd.service: Fixup Wants= and Before= statements (bsc#991742, bsc#986734)- Include patches from upstream: * Cleanup hardware tables by removing default entries * More formatting fixes * Order keywords in multipath.conf.5 * Change default pgpolicy from 'failover' to 'group_by_prio' * kpartx: Fix check whether to detach a loop device * Fix partly traversed loop in coalesce_paths() * Fix memory leak in reconfigure() * Cleanup include header files * Bump version code to 0.6.2 - Fix multipath -l without output (bsc#990480) - Fix spelling in a log message - Fix type of rcu_unregister() - Do not perform POSIX mutex operations inside a signal handler - Ensure that signals are delivered to the uxsock thread - Fix memory leak in path group policies - Update tarball to 0.6.2+suse20160728.d96f423- Include patches from upstream: * Makefile cleanup * Update multipath.conf.5 * Update hardware tables * Whitespace cleanup - Fixup crash during shutdown (bsc#988539) - Update tarball to 0.6.1+suse20160715.3d44636- Remove obsoletes spec sections- Move config accesses to use user-space RCU (bsc#987526) * Revert 'move filter_devnode under vector lock' * Revert the rework patch - Include patches from upstream: * Update hardware tables * Update kpartx manpage * Whitespace fixes * Include coverity fixes * Drop AUTHOR file - Update tarball to 0.6.1+suse20160704.6e52398- fix service file to not pretend that this is the upstream version. Now labeled 0.6.1+suse20160603.9b920e3 - Fix BuildRequire to get systemd.pc from correct package (bsc#983167) - point rcmultipathd to /usr/sbin/service to avoid dangling symlink warning- Rework patch 'move filter_devnode under vector lock' (bsc#982348)- multipathd: Fixup definition of set_unlocked_handler_callback() - mpathcmd.h: Update Free Software Foundation address- Do not install header file with mode 755- Update to latest upstream version 0.6.1 * Merge suse-specific patches * Drop multipath.conf.* files * Update to version 0.6.1 * multipathd: move 'filter_devnode' under vector lock * libmultipath: use poll() in uevent_listen() * Increase kpartx retries * Merge Dell MD3XXX hardware table entries * multipathd: Add 'sysfs' prioritizer (bsc#927040) * libmultipath: call get_vpd_uid() if no uid_attribute is set * multipathd: update defaults- Update to latest upstream version 0.6.0 (FATE#319406) * Update documentation * Fix memory leak and segfault in reconfigure * Add wwn keyword to weightedpath prioritizer * Use 64-bit int for command key * check partions unused before removing * print 'fail' when remove fails * add exclusive_pref_bi for alua prioritizer * kpartx: verify parition devices * multipathd: delay reloads during creation * Cut down alua prioritizer ioctls * Add 'ignore_new_boot_devs' option * Add libmpathcmd library and use it internally * retrigger uevents to try and grab uid * Update to version 0.6.0- Port to latest upstream version (FATE#319406, FATE#320255) * kpartx: support device names with spaces * add raw format multipathd commands * make kpartx -d remove all partitions * Add find_multipaths option * Autodetect ALUA CLARiiON configurations * Delayed path reintegration * enable configuration directory * read-only bindings * Add deferred_remove support * correctly set partition delimiter on rename * Add overrides section to multipath.conf * Add additional path wildcards * Add force_sync option * Misc small patches- multipathd: do not flush maps on startup - Use find_path_by_dev() where possible (bsc#924316) - Fixup error return in store_path() (bsc#972329) - Do not display message 'invalid fd'- Fixup overzealous warning 'empty device number' (bsc#969857)- multipathd: fixup signal handling (again) - Revert 'trigger all devices on startup' - multipathd: print error message for invalid arguments - multipathd: block checkerloop during reconfiguration (bsc#946658) - libmultipath: correctly initialize pp->sg_id - multipathd: don't buffer output with systemd (bsc#954726) - multipath.rules: Do not forward partition events (bsc#954726) - libmultipath: improve uxlsnr handling (bsc#954726) - multipathd: do not realloc memory in uxlsnr (bsc#954726) - libmultipath: call get_uid() for all paths (bsc#935312) - multipathd: Do not print misleading message 'not found in pathvec' - multipathd: Do not update the paths vec when removing paths - multipathd: Do not switch paths on empty multipath tables (bsc#956349) - libmultipath: remove 'get_info' argument for adopt_paths() - libmultipath: ensure 'dev_t' is set when store paths (bsc#924316) - libmultipath: Do not store paths with empty dev_t (bsc#924316) - libmultipath: Do not store paths with empty device name (bsc#924316) - libmultipath: sysfs_set_rport_tmo still wrong (bsc#926588) - Add LIO-ORG/SUSE RBD backend hardware defaults (bsc#947845) - multipath: Reset alias if renaming fails (bsc#943157)- Fixes for md_monitor on zFCP (FATE#319070): * strict loop timings * multipathd: fixup a crash when invoking CLI commands * multipathd: implement 'show map $map format $format- Fixup hang in 'multipath -f' (bsc#941954)- Create package for SLE12-SP1. * Remove multipath-tools-0.5.0-sles12.diff.bz2 * Add multipath-tools-0.5.0-sles12-sp1.diff.bz2 - kpartx: parse emulated DASD devices - multipathd: Fixup queueing mode in 'show maps status' (bsc#933885) - multipathd: Accept zero-sized paths in ev_add_path - Always set DM_UDEV_DISABLE_LIBRARY_FALLBACK (bsc#933282) - libmultipath: Fixup 'DM_DEVICE_RELOAD' handling (bsc#933282) - libmultipath: correctly display checker status- Remove 'udev_sync' argument from dm_simplecmd (bsc#903001) - Ensure multipathd is started before systemd-udev-trigger- Only import ID_FS_XXX variables if not set (bsc#909358) - Fixup regular expression for HP MSA 2040 (bsc#920189)- Add dependency on systemd-udevd.service (bsc#903001) - Use ALUA for HP 3PAR (bsc#922105) - Add DX8700 S3 and DX8900 S3 defaults (bsc#921703) - Load all device handler modules on startup (bsc#908529)- libmultipath: make vpd page 0x80 optional (bsc#917963) - Add HP MSA 2040 to the hardware table (bsc#920189) - Revert 'Skip unhandled device types' (bsc#917701)- skip uninitialized devices during reconfiguration (bnc#908915) - memory overflow when printing help text (bnc#909742)- Do not automatically fall back to vpd uid generation - Improve vpd parsing - multipathd: trigger all devices on startup (bnc#901465) - Unset 'uid_attribute' on failure- libmultipath: Fall back to SG_IO if no UID could be assigned (bnc#908915) - Assign local priority for NAA VPD descriptor (bnc#907483) - libmultipath: finally fix dev_loss_tmo setting (bnc#889927) - libmultipath: Do not use 'sscanf' for parsing integers (bnc#889927) - devmapper: do not flush I/O for DM_DEVICE_CREATE (bnc#901809) - kpartx: handle more than 256 loop devices (bnc#898427) - multipathd: fixup locking in uev_remove_map() (bnc#901891) - multipathd: use global variable for uxsock timeout (bnc#900758) - multipathd: remove unused variable in cli_reconfigure() - Add %service calls for multipathd.socket/sbin/ldconfig/sbin/ldconfigibs-arm-2 16886079580.9.0+119+suse.308c007-150400.4.16.10.9.0+119+suse.308c007-150400.4.16.1libdmmp.so.0.2.0libdmmp0_2_0GPL-3.0/usr/lib64//usr/share/licenses//usr/share/licenses/libdmmp0_2_0/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:29722/SUSE_SLE-15-SP4_Update/8401b10af18f6deb3b62b3e290d906df-multipath-tools.SUSE_SLE-15-SP4_Updatecpioxz5aarch64-suse-linuxELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, BuildID[sha1]=05f7a5bd70ed5f36b88a3d91cc7bb0a67cfb47e4, strippeddirectoryASCII text PR RRRRRR RRȪpz(1Outf-8401b7995d9fd4e748f48b1030d2ce2d6fe903bf8b77b2615cbb11868aef0822e?7zXZ !t/7WR] crv9w,`N*\^67[k~2ԥq>'܁Łܸ U/$'Hn)灀:Pf㵪*CgfJgi{uH&*yKAW80/BYÅIoexm/B\ U&~ZAl5xLtZ0H>#'\x</T*ʺpzjYAOcIv55w:d^#|S]!ʋqa&?HBz!=n``38NCPri;VqmDLt] 5~<ψ]x[GbgӥV.p/lv80V+sDg)C3u/ذMioQ $vp<4u_e_B6ivKgQ6쫃WϜ|#ŕ)S#.9RI'yJ$W,4GTDL}-2zL>wG"/gY%LT^gR[m1,8IO3xU}J_/2eL'a,cf_)d;u9Fl0HȮ8ӥ &eKA AX+Pcn}ck )O~ejq6l锷?y7KHt~润yxKWdkpCLX!;CUNaeBaDL̴w( OiAD!@ۨ Eߡ 3&nuK',d,ENFup"ȀN`4cm!W+.֗&VwYqj3Gř:8Q򶢄,:V\m$/r>*&xxNjLFm#a k,e]L8}!1h6joae~DA_U6k'!*@rM%2ʯ:~)o훛jsoɇ~PO1@H1YhEJ短vC1r; 7NHXu9;lW@ڄ˛7 9)IVƳ6b%R,sg2;ÌWeʳC8L GQlvkY% #[О$Y-qI7>2Edն̌9v'Hp=  YnC",׎/df{W|"ollgX[xgW!D8+z`iY$'"vQ=RmKΟTiZ4+p8R0ݦ$0J܂inBNAC]_2ĂO4ڵY ڊ8t_.:9P[n(&i=Cmؕ@{Yݴ1@4$]\-ɱ(DM`/֙nxC[2K3qx68Ālq+vUBtfA(n>0Jq.Ĉapଡv$`z\]j!}2IBӏYrVWܕ#׆.B7祒o?Ɛďr dN<3T`=:b"˫i/cbFdbsXJ@f5^bҁ1{rVTVM> 틕ilE:q. wUԁAv%Aӱ0oP]-QҀN>f~S5"u؃ Rw{SI~qf_Q){Lvhѻ@LDf̊?z9" &SWZbYհ.EX+0]^܇h7飧[O9:i7<^C/9VZ *zk4 $(I:j4T \?BW=8!{00PKF"XbF>/By:&N!'c`KI ha 6&j׼?vK\ug{S,>kEyUxdwĽݸ7~4^`Zk Wvvo)(m#7 EL] DkoԆooxeSv_T[Rcn+bFHZI:ȷzq=r.P2Z=\W!N8[@_S~ x1Du8DyhS,j9=K;kꨟFW)<竾BWD % Cc+1c3 +Ӕ%(p&rبQ`=H ,v&$SDR⫆]SN;=_ܮ8Z>YɅS%~}В2#ח_a?HO(~Er.[QsXqD oV\ԓgtB\k"84.Z&q)pv!BqڼTqt7C=Չ#z7@ Gf9BKzZk2êk3bSB.R(+NYkSrQ17=35 kÔNz_k>`/[(w /u_WrKuVKO;~p9Г],.p.'ޑVkFXC\4M1s܆ZVp鮴N5, ^=V!2&tJ]AhwaK|:OˍSIX: Bq*:śhpP}|x(^tbr'6Vtq9Ux:Qe' H+r>em867?yhp`y]M%2au].]7~[WvNXRd4_9}'"aM)|ױPjczPո Dq@ 8,#ٍ̈I?+:/(,2v.l#5'94M>+gl+%SPDփ**+WYQeDԻ:.O 97]="Oe NZU'+U'\4P-rpd̾%nGʑOI-L6tΖX$ͧddptx5zQKŮGh $Qa`A +y;^Iک-/ 01*j 3:;ަMc’KM1|5cIY&4އg|/=mU 7\SP>w=`a$%c⸨kr+H)a1MTUL yꁤ*hԠru A&P̍Ci*K< 6_5o~$H>Rdrorӛ]R]xarH.N/:fդ$56-91`H[3 xP,FRW^ORܖী包O\(SQge}ja"Q0sڸJտ^Z)OJ9wkD|; F4bu͗͟[IujB3[7K_M/a ;r4oc8u9nٛ'JU(rp%|ڬׄ dG8SϾJWǧᎅё~*m*Z<kdu~Qa[Ygcǒ[ 1P׮nm")2Yf93Θ#F2*E9yUHPsnEn%:2qnML?"=/uiͼ ѶlbRf aOgK\pea5=Tcŕrv+(JK'U\@+sh@ؤ^r ^#5O'^@W9kΘq3S ?AeI%hCً+J*E0^Š=A^`zs0k {H\6h7&Cx)c)![?4T5=0M4wيÅminfm`pl^iU=(3R Tb8WkƞgvL`X;7i)PxAZҨk%$3R7q bjme^G/f=Xd X>#kiS9W/\Z#VJWg?}z#ux[u8PL\!<LE_:聤s([^X3ݖM=3:3#&E[a<78  2 :tdW?jp/Yx}n?a'=R2XoCƭbNuDqQ7q{+Wx|VF,OA@%]ve|Edت6R, wPnkE6!s |^b0mkn 7؎y\dpAL]n6`[kſX$ħݱ&l8F/#}{1_D)x4Rq)ޥMHl7}Jv~7<2[/=l@О9=Q+@ikm꡼՛Sil3`3PeC7 =yTLwz4g$SMwM2>CLJr"Wt9Ge#-*xR4hkwa ݀zzG(c J3ǖ fH:%En+}LW=O2@*a3.A9@7 埻h\SG8)Ba`K `ıڃiN"3~^:Jރ%#˜aHW))ACNդŠ$DBm=)3 D!MP&4J:tF4Mx o6} Ph8+wC? ZްPkH"!1& "bnzGN@7/lT7'xcw;PV]O3> 5k&Tw1uA΂-槲n +tA*` uHCv2CYboE ,_,k,$Ȓ\T7?1mcvA e^SZ|dߕ=W>°rwZ^Q ~kwU({5ϋ>h *`EKFϛCp-kO;JPvW֦\Cꆲk7ʻHh|@s{(DH(I @܉2[/Ʃ$i>a&RVd$1 ߻jZyӾ< ^/ yZk{yewؙ(z[~P*8h`'+7~V6qM7uЌ.7^6P5C09C3Ǜ$7uT"<-w _~')_*WfY2+f?gDp6*ӫ`  qXC[ TU"`t='vY奐LjlNh]F{/Jlk7ۃvaRq~op}~g,I6JE"w|қiuiF+;3 8Xf3=BU5X@ :} .d[]s\фI d~2bmYhF=?g0^~ GRhjgvJG: fRm-v=$9%amsKE߾Ql W`H~0](w-3tȝU@_FOk"R5pZ#YU9 OTͪU(i?UN]4d(%D]63WX1P)cטI` *]uj$Nj k;Bv<w`ug;{[Twk$ht?:.>q}A|#l(@U̸I?n]lz9j'f=3ZwӒ~kLP~ =&U3u)z!Ŧdu3lE6Y!]ӿo-*y'N>GZ`o4EU~cTKإcfF]-Uvi>sDg6oI(C,,l_ъK0ڍ)* i *Z5n'F2?c}lpZ e7Xَ[mcX1cuHy&KC)I$`1Xnkr^H`+rRx$B<;ދ@y4XG+Cǃ@Ex1z}\;8"r$3/]{8d2t ʽ RㇸQAlD.} ƈ[< R ^iC>kI߃y׋V1"!8'ݸ9琱D_cvN뗃Q|Nl#UלoLFIE~ɏQjtF<yU'ق{]+@MΑr]:h y18 9# :$|1"y~~0Jl07˱xC$\ Om6@ ++++ZyV]/20߆|PXkz, 5cl4J T:U)CIoba^o cDg=Pj#DHaEorb9{(' ήG #}C$ 2_ e訾RvR넋U zV_O&\Z>O"ZoǕ ?}% ~tHsGN5x(p|2^z*"h $VID뢀HפUJ0" BJבa9Y@޵5=^ZN?A=% OU?J28.db!q$?{fǡqe,{9'YEz[(2SI"#G|F+ˆoY)vO\*( ScC%00X%|Rɦ_;N5XjޝEB@ 9,2Ȏ|wsNnHVZ"R wOo'"+ߪUte𔀬KsA-W0KH MLe鞏]MaXEbݱw8}>F\l{^OaEx?si}iѺ">*'ÄÈ#C4·+I&/ۺ`MS"Wq"T0<r\D0cm'w&k9@.Z/jgʵ/޲ﶖn,7N(JD5nwܘ  RHpr&0_u;T'QM?O#N;HAVY81-h`V H/n_8xR:a: c#8fNu/w,,I@t궼yod6Ip9nw֩"B=sݝqJ-nqS _/]F jUkR6BY|GN67tlh~AuyѬ]]l('z=ΰlHZ?|(SfO6vfyOnծqV=E.!zUFSH٩ĊxMof:>y2:ɹHjܙ zCmA|^\VUm"}XU <SDMYˊ 'I߃;^ dݾhV;NDY#tne\=]~.v` H$1.d$T֨@rݟC?~4T#2U2ECEڒ2r" aTCݧ{ɚ"0R f >j քlRXԗ6g+>3?!8MtQ/Ąt%O{uY@eVe~r;Ȝ]q$ br^F)IX>h1[%HÜ/Vm5 91R~$τTdU=8P?γPT K^e (V/ Σ=yiq3 5qZf5D~]P7⧔DdoDs!Y^LD%ggr9\θv?ʞ6خzh;5! qїmu^D5UP1ܳVNBTuŞ?5# J|pb:X7桋IyGἠ L;lGθ`I8?K$sܟZO+82xi `޹<^EI3(P_W56]{d.3KL}>~5gY<43" q-p;-6J*yƮC:9ٸ'䍖+T 8Z‘糧o 8Ad8ċK#Mw!7RE;}ct>;]jkS"i9tKdYAW.[XLwg$A9[Rs@7,k!#]}H<<Ed9Hb 2u .bKW'o RO A9؎B@tDJ×A ,d$\ euXfuFl$pr L,YIiVnB_˘8vPK~Hl dʡ9 .NzOךk+4zZ '}(C(:򒙵o; lqCpkKSx^nKM&]_g>B*PӦ)} =,Dj1mw#"qca0ğ6i1 Nv^-w ƱeWX,,MҤ 3 1`]TE$]rv?qx͑쵝<[q!.nh6~lޠ2beG*5 ;ގz3덄6 א9w ))_?lZ,6]:P`kj}ڸ :mƁ~;jPL^Ef Ҙ~JC|arVF0fQ&d׺]iJ^JG:6) zyÐJ{%p&@pA>,AbERB(4PE̤VRВe `2BlE ;W3ia0qB#QϠ&}!A cZ3Gw)GSj|ž.KBlhHH{oٸYȯž}/<)|e\1,D94A=Ost ,Q_ Eww'Kfci$ i$Y8ڈێUe޿5WBIw!`( ̾AƦ{Vev:@c)0+/|^Σ@X wT,hPo8yf+i_CGBNQiǾK2ጦ H5Ϊ`u)BJpo7 ŝoM1ΞSrGb. єKX!c7 34k K cķLcd{!ZYQ<NM^M#8⸒p{p]+> j*z,CdNOcYu0v!7E?jG}_;CjO\8wbu@!!Ȃ QN_E'Y\Dl/E6.ꑟ2)3iC@q;.EQƈpaAH yo Y/?4ae^:sRoW1'G>CizX{m8jȊVI#їup,r.=Wb]Xt{}zE(MqIan=leK6]@;'YZӵ#Woդi"xzO'ɇ?>ۢ1[ )rteh.1zJ Ru7p2S i%!}N! >닛5ӖV,zA3%' C>[ޓ_q}'6m30B&Im&q2Kۢ2j$v3F4^֘fj0:7E *3,9?;UTɻn?]zq&tJ[sBb#ubn^v.÷0D ˺k26u9F9) Q] D'Ht] H+‹ l'ӼpxXF[?K6WQ۲G ZH=v'R/al֤<@#S&2׉Sށ5_B֍)UMJ.mgKS˵fK2x飶GVŗ|'~xzZ% bhp|mS-`M"n$s C0T>B|OX\aBDvٷs4 kZT{']aAoIa.T6_̡qw{>P76˓5hrʞ$zyyշQ#1]AlYOEf4V>Ѳқ@{O9-}tfe~ezrFK >>Ȭtݡ97-JBTP{|AxX?}qOzm6?4#lca Xe6̫^!ENiuKv3}AtU} s <_Þeydt˔+ܝʤuI/icֆ@g_ JZ&vaXb(Z0֦d)9F7vNשۻgeg*ՋKʊE/Y( Ƿ$L/>M/e#k,}4(@ Gˤ؀mII觵$hZ_fUF F,Oه.-ی$r2ؓ@ZSDUP&(kSSaCT#M :GH֘G4V] ^W'Hlgvy 3}G=헤׻^d-HH`9GAOٰ+}mEݖ҄( km̦IVom(WLa60LJQqs4ѾbK13B- "޽ܲ|(d9/^*E(*_*)̲g$hmʏC7Sf9kВuIEe(ʲDw03M3B2 kAZďe?~ sT9(XmnEKUz\AFS D@.Y` ǾDmUcEoWU8 Xfx~],ۆELu*G9kqs%^ RMc<wM ??Ըy#lDCk#$Xqq ޳nӴ=;Ao=x6L)6B /?Qť8Hi#-WY# K?ge>~y(cNBq?=|oyxud:E1ɄGY?hi)5:Htf^ x 疏#%Uk]-S<0%q `I2eԢr|zk&خ^F4L'+H=men"Es"W_'$ÓN{0|^*=L n1y<^bnETߩ퓪ߍ9 Af;HlEj+֠`XpjwaoQ4trgO?PCLVA MэTWXLUo94l8==l'ʹ*ks!?GhNtyb۩Xϛj޺Qӄd@;-DGy|SlV劮dٌ~Q LS EKirRͱs.a04'$-V 1e=Os.Mkv]]u0.)_#^EtWOS_ѳ 7km\"b#"z$Ɗ̅oMD`و 4UKS,M _S_| 8'l_/+QJҴ9d؄⤎-CbT!L>zΌtpZΊ Z<tqX?|ޞ٦ TUHtDm3!!C~9>uto[42&I߄B[_Ž܈I20A p R wz5(ձ5dShheįbdak{.0TShdK\?'8tW&\1nZ˓-/b26mW@ <l dZ*znU&LUMmedIdFWٜN`lS.jdW8rE7FǵņesQ6D .pb8*̈"zciYC7biL"axԡ '!p2b&T̋W?ykUYr8Js3\9j)q'vg.DNGhlì枍[2,BE.7υ}|@7) x3Q'yl{3Lm?Ⱦ5{Q{'lÐ5k^l@ wXfj#pR tI"x FCip٪5(k[ܦ=zSYKU44^"@9G]թrٱ{nQ>uԏV6&{7i *; 5w\MG/ְ'𔞬x9y\dgG# Cyp֤M-cjȠLo肀5=9ȇTh_ OX_@-`xp˄M݇+ 7fi#R o,#QҚ[^:Ō]vًA X>T9ӿF&ZBM%uq-yp([`P*PDu{Uz{'d[`&EQe+S]4C^J_lِx렘D33]Q,M[=^e%dpFOظdy0'/sBRJciX,x~n\iBNF;Tu`ye, "s28_ѹc}H.-9ah7 N{{>u\&^^F K>fL  p!͑P RߩjBOpaKN-?i{]m6s<NMe17\pNN7+Im |7a'f$Z'dnCB?6H^M`kGDdb0hCg#CGpU*c Y(ZmV2;hE _*=6U̝HXm̾qjS}$*YD8o2вwTm%KH6?OrH5 };^tKY(%/S>S!\Juu<)4(ނo uTK>0(eH,yOr\`a{h"Z\zP1TJ:V@u@@נ=K/=ެЂwZm_Vt]+ ~4 hh>5-$_-t?9 +5yu\Uy['+]32ik兑JQY妃/jt!d 7;ۡpt |4l#&y9 4[쓅%@JJWO՝~XВ$GAO_ ~Mt s̞qavC?< uOnOj)5pk԰ FG\/ͫ OT(4 K$gK%TkViY͂7[+`msOCm!BtdՙSI̫$=rENY?D{OPifk 0TPUh=rC+Jϕ%% @~ Ook"!ܲBZPͼʜ0a[++<Bv [p88.i|㝌MNڡ5ZgFl R=v?Dw*zeZU]{.bqN1][m^@C8<@͚df5jbۨP0ky{/^ZO2iƐW]/i8W;C,MsWqz qT| 9;B &<XIL]J6:qp WDIrarݭ/JnM5_bNϦ ޏHou91~UFs0ivV/=\hz2L@uw]lp-le+ Y`TgunzKŧX<:#3/:Ђ!ɇ's#e1qɲ3&F%~i7}<Э-'ޱ` 2iyA](T@esচh$,e1{W<8n8ɷ,-U ޳x@u鍙wGDح=dzwd1 t\k^MQM"TyɅZ̵ak&@M<OcDq:kc*W߲/Bl,o2i Ya\] YZ