mdadm-4.2-150500.6.6.2<>,pfcp9|d9?ü>RL=n$gx0K,_T*!q0#0{mfƒeuNp:,&,kd5kQ{ )r.<~O^`0;Dq>όy}J6W^Ϊ&UVgfD%%=*x3'y5Pĩ%==s6LS̻%/u7Cd,pc>ݸwǼu+5ב>>KZ?Zd   L  ?EK }77 7 d7 @7  7 !T7"07#C7$V$x7%T%l!%!(!((8(@9)@:.@=I>I?I@IFIGI7HJ7IK7XKYK\L 7]L7^PbRhcSdSeSfSlSuS7vT wW(7xX7yX#zYlY|ZZ$Z(Z4Z8Z<ZBZCmdadm4.2150500.6.6.2Utility for configuring "MD" software RAID devicesmdadm is a program that can be used to control Linux md devices.fcs390zp325ASUSE Linux Enterprise 15SUSE LLC GPL-2.0-onlyhttps://www.suse.com/System/Basehttp://www.kernel.org/pub/linux/utils/raid/mdadm/linuxs390x if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service=${service%.*} if [ ! -e /usr/lib/systemd/system/$service ] && [ ! -e /etc/init.d/$sysv_service ]; then mkdir -p /run/systemd/rpm/needs-preset touch /run/systemd/rpm/needs-preset/$service elif [ -e /etc/init.d/$sysv_service ] && [ ! -e /var/lib/systemd/migrated/$sysv_service ]; then /usr/sbin/systemd-sysv-convert --save $sysv_service || : mkdir -p /run/systemd/rpm/needs-sysv-convert touch /run/systemd/rpm/needs-sysv-convert/$service fi done fi if [ -x /usr/bin/systemctl ]; then test -n "$FIRST_ARG" || FIRST_ARG="$1" [ -d /var/lib/systemd/migrated ] || mkdir -p /var/lib/systemd/migrated || : if [ "$YAST_IS_RUNNING" != "instsys" ]; then /usr/bin/systemctl daemon-reload || : fi for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service=${service%.*} if [ -e /run/systemd/rpm/needs-preset/$service ]; then /usr/bin/systemctl preset $service || : rm "/run/systemd/rpm/needs-preset/$service" || : elif [ -e /run/systemd/rpm/needs-sysv-convert/$service ]; then /usr/sbin/systemd-sysv-convert --apply $sysv_service || : rm "/run/systemd/rpm/needs-sysv-convert/$service" || : touch /var/lib/systemd/migrated/$sysv_service || : fi done fi mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/all PNAME=mdadm SUBPNAME= SYSC_TEMPLATE=/usr/share/fillup-templates/sysconfig.$PNAME$SUBPNAME # If template not in new /usr/share/fillup-templates, fallback to old TEMPLATE_DIR if [ ! -f $SYSC_TEMPLATE ] ; then TEMPLATE_DIR=/var/adm/fillup-templates SYSC_TEMPLATE=$TEMPLATE_DIR/sysconfig.$PNAME$SUBPNAME fi SD_NAME="" if [ -x /bin/fillup ] ; then if [ -f $SYSC_TEMPLATE ] ; then echo "Updating /etc/sysconfig/$SD_NAME$PNAME ..." mkdir -p /etc/sysconfig/$SD_NAME touch /etc/sysconfig/$SD_NAME$PNAME /bin/fillup -q /etc/sysconfig/$SD_NAME$PNAME $SYSC_TEMPLATE fi else echo "ERROR: fillup not found. This should not happen. Please compare" echo "/etc/sysconfig/$PNAME and $TEMPLATE_DIR/sysconfig.$PNAME and" echo "update by hand." fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ "$FIRST_ARG" -eq 0 -a -x /usr/bin/systemctl ]; then # Package removal, not upgrade /usr/bin/systemctl --no-reload disable mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service || : ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_STOP_ON_REMOVAL" && . /etc/sysconfig/services test "$DISABLE_STOP_ON_REMOVAL" = yes -o \ "$DISABLE_STOP_ON_REMOVAL" = 1 && exit 0 /usr/bin/systemctl stop mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ) || : fi test -n "$FIRST_ARG" || FIRST_ARG="$1" if [ $1 -eq 0 ]; then # Package removal for service in mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ; do sysv_service="${service%.*}" rm -f "/var/lib/systemd/migrated/$sysv_service" || : done fi if [ -x /usr/bin/systemctl ]; then /usr/bin/systemctl daemon-reload || : fi if [ "$FIRST_ARG" -ge 1 ]; then # Package upgrade, not uninstall if [ -x /usr/bin/systemctl ]; then ( test "$YAST_IS_RUNNING" = instsys && exit 0 test -f /etc/sysconfig/services -a \ -z "$DISABLE_RESTART_ON_UPDATE" && . /etc/sysconfig/services test "$DISABLE_RESTART_ON_UPDATE" = yes -o \ "$DISABLE_RESTART_ON_UPDATE" = 1 && exit 0 /usr/bin/systemctl try-restart mdmonitor.service mdcheck_start.service mdcheck_continue.service mdmonitor-oneshot.service ) || : fi fi mkdir -p /run/regenerate-initrd/ touch /run/regenerate-initrd/allR,,A GZ@ `@9~1vzV O--e.Vm  F?U m,A큤AAA큤A큤Afcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfcfca a fcfcfcfcfcfcfcfcfcfcfcfcfcfcfca a a fcfca fcfcfcfcfcfcde65e7c12626c8650119db1882680d4db79d46896976919e413de7261961520fbd6565d1f12c78726f95826d090e82cd2b5ec5e73db029bbc5d04191834bc6a974749acacce7cfb528b21470cec1902b761118573fe3ed5f3e3cbb27cbafbf67d789d3d1867df89d312d17cfff73b0cc4b47379486bb0ea4f059708dd2012078bd8f33c83deb95ed60e2983e2f7df2994a086e6fdd505a00f168db6ae7b856ffd3957a71e448cd8425d585405606ab1c5f27cf72aa092c0cf1a9a9fa46d2036fa73495654d7d02f0b3da7fdcbb9e6ab35e7777478818f4fb226966efd1d0ed8d1d23260664142e2def5f249899645ed5abc16fe158bf586e0ee12bc0c3b6d70c0bc69279653d690bdcccd412fb613909578910994b926dde53ad63071575f0fd615e8af9d8429de6c1a70eb418653eee2b201b8061d92526cb4b2f763be1d22287befe5e61b716be922ebd2be3bd05fc24f512082a00e38f7742cc2b7d52957bcf361de81af7cc2962d7eaf79f80ea64767390a6c9bae0d4eadda50d8589a2a179f5ab1e4c7ca00916e1444d8d47e1181ff6e9bd5fc8a511bf84a16a7ca833ee94c8d7c15150c5b9c826eb213217c30035733103349ba38d06fd88e5c6bc39c41bd0e53d55ea78b78f0b442c2ee32ac9593ade4dc3e6e2065f0984ba522e1d53b7a0597152d10e09dc4f6b5e9deb85dde04b48ca19bf458cc8e0679aa66c7bfec7a8b98a69aa04ab96fabe36591074b5106e0a6bf9a3db6b6abc3d685a20c28a71cb272af88cbfe752175388ff4e6dbf62814f03b898b9dc69bc5eec039dc61725caba71e51253838ab296f8dab313a009a7b454845537f3e18942d5aec18e32d72b3245d3f6f6fee432aeb23fdf7c0c2ad5fe2c1e197c757dcf1f8384515e66da08f4125c0a269c6a67b3757b7d9fd09e14c6f67bb8c7ff1e541d532dca4da308a09f94e7c1c57032e19e3ed4f5e8c18c5ed533e47d35d833e608cdf7804e3207ec768327b0e324eab80693a68852d342bd19285bf7356753e566c5e179f889902a174c2f7e71b4eb1b1f3781e9577564db0c7b9b1b5bafab2f6f2ce99095a3e6f6d62f227eda2151af5db24ad5e728ffc437a3d672e828a1e7b81bd7783bbb76890b029d204368a9be769d3ff580110f0e7742db48b1b026ec56a0a556e786dc763e2231d021ebcb1ac6b81b2b86c7d53a23368ba6f38b0f5f347278156f9496707ed85c848e03daf5dd08d0a66e448308ec62df3bfac5e8529ba10e077447590676b7918d24d93c8eaa4b56926b83ff31493b122e688e44fb967258a36752921e40b0e7e1ae3303a4a293d063f4b6ae0a95f2f5590fc184371cd20c6b6ac9ac0448ed2dc45a3ca9b523bfe870cc904f143139c50f827ad981314e654d39ddc46c0dd4ff25105ad19addefa46ceded4a1e13c43d45441729dcf14d6bad9e656f25779970c7da4d4620c6b9af103a91a3f2eea5729c496979766e5e0bd858c7732fc467a5756529eb357d4ed5bee9c8c234e812454211b2e12ef75a4489583dcd5828098c7845bf48876f3a2b8d66182bb0e893ddbda1237c68fd1c6cab4a9f27bc2a41b759d69136223ee282ad38013331a98c864dcd6edaee4a58f2847336eeda765be954c997b8cf79038c7fa64223c46505f1e8bdc65937ace772cf423b314c5722b29ee8a268bafb4044116175f6155f21c9e6bf843fada369fbf0fff3d0c6892ad74cce318c0521dfe2e1244449e52fde377fcc5edca1c4eea179d208945c7c3caa84969b8c5ff013505a35eeb1c1a8e09629fa471eb3b9e05ca138d68177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643efdebca020982dab2413f0e21186d8a6064fe95477c63cbe758611611fa3e34d61aa07a330c93a980cf7b290fb637202e4dacd00645b8b9d1e07a805544437d37c63974846cb9ab8815d924c11e16135957ce8883fc01f591e24776baf737eaf9f43b6c92cf23e740ed51d0b828879b46bbab0515e7611c2d11735743d7f81021c318d317bc193e07e27c83dffc45832ca1aeda1f4d99df96e79e16e41a5325c/usr/sbin/mdadm/usr/sbin/mdmonservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmdadm-4.2-150500.6.6.2.src.rpmmdadmmdadm(s390-64)@  @ @@@@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/bin/shcoreutilsdiffutilsfillupgreplibc.so.6()(64bit)libc.so.6(GLIBC_2.15)(64bit)libc.so.6(GLIBC_2.2)(64bit)libc.so.6(GLIBC_2.2.3)(64bit)libc.so.6(GLIBC_2.27)(64bit)libc.so.6(GLIBC_2.28)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.3.3)(64bit)libc.so.6(GLIBC_2.3.4)(64bit)libc.so.6(GLIBC_2.4)(64bit)libc.so.6(GLIBC_2.7)(64bit)libc.so.6(GLIBC_2.8)(64bit)libdl.so.2()(64bit)libdl.so.2(GLIBC_2.2)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2)(64bit)libudev.so.1()(64bit)libudev.so.1(LIBUDEV_183)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3f@dp@dFo@d(cc@c\c\cc@c(Yb@bb4t@aa]a0`f@`f@`Q@_T_v@__K_c^@^@^}^^F^^F^^F^^F^=Q@]{@\@\b@\\U@[$@[dC[dC[dC[3|@Z1@Z~ZTZLZ%8Z Z@Z ,@Y@X @WA@W>@W)@Vii@UUAUWU@U@TPTи@TWn@colyli@suse.decolyli@suse.decolyli@suse.decolyli@suse.decolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.commwilck@suse.comsweiberg@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcallumjfarmer13@gmail.comcolyli@suse.comcolyli@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comjengelh@inai.denfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comgqjiang@suse.comcolyli@suse.comzlliu@suse.comcolyli@suse.comcolyli@suse.comgqjiang@suse.comrbrown@suse.comgqjiang@suse.comcolyli@suse.comnfbrown@suse.combill@merriam.netneilb@suse.comneilb@suse.comtiwai@suse.dedimstar@opensuse.orgdimstar@opensuse.orgnfbrown@suse.comnfbrown@suse.comwerner@suse.demgorse@suse.comnfbrown@suse.comnfbrown@suse.com- mdadm: define DEV_MD_DIR (bsc#1226413) 0062-mdadm-define-DEV_MD_DIR.patch - mdadm: refactor ident->name handling (bsc#1226413) 0063-mdadm-refactor-ident-name-handling.patch - mdadm: Follow POSIX Portable Character Set (bsc#1226413) 0064-mdadm-Follow-POSIX-Portable-Character-Set.patch - Detail: remove duplicated code (bsc#1226413) 0065-Detail-remove-duplicated-code.patch - mdadm: Fix native --detail --export (bsc#1226413) 0066-mdadm-Fix-native-detail-export.patch- Grow: fix possible memory leak (bsc#1208618) 0060-Grow-fix-possible-memory-leak.patch - Grow: fix can't change bitmap type from none to clustered (bsc#1208618) 0061-Grow-fix-can-t-change-bitmap-type-from-none-to-clustered.patch - Use source code mdadm-4.2.tar.xz from kernel.org version for checksum - mdadm-4.2.tar.xz- Fixes for mdmon to ensure it run at the right time in the fight mount namespace. This fixes various problems with IMSM raid arrays in 15-SP4 (bsc#1205493, bsc#1205830) - mdmon: fix segfault 0052-mdmon-fix-segfault.patch - util: remove obsolete code from get_md_name 0053-util-remove-obsolete-code-from-get_md_name.patch - mdmon: don't test both 'all' and 'container_name'. 0054-mdmon-don-t-test-both-all-and-container_name.patch - mdmon: change systemd unit file to use --foreground 0055-mdmon-change-systemd-unit-file-to-use-foreground.patch - mdmon: Remove need for KillMode=none 0056-mdmon-Remove-need-for-KillMode-none.patch - mdmon: Improve switchroot interactions. 0057-mdmon-Improve-switchroot-interactions.patch - mdopen: always try create_named_array() 0058-mdopen-always-try-create_named_array.patch - Improvements for IMSM_NO_PLATFORM testing 0059-Improvements-for-IMSM_NO_PLATFORM-testing.patch- sysconfig.mdadm: Remove ServiceRestart line to mdadm since there is not such systemd service. (bsc#1203491)- mdadm.spec: create the following symbolic link in /sbin for compatibility, /sbin/mdadm -> /usr/sbin/mdadm /sbin/mdmon -> /usr/sbin/mdmon (jsc#PED-1009, jsc#PED-947)- Drop the patch which is reported as regression by upstream developer (bsc#1206139) 0045-Manage-Block-unsafe-member-failing.patch - Add jsc#PED-947 together with jsc#PED-1009 in mdadm.changes, they are both the requirement to update mdadm to latest upstream state via different requestors.- Call mdadm_env.sh from /usr/libexec/mdadm (bsc#1111960, bsc#1202090) 1004-call-mdadm_env.sh-from-usr-libexec-mdadm.patch - The patch (bsc#1111960) which fixed rpm check failure is replaced by the above patch, 1004-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch.- mdadm.spec: remove "PreReq: %{_sbindir}/mkinitrd" as it is unnecessary now. (bsc#1202352)- Update mdadm package to latest mdadm since mdadm-4.2 (jsc#PED-1009, jsc#PED-947) * Only patches directly change runtime programs included, - Unify error message. 0001-Unify-error-message.patch - mdadm: Fix double free 0002-mdadm-Fix-double-free.patch - Grow_reshape: Add r0 grow size error message and update 0003-Grow_reshape-Add-r0-grow-size-error-message-and-upda.patch - udev: adapt rules to systemd v247 0004-udev-adapt-rules-to-systemd-v247.patch - Replace error prone signal() with sigaction() 0005-Replace-error-prone-signal-with-sigaction.patch - mdadm: Respect config file location in man 0006-mdadm-Respect-config-file-location-in-man.patch - mdadm: Update ReadMe 0007-mdadm-Update-ReadMe.patch - mdadm: Update config man regarding default files and 0008-mdadm-Update-config-man-regarding-default-files-and-.patch - mdadm: Update config manual 0009-mdadm-Update-config-manual.patch - Create, Build: use default_layout() 0010-Create-Build-use-default_layout.patch - mdadm: add map_num_s() 0011-mdadm-add-map_num_s.patch - mdmon: Stop parsing duplicate options 0012-mdmon-Stop-parsing-duplicate-options.patch - Grow: block -n on external volumes. 0013-Grow-block-n-on-external-volumes.patch - Incremental: Fix possible memory and resource leaks 0014-Incremental-Fix-possible-memory-and-resource-leaks.patch - Mdmonitor: Fix segfault 0015-Mdmonitor-Fix-segfault.patch - Mdmonitor: Improve logging method 0016-Mdmonitor-Improve-logging-method.patch - Fix possible NULL ptr dereferences and memory leaks 0017-Fix-possible-NULL-ptr-dereferences-and-memory-leaks.patch - imsm: Remove possibility for get_imsm_dev to return 0018-imsm-Remove-possibility-for-get_imsm_dev-to-return-N.patch - Revert "mdadm: fix coredump of mdadm --monitor -r" 0019-Revert-mdadm-fix-coredump-of-mdadm-monitor-r.patch - util: replace ioctl use with function 0020-util-replace-ioctl-use-with-function.patch - mdadm/super1: restore commit 45a87c2f31335 to fix 0021-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch - imsm: introduce get_disk_slot_in_dev() 0022-imsm-introduce-get_disk_slot_in_dev.patch - imsm: use same slot across container 0023-imsm-use-same-slot-across-container.patch - imsm: block changing slots during creation 0024-imsm-block-changing-slots-during-creation.patch - mdadm: block update=ppl for non raid456 levels 0025-mdadm-block-update-ppl-for-non-raid456-levels.patch - mdadm: Fix array size mismatch after grow 0026-mdadm-Fix-array-size-mismatch-after-grow.patch - mdadm: Remove dead code in imsm_fix_size_mismatch 0027-mdadm-Remove-dead-code-in-imsm_fix_size_mismatch.patch - Monitor: use devname as char array instead of pointer 0028-Monitor-use-devname-as-char-array-instead-of-pointer.patch - Monitor: use snprintf to fill device name 0029-Monitor-use-snprintf-to-fill-device-name.patch - Makefile: Don't build static build with everything and 0030-Makefile-Don-t-build-static-build-with-everything-an.patch - DDF: Cleanup validate_geometry_ddf_container() 0031-DDF-Cleanup-validate_geometry_ddf_container.patch - DDF: Fix NULL pointer dereference in 0032-DDF-Fix-NULL-pointer-dereference-in-validate_geometr.patch - mdadm/Grow: Fix use after close bug by closing after 0033-mdadm-Grow-Fix-use-after-close-bug-by-closing-after-.patch - monitor: Avoid segfault when calling NULL 0034-monitor-Avoid-segfault-when-calling-NULL-get_bad_blo.patch - mdadm: Fix mdadm -r remove option regression 0035-mdadm-Fix-mdadm-r-remove-option-regression.patch - mdadm: Fix optional --write-behind parameter 0036-mdadm-Fix-optional-write-behind-parameter.patch - mdadm: Replace obsolete usleep with nanosleep 0037-mdadm-Replace-obsolete-usleep-with-nanosleep.patch - mdadm: remove symlink option 0038-mdadm-remove-symlink-option.patch - mdadm: move data_offset to struct shape 0039-mdadm-move-data_offset-to-struct-shape.patch - mdadm: Don't open md device for CREATE and ASSEMBLE 0040-mdadm-Don-t-open-md-device-for-CREATE-and-ASSEMBLE.patch - Grow: Split Grow_reshape into helper function 0041-Grow-Split-Grow_reshape-into-helper-function.patch - Assemble: check if device is container before 0042-Assemble-check-if-device-is-container-before-schedul.patch - super1: report truncated device 0043-super1-report-truncated-device.patch - mdadm: Correct typos, punctuation and grammar in man 0044-mdadm-Correct-typos-punctuation-and-grammar-in-man.patch - Manage: Block unsafe member failing 0045-Manage-Block-unsafe-member-failing.patch - Monitor: Fix statelist memory leaks 0046-Monitor-Fix-statelist-memory-leaks.patch - mdadm: added support for Intel Alderlake RST on VMD 0047-mdadm-added-support-for-Intel-Alderlake-RST-on-VMD-p.patch - mdadm: Add Documentation entries to systemd services 0048-mdadm-Add-Documentation-entries-to-systemd-services.patch - ReadMe: fix command-line help 0049-ReadMe-fix-command-line-help.patch - mdadm: replace container level checking with inline 0050-mdadm-replace-container-level-checking-with-inline.patch - Mdmonitor: Omit non-md devices 0051-Mdmonitor-Omit-non-md-devices.patch - Remove the following in house patch 1004-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch because upstream merged version added in as 0021-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch - Rename 0000-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch to 1004-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch. - Update mdadm package to mdadm-4.2 (jsc#PED-1009, jsc#PED-947) All important modifications since previous update to mdadm-4.2 are listed here. * The patches about Intel Matrix Storage Manager (including VROC support), - super-intel.c: Handle errors from calls to get_dev_sector_size() - imsm: change wrong size verification - imsm: add generic method to resolve "device" links - imsm: add devpath_to_char method - imsm: Limit support to the lowest namespace - imsm: correct offset for 4k disks in --examine output - imsm: Fix possible memory leaks and refactor freeing struct dl - imsm: fix num_data_stripes after raid0 takeover - imsm: introduce helpers to manage file descriptors - imsm: free allocated memory in imsm_fix_size_mismatch - imsm: assert if there is migration but prev_map doesn't exist * The patches to fix program issues, - mdadm/super1: It needs to specify int32 for bitmap_offset - Fix memory leak after "mdadm --detail" - Utils: Change sprintf to snprintf - mdadm: fix coredump of mdadm --monitor -r - Fix error message when creating raid 4, 5 and 10 - Fix buffer size warning for strcp - Fix potential overlap dest buffer - Correct checking if file descriptors are valid - Monitor: print message before quit for no array to monitor * Improvement or bug fixes for mdadm itself, - Assemble: skip devices that don't match uuid instead of aborting the assembly. - Assemble: apply sysfs rules - Assemble: start dirty and degraded array. - Incremental: Close unclosed mdfd in IncrementalScan() - Monitor: make libudev dependency optional - Manage: Call validate_geometry when adding drive to external container - Remove Spare drives line from details for external metadata - Don't associate spares with other arrays during RAID Examine - Add error handling for chunk size in RAID1 - Add monitor delay parameter to mdadm.conf - disallow create or grow clustered bitmap with writemostly set - mdadm/Detail: Can't show container name correctly when unpluging disks - mdadm: block creation with long names - mdadm: fix growing containers - Remove the following patches because they are all included in mdadm-4.2, - 0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch - 0002-Document-PART-POLICY-lines.patch - 0003-policy-support-devices-with-multiple-paths.patch - 0004-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch - 0005-Monitor-add-system-timer-to-run-oneshot-periodically.patch - 0006-imsm-update-metadata-correctly-while-raid10-double-d.patch - 0007-Assemble-mask-FAILFAST-and-WRITEMOSTLY-flags-when-fi.patch - 0008-Grow-avoid-overflow-in-compute_backup_blocks.patch - 0009-Grow-report-correct-new-chunk-size.patch - 0010-policy.c-prevent-NULL-pointer-referencing.patch - 0012-policy.c-Fix-for-compiler-error.patch - 0013-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - 0014-imsm-fix-reshape-for-2TB-drives.patch - 0015-Fix-spelling-typos.patch - 0016-Detail.c-do-not-skip-first-character-when-calling-xs.patch - 0018-Fix-reshape-for-decreasing-data-offset.patch - 0019-mdadm-tests-add-one-test-case-for-failfast-of-raid1.patch - 0020-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch - 0021-mdmon-wait-for-previous-mdmon-to-exit-during-takeove.patch - 0022-Assemble-Fix-starting-array-with-initial-reshape-che.patch - 0023-add-missing-units-to-examine.patch - 0024-imsm-fix-spare-activation-for-old-matrix-arrays.patch - 0025-Create-Block-rounding-size-to-max.patch - 0026-udev-Add-udev-rules-to-create-by-partuuid-for-md-dev.patch - 0027-mdmon-fix-wrong-array-state-when-disk-fails-during-m.patch - 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch - 0029-super-intel-Fix-issue-with-abs-being-irrelevant.patch - 0030-mdadm.h-Introduced-unaligned-get-put-_unaligned-16-3.patch - 0031-super-intel-Use-put_unaligned-in-split_ull.patch - 0032-mdadm-load-default-sysfs-attributes-after-assemblati.patch - 0033-mdadm.h-include-sysmacros.h-unconditionally.patch - 0034-mdadm-add-no-devices-to-avoid-component-devices-deta.patch - 0035-udev-add-no-devices-option-for-calling-mdadm-detail.patch - 0036-imsm-close-removed-drive-fd.patch - 0037-mdadm-check-value-returned-by-snprintf-against-error.patch - 0038-mdadm-Introduce-new-array-state-broken-for-raid0-lin.patch - 0039-mdadm-force-a-uuid-swap-on-big-endian.patch - 0040-mdadm-md.4-add-the-descriptions-for-bitmap-sysfs-nod.patch - 0041-Init-devlist-as-an-array.patch - 0042-Don-t-need-to-check-recovery-after-re-add-when-no-I-.patch - 0043-udev-allow-for-udev-attribute-reading-bug.patch - 0044-imsm-save-current_vol-number.patch - 0045-imsm-allow-to-specify-second-volume-size.patch - 0046-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch - 0050-mdcheck-use-to-pass-variable-to-mdcheck.patch - 0051-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch - 0052-super-intel-don-t-mark-structs-packed-unnecessarily.patch - 0053-Manage-Remove-the-legacy-code-for-md-driver-prior-to.patch - 0054-Remove-last-traces-of-HOT_ADD_DISK.patch - 0055-Fix-up-a-few-formatting-issues.patch - 0056-Remove-unused-code.patch - 0057-imsm-return-correct-uuid-for-volume-in-detail.patch - 0058-imsm-Change-the-way-of-printing-nvme-drives-in-detai.patch - 0059-Create-add-support-for-RAID0-layouts.patch - 0060-Assemble-add-support-for-RAID0-layouts.patch - 0061-Respect-CROSS_COMPILE-when-CC-is-the-default.patch - 0062-Change-warning-message.patch - 0063-mdcheck-service-can-t-start-succesfully-because-of-s.patch - 0064-imsm-Update-grow-manual.patch - 0065-Add-support-for-Tebibytes.patch - 0066-imsm-fill-working_disks-according-to-metadata.patch - 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch - 0068-Remove-the-legacy-whitespace.patch - 0069-imsm-pass-subarray-id-to-kill_subarray-function.patch - 0070-imsm-Remove-dump-restore-implementation.patch - 0071-Monitor-improve-check_one_sharer-for-checking-duplic.patch - 0072-Detail-adding-sync-status-for-cluster-device.patch - 0073-imsm-Correct-minimal-device-size.patch - 0074-Detail-show-correct-bitmap-info-for-cluster-raid-dev.patch - 0075-imsm-support-the-Array-Creation-Time-field-in-metada.patch - 0076-imsm-show-Subarray-and-Volume-ID-in-examine-output.patch - 0077-udev-Ignore-change-event-for-imsm.patch - 0078-Manage-imsm-Write-metadata-before-add.patch - 0079-Assemble-print-error-message-if-mdadm-fails-assembli.patch - 0080-clean-up-meaning-of-small-typo.patch - 0081-Assemble.c-respect-force-flag.patch - 0082-mdcheck-Log-when-done.patch - 0083-Makefile-add-EXTRAVERSION-support.patch - 0084-uuid.c-split-uuid-stuffs-from-util.c.patch - 0085-Include-count-for-0-character-when-using-strncpy-to-.patch - 0086-restripe-fix-ignoring-return-value-of-read-and-lseek.patch - 0087-Block-overwriting-existing-links-while-manual-assemb.patch - 0088-Detect-too-small-device-error-rather-than-underflow-.patch - 0089-Use-more-secure-HTTPS-URLs.patch - 0090-Update-link-to-Intel-page-for-IMSM.patch - 0091-mdadm-Grow-prevent-md-s-fd-from-being-occupied-durin.patch - 0092-Specify-nodes-number-when-updating-cluster-nodes.patch - 0093-mdadm-md.4-update-path-to-in-kernel-tree-documentati.patch - 0094-manual-update-examine-badblocks.patch - 0095-Detail-show-correct-raid-level-when-the-array-is-ina.patch - 0096-Don-t-create-bitmap-for-raid5-with-journal-disk.patch - 0097-Monitor-refresh-mdstat-fd-after-select.patch - 0098-Monitor-stop-notifing-about-containers.patch - 0099-mdmonitor-set-small-delay-once.patch - 0100-Check-if-other-Monitor-instance-running-before-fork.patch - 0101-Super1-allow-RAID0-layout-setting-to-be-removed.patch - 0102-Detail-fix-segfault-during-IMSM-raid-creation.patch - 0103-Create.c-close-mdfd-and-generate-uevent.patch - 0104-imsm-update-num_data_stripes-according-to-dev_size.patch - 0105-imsm-remove-redundant-calls-to-imsm_get_map.patch - 0106-Monitor-don-t-use-default-modes-when-creating-a-file.patch - 0107-imsm-limit-support-to-first-NVMe-namespace.patch - 0108-mdadm-Unify-forks-behaviour.patch - 0109-mdadm-Detail-show-correct-state-for-clustered-array.patch - 0110-Make-target-to-install-binaries-only.patch - 0111-udev-start-grow-service-automatically.patch - 0112-Incremental-Remove-redundant-spare-movement-logic.patch - 0113-Dump-get-stat-from-a-wrong-metadata-file-when-restor.patch - 0114-super1-fix-Floating-point-exception.patch - 0115-super1.c-avoid-useless-sync-when-bitmap-switches-fro.patch - 0116-imsm-nvme-multipath-support.patch - 0117-Grow-be-careful-of-corrupt-dev_roles-list.patch - 0118-Remove-Spare-drives-line-from-details-for-external-m.patch - 0119-Don-t-associate-spares-with-other-arrays-during-RAID.patch - 0120-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch - 0121-imsm-support-for-third-Sata-controller.patch - The patch from SLE15-SP4 is removed because it is in mdadm-4.2 upstream already, - Monitor: print message before quit for no array to monitor (bsc#1183229) 0120-Monitor-print-message-before-quit-for-no-array-to-mo.patch- mdadm.spec: add EXTRAVERSION string to make command line (jsc#SLE-24761, bsc#1193566)- imsm: support for third Sata controller (bsc#1201297) 0121-imsm-support-for-third-Sata-controller.patch - mdadm: enable Intel Alderlake RSTe configuration (bsc#1201297) 1005-mdadm-enable-Intel-Alderlake-RSTe-configuration.patch- resource RAID failed during cluster patch, Mdadm gets floating point error (bsc#1197158) 1004-mdadm-super1-restore-commit-45a87c2f31335-to-fix-clu.patch- skip RAID assembly if DM_UDEV_DISABLE_OTHER_RULES_FLAG (bsc#1196054) * Add 0120-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch- Use %{_sbindir} for prerequisite of mkinitrd to work with usrmerge of dracut-mkinitrd-deprecated- Install mdadm in _sbindir rather than /sbin. This is more appropriate now that we have a merged-/usr. (bsc#1191076)- Remove Spare drives line from details for external metadata (bsc#1180661, bsc#1182642) 0118-Remove-Spare-drives-line-from-details-for-external-m.patch - Don't associate spares with other arrays during RAID Examine (bsc#1180661, bsc#1182642) 0119-Don-t-associate-spares-with-other-arrays-during-RAID.patch- Grow: be careful of corrupt dev_roles list (bsc#1181619) 0117-Grow-be-careful-of-corrupt-dev_roles-list.patch- imsm: nvme multipath support (bsc#1175758) 0116-imsm-nvme-multipath-support.patch- cluster-md/mdadm : avoid useless re-sync (bsc#1181341) 0114-super1-fix-Floating-point-exception.patch 0115-super1.c-avoid-useless-sync-when-bitmap-switches-fro.patch- Incremental: Remove redundant spare movement logic (jsc#SLE-13700, bsc#1180220) 0112-Incremental-Remove-redundant-spare-movement-logic.patch - Dump: get stat from a wrong metadata file when restoring metadata (jsc#SLE-13700) 0113-Dump-get-stat-from-a-wrong-metadata-file-when-restor.patch- There are some important fixes merged in mdadm upstream which should go with jsc#SLE-13700. This is the update from upstream mdadm including the important fixes we should have. - Detail: show correct raid level when the array is inactive (jsc#SLE-13700) 0095-Detail-show-correct-raid-level-when-the-array-is-ina.patch - Don't create bitmap for raid5 with journal disk (jsc#SLE-13700) 0096-Don-t-create-bitmap-for-raid5-with-journal-disk.patch - Monitor: refresh mdstat fd after select (jsc#SLE-13700) 0097-Monitor-refresh-mdstat-fd-after-select.patch - Monitor: stop notifing about containers. (jsc#SLE-13700) 0098-Monitor-stop-notifing-about-containers.patch - mdmonitor: set small delay once (jsc#SLE-13700) 0099-mdmonitor-set-small-delay-once.patch - Check if other Monitor instance running before fork. (jsc#SLE-13700) 0100-Check-if-other-Monitor-instance-running-before-fork.patch - Super1: allow RAID0 layout setting to be removed. (jsc#SLE-13700) 0101-Super1-allow-RAID0-layout-setting-to-be-removed.patch - Detail: fix segfault during IMSM raid creation (jsc#SLE-13700) 0102-Detail-fix-segfault-during-IMSM-raid-creation.patch - Create.c: close mdfd and generate uevent (jsc#SLE-13700) 0103-Create.c-close-mdfd-and-generate-uevent.patch - imsm: update num_data_stripes according to dev_size (jsc#SLE-13700) 0104-imsm-update-num_data_stripes-according-to-dev_size.patch - imsm: remove redundant calls to imsm_get_map (jsc#SLE-13700) 0105-imsm-remove-redundant-calls-to-imsm_get_map.patch - Monitor: don't use default modes when creating a file (jsc#SLE-13700) 0106-Monitor-don-t-use-default-modes-when-creating-a-file.patch - imsm: limit support to first NVMe namespace (jsc#SLE-13700) 0107-imsm-limit-support-to-first-NVMe-namespace.patch - mdadm: Unify forks behaviour (jsc#SLE-13700) 0108-mdadm-Unify-forks-behaviour.patch - mdadm/Detail: show correct state for clustered array (jsc#SLE-13700) 0109-mdadm-Detail-show-correct-state-for-clustered-array.patch - Make target to install binaries only (jsc#SLE-13700) 0110-Make-target-to-install-binaries-only.patch - udev: start grow service automatically (jsc#SLE-13700) 0111-udev-start-grow-service-automatically.patch- Update to latest mdadm which is requested by jsc#SLE-13700 from partners. Mostly the purpose is for latest Intel IMSM raid support, while some other fixes are important too. - imsm: Correct minimal device size (jsc#SLE-13700) 0073-imsm-Correct-minimal-device-size.patch - Detail: show correct bitmap info for cluster raid device (jsc#SLE-13700) 0074-Detail-show-correct-bitmap-info-for-cluster-raid-dev.patch - imsm: support the Array Creation Time field in metadata (jsc#SLE-13700) 0075-imsm-support-the-Array-Creation-Time-field-in-metada.patch - imsm: show Subarray and Volume ID in --examine output (jsc#SLE-13700) 0076-imsm-show-Subarray-and-Volume-ID-in-examine-output.patch - udev: Ignore change event for imsm (jsc#SLE-13700) 0077-udev-Ignore-change-event-for-imsm.patch - Manage, imsm: Write metadata before add (jsc#SLE-13700) 0078-Manage-imsm-Write-metadata-before-add.patch - Assemble: print error message if mdadm fails assembling with --uuid option (jsc#SLE-13700) 0079-Assemble-print-error-message-if-mdadm-fails-assembli.patch - clean up meaning of small typo (jsc#SLE-13700) 0080-clean-up-meaning-of-small-typo.patch - Assemble.c: respect force flag (jsc#SLE-13700) 0081-Assemble.c-respect-force-flag.patch - mdcheck: Log when done (jsc#SLE-13700) 0082-mdcheck-Log-when-done.patch - Makefile: add EXTRAVERSION support (jsc#SLE-13700) 0083-Makefile-add-EXTRAVERSION-support.patch - uuid.c: split uuid stuffs from util.c (jsc#SLE-13700) 0084-uuid.c-split-uuid-stuffs-from-util.c.patch - Include count for \0 character when using strncpy to implement strdup. (jsc#SLE-13700) 0085-Include-count-for-0-character-when-using-strncpy-to-.patch - restripe: fix ignoring return value of read and lseek (jsc#SLE-13700) 0086-restripe-fix-ignoring-return-value-of-read-and-lseek.patch - Block overwriting existing links while manual assembly (jsc#SLE-13700) 0087-Block-overwriting-existing-links-while-manual-assemb.patch - Detect too-small device: error rather than underflow/crash (jsc#SLE-13700) 0088-Detect-too-small-device-error-rather-than-underflow-.patch - Use more secure HTTPS URLs (jsc#SLE-13700) 0089-Use-more-secure-HTTPS-URLs.patch - Update link to Intel page for IMSM (jsc#SLE-13700) 0090-Update-link-to-Intel-page-for-IMSM.patch - mdadm/Grow: prevent md's fd from being occupied during delayed time (jsc#SLE-13700) 0091-mdadm-Grow-prevent-md-s-fd-from-being-occupied-durin.patch - Specify nodes number when updating cluster nodes (jsc#SLE-13700) 0092-Specify-nodes-number-when-updating-cluster-nodes.patch - mdadm/md.4: update path to in-kernel-tree documentation (jsc#SLE-13700) 0093-mdadm-md.4-update-path-to-in-kernel-tree-documentati.patch - manual: update --examine-badblocks (jsc#SLE-13700) 0094-manual-update-examine-badblocks.patch- mdadm: treat the Dell softraid array as local array (bsc#1175004) 1003-mdadm-treat-the-Dell-softraid-array-as-local-array.patch- Fixes for %_libexecdir changing to /usr/libexec(bsc#1174075)- OnCalendar format fix of mdcheck_start.timer (bsc#1173137) 1002-OnCalendar-format-fix-of-mdcheck_start-timer.patch- Detail: adding sync status for cluster device (bsc#1163727) 0072-Detail-adding-sync-status-for-cluster-device.patch - Monitor: improve check_one_sharer() for checking duplicated process (bsc#1168953) 0071-Monitor-improve-check_one_sharer-for-checking-duplic.patch- Don't list XX@.services even for sevice_del_preun They cannot be stopped without an instance name, so there is no value in listing them, and it causes and error with "rpm -e mdadm --nodeps". (bsc#1093163)- Update for latest mdadm-4.1+ patches, this is required by jsc#SLE-10078 and jsc#SLE-9348. Mostly the purpose is for latest Intel IMSM raid support. The following patches also include previous patches with new re-ordered prefix numbers. - Makefile: install mdadm_env.sh to /usr/lib/mdadm (bsc#1111960) 0000-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch - Assemble: keep MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY flag (jsc#SLE-10078, jsc#SLE-9348) 0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch - Document PART-POLICY lines (jsc#SLE-10078, jsc#SLE-9348) 0002-Document-PART-POLICY-lines.patch - policy: support devices with multiple paths. (jsc#SLE-10078, jsc#SLE-9348) 0003-policy-support-devices-with-multiple-paths.patch - mdcheck: add systemd unit files to run mdcheck. (bsc#1115407) 0004-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch - Monitor: add system timer to run --oneshot periodically (bsc#1115407) 0005-Monitor-add-system-timer-to-run-oneshot-periodically.patch - imsm: update metadata correctly while raid10 double (jsc#SLE-10078, jsc#SLE-9348) 0006-imsm-update-metadata-correctly-while-raid10-double-d.patch - Assemble: mask FAILFAST and WRITEMOSTLY flags when finding (jsc#SLE-10078, jsc#SLE-9348) 0007-Assemble-mask-FAILFAST-and-WRITEMOSTLY-flags-when-fi.patch - Grow: avoid overflow in compute_backup_blocks() (jsc#SLE-10078, jsc#SLE-9348) 0008-Grow-avoid-overflow-in-compute_backup_blocks.patch - Grow: report correct new chunk size. (jsc#SLE-10078, jsc#SLE-9348) 0009-Grow-report-correct-new-chunk-size.patch - policy.c: prevent NULL pointer referencing (bsc#1106078) 0010-policy.c-prevent-NULL-pointer-referencing.patch - policy.c: Fix for compiler error (jsc#SLE-10078, jsc#SLE-9348) 0012-policy.c-Fix-for-compiler-error.patch - imsm: finish recovery when drive with rebuild fails (bsc#1126975) 0013-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - imsm: fix reshape for >2TB drives (jsc#SLE-10078, jsc#SLE-9348) 0014-imsm-fix-reshape-for-2TB-drives.patch - Fix spelling typos. (jsc#SLE-10078, jsc#SLE-9348) 0015-Fix-spelling-typos.patch - Detail.c: do not skip first character when calling xstrdup in Detail() (bsc#1123814) 0016-Detail.c-do-not-skip-first-character-when-calling-xs.patch - Fix reshape for decreasing data offset (jsc#SLE-10078, jsc#SLE-9348) 0018-Fix-reshape-for-decreasing-data-offset.patch - mdadm/tests: add one test case for failfast of raid1 (jsc#SLE-10078, jsc#SLE-9348) 0019-mdadm-tests-add-one-test-case-for-failfast-of-raid1.patch - mdmon: don't attempt to manage new arrays when terminating (bsc#1127526) 0020-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch - mdmon: wait for previous mdmon to exit during takeover (jsc#SLE-10078, jsc#SLE-9348) 0021-mdmon-wait-for-previous-mdmon-to-exit-during-takeove.patch - Assemble: Fix starting array with initial reshape checkpoint (jsc#SLE-10078, jsc#SLE-9348) 0022-Assemble-Fix-starting-array-with-initial-reshape-che.patch - add missing units to --examine (jsc#SLE-10078, jsc#SLE-9348) 0023-add-missing-units-to-examine.patch - imsm: fix spare activation for old matrix arrays (jsc#SLE-10078, jsc#SLE-9348) 0024-imsm-fix-spare-activation-for-old-matrix-arrays.patch - Create: Block rounding size to max (jsc#SLE-10078, jsc#SLE-9348) 0025-Create-Block-rounding-size-to-max.patch - udev: Add udev rules to create by-partuuid for md device (jsc#SLE-10078, jsc#SLE-9348) 0026-udev-Add-udev-rules-to-create-by-partuuid-for-md-dev.patch - mdmon: fix wrong array state when disk fails during mdmon (jsc#SLE-10078, jsc#SLE-9348) 0027-mdmon-fix-wrong-array-state-when-disk-fails-during-m.patch - Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch - super-intel: Fix issue with abs() being irrelevant (jsc#SLE-10078, jsc#SLE-9348) 0029-super-intel-Fix-issue-with-abs-being-irrelevant.patch - mdadm.h: Introduced unaligned {get,put}_unaligned{16,32}() (jsc#SLE-10078, jsc#SLE-9348) 0030-mdadm.h-Introduced-unaligned-get-put-_unaligned-16-3.patch - super-intel: Use put_unaligned in split_ull (jsc#SLE-10078, jsc#SLE-9348) 0031-super-intel-Use-put_unaligned-in-split_ull.patch - mdadm: load default sysfs attributes after assemblation (jsc#SLE-10078, jsc#SLE-9348) 0032-mdadm-load-default-sysfs-attributes-after-assemblati.patch - mdadm.h: include sysmacros.h unconditionally (jsc#SLE-10078, jsc#SLE-9348) 0033-mdadm.h-include-sysmacros.h-unconditionally.patch - mdadm: add --no-devices to avoid component devices detail (bsc#1139709) 0034-mdadm-add-no-devices-to-avoid-component-devices-deta.patch - udev: add --no-devices option for calling 'mdadm (bsc#1139709) 0035-udev-add-no-devices-option-for-calling-mdadm-detail.patch - imsm: close removed drive fd. (jsc#SLE-10078, jsc#SLE-9348) 0036-imsm-close-removed-drive-fd.patch - mdadm: check value returned by snprintf against errors (jsc#SLE-10078, jsc#SLE-9348) 0037-mdadm-check-value-returned-by-snprintf-against-error.patch - mdadm: Introduce new array state 'broken' for raid0/linear (jsc#SLE-10078, jsc#SLE-9348) 0038-mdadm-Introduce-new-array-state-broken-for-raid0-lin.patch - mdadm: force a uuid swap on big endian (jsc#SLE-10078, jsc#SLE-9348) 0039-mdadm-force-a-uuid-swap-on-big-endian.patch - mdadm/md.4: add the descriptions for bitmap sysfs nodes (jsc#SLE-10078, jsc#SLE-9348) 0040-mdadm-md.4-add-the-descriptions-for-bitmap-sysfs-nod.patch - Init devlist as an array (jsc#SLE-10078, jsc#SLE-9348) 0041-Init-devlist-as-an-array.patch - Don't need to check recovery after re-add when no I/O writes (jsc#SLE-10078, jsc#SLE-9348) 0042-Don-t-need-to-check-recovery-after-re-add-when-no-I-.patch - udev: allow for udev attribute reading bug. (jsc#SLE-10078, jsc#SLE-9348) 0043-udev-allow-for-udev-attribute-reading-bug.patch - imsm: save current_vol number (jsc#SLE-10078, jsc#SLE-9348) 0044-imsm-save-current_vol-number.patch - imsm: allow to specify second volume size (jsc#SLE-10078, jsc#SLE-9348) 0045-imsm-allow-to-specify-second-volume-size.patch - mdcheck: when mdcheck_start is enabled, enable (bsc#1153258) 0046-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch - mdcheck: use ${} to pass variable to mdcheck (bsc#1153258) 0050-mdcheck-use-to-pass-variable-to-mdcheck.patch - SUSE-mdadm_env.sh: handle MDADM_CHECK_DURATION (bsc#1153258) 0051-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch - super-intel: don't mark structs 'packed' unnecessarily (jsc#SLE-10078, jsc#SLE-9348) 0052-super-intel-don-t-mark-structs-packed-unnecessarily.patch - Manage: Remove the legacy code for md driver prior to 0.90.03 (jsc#SLE-10078, jsc#SLE-9348) 0053-Manage-Remove-the-legacy-code-for-md-driver-prior-to.patch - Remove last traces of HOT_ADD_DISK (jsc#SLE-10078, jsc#SLE-9348) 0054-Remove-last-traces-of-HOT_ADD_DISK.patch - Fix up a few formatting issues (jsc#SLE-10078, jsc#SLE-9348) 0055-Fix-up-a-few-formatting-issues.patch - Remove unused code (jsc#SLE-10078, jsc#SLE-9348) 0056-Remove-unused-code.patch - imsm: return correct uuid for volume in detail (jsc#SLE-10078, jsc#SLE-9348) 0057-imsm-return-correct-uuid-for-volume-in-detail.patch - imsm: Change the way of printing nvme drives in (jsc#SLE-10078, jsc#SLE-9348) 0058-imsm-Change-the-way-of-printing-nvme-drives-in-detai.patch - Create: add support for RAID0 layouts. (bsc#1162479) 0059-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0060-Assemble-add-support-for-RAID0-layouts.patch - Respect $(CROSS_COMPILE) when $(CC) is the default (jsc#SLE-10078, jsc#SLE-9348) 0061-Respect-CROSS_COMPILE-when-CC-is-the-default.patch - Change warning message (jsc#SLE-10078, jsc#SLE-9348) 0062-Change-warning-message.patch - mdcheck service can't start succesfully because of syntax (jsc#SLE-10078, jsc#SLE-9348) 0063-mdcheck-service-can-t-start-succesfully-because-of-s.patch - imsm: Update grow manual. (jsc#SLE-10078, jsc#SLE-9348) 0064-imsm-Update-grow-manual.patch - Add support for Tebibytes (jsc#SLE-10078, jsc#SLE-9348) 0065-Add-support-for-Tebibytes.patch - imsm: fill working_disks according to metadata. (jsc#SLE-10078, jsc#SLE-9348) 0066-imsm-fill-working_disks-according-to-metadata.patch - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch - Remove the legacy whitespace (jsc#SLE-10078, jsc#SLE-9348) 0068-Remove-the-legacy-whitespace.patch - imsm: pass subarray id to kill_subarray function (jsc#SLE-10078, jsc#SLE-9348) 0069-imsm-pass-subarray-id-to-kill_subarray-function.patch - imsm: Remove --dump/--restore implementation (jsc#SLE-10078, jsc#SLE-9348) 0070-imsm-Remove-dump-restore-implementation.patch- Rename the following patches, they will be listed with new re-ordered prefix number in following commit, 0001-Document-PART-POLICY-lines.patch 0001-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch 0002-policy-support-devices-with-multiple-paths.patch 0003-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch 0004-Monitor-add-system-timer-to-run-oneshot-periodically.patch 0005-imsm-update-metadata-correctly-while-raid10-double-d.patch 0006-Grow-avoid-overflow-in-compute_backup_blocks.patch 0007-Grow-report-correct-new-chunk-size.patch 0008-policy.c-prevent-NULL-pointer-referencing.patch 0009-Detail.c-do-not-skip-first-character-when-calling-xs.patch 0010-imsm-finish-recovery-when-drive-with-rebuild-fails.patch 0011-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch 0012-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0013-mdcheck-use-to-pass-variable-to-mdcheck.patch 0014-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch 0015-Create-add-support-for-RAID0-layouts.patch 0016-Assemble-add-support-for-RAID0-layouts.patch 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0028-Enable-probe_roms-to-scan-more-than-6-roms.patch- Add mdadm fixes from SLE15-SP1 package, - Create: add support for RAID0 layouts. (bsc#1162479) 0059-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0060-Assemble-add-support-for-RAID0-layouts.patch - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 0067-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Create: add support for RAID0 layouts. (bsc#1162479) 0015-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0016-Assemble-add-support-for-RAID0-layouts.patch - mdadm.8: add note information for raid0 growing operation (bsc#1129900) 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- 0012-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0013-mdcheck-use-to-pass-variable-to-mdcheck.patch 0014-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch Improve mdcheck (bsc#1153258)- imsm: finish recovery when drive with rebuild fails (bsc#1126975) 0010-imsm-finish-recovery-when-drive-with-rebuild-fails.patch - mdmon: don't attempt to manage new arrays when terminating (bsc#1127526) 0011-mdmon-don-t-attempt-to-manage-new-arrays-when-termin.patch- Detail.c: do not skip first character when calling xstrdup in Detail() (bsc#1123814) 0009-Detail.c-do-not-skip-first-character-when-calling-xs.patch- Update description. Remove references to historic software.- 0001-Document-PART-POLICY-lines.patch 0002-policy-support-devices-with-multiple-paths.patch 0008-policy.c-prevent-NULL-pointer-referencing.patch (bsc#1106078) - 0003-mdcheck-add-systemd-unit-files-to-run-mdcheck.patch 0004-Monitor-add-system-timer-to-run-oneshot-periodically.patch Remove mdadm.cron Remove crond.mdadm (bsc#1115407) - 0005-imsm-update-metadata-correctly-while-raid10-double-d.patch 0006-Grow-avoid-overflow-in-compute_backup_blocks.patch 0007-Grow-report-correct-new-chunk-size.patch Other useful upstream patches.- Update mdadm code base to mdadm-4.1 (FATE#325869, bsc#1111960) - Assorted bug-fixes, minor improvements, and code cleanup - Add PPL support (alternate change-journalling model) - Fix Makefile to install mdadm_env.sh to /usr/lib/mdadm/ (bsc#1111960) 0001-Makefile-install-mdadm_env.sh-to-usr-lib-mdadm.patch - Remove the following code base and patches since they are in mdadm-4.1 already, - mdadm-4.0.tar.xz - 0001-Makefile-Fix-date-to-be-output-in-ISO-format.patch - 0002-imsm-fix-missing-error-message-during-migration.patch - 0003-Fix-oddity-where-mdadm-did-not-recognise-a-relative-.patch - 0004-mdadm-check-the-nodes-when-operate-clustered-array.patch - 0005-examine-tidy-up-some-code.patch - 0006-mdadm-add-man-page-for-symlinks.patch - 0007-mdadm-add-checking-clustered-bitmap-in-assemble-mode.patch - 0008-mdadm-Add-Wimplicit-fallthrough-0-in-Makefile.patch - 0009-mdadm-Specify-enough-length-when-write-to-buffer.patch - 0010-mdadm-it-doesn-t-make-sense-to-set-bitmap-twice.patch - 0011-mdadm-Monitor-Fix-NULL-pointer-dereference-when-stat.patch - 0012-Replace-snprintf-with-strncpy-at-some-places-to-avoi.patch - 0013-mdadm-Forced-type-conversion-to-avoid-truncation.patch - 0014-super1-ignore-failfast-flag-for-setting-device-role.patch - 0015-mdadm-bitmap-fixed-typos-in-comments-of-bitmap.h.patch - 0016-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch - 0017-Retry-HOT_REMOVE_DISK-a-few-times.patch - 0018-mdadm-Build-check-the-level-parameter-when-build-new.patch - 0019-Introduce-sys_hot_remove_disk.patch - 0020-Add-force-flag-to-hot_remove_disk.patch - 0021-Detail-handle-non-existent-arrays-better.patch - 0022-Generic-support-for-consistency-policy-and-PPL.patch - 0023-Detail-show-consistency-policy.patch - 0024-imsm-PPL-support.patch - 0025-super1-PPL-support.patch - 0026-Add-ppl-and-no-ppl-options-for-update.patch - 0027-Grow-support-consistency-policy-change.patch - 0028-mdadm.h-struct-mdinfo-reorganize-ppl-elements-for-be.patch - 0029-super1-replace-hard-coded-values-with-bit-definition.patch - 0030-mdadm-Clean-up-some-ugly-multiple-actions-on-single-.patch - 0031-mdadm-Fixup-a-number-of-whitespace-inconsistency-cas.patch - 0032-util-Cosmetic-changes.patch - 0033-Grow-Fixup-a-pile-of-cosmetic-issues.patch - 0034-Grow-Remove-unnecessary-optimization.patch - 0035-Grow-Do-not-shadow-an-existing-variable.patch - 0036-imsm-use-rounded-size-for-metadata-initialization.patch - 0037-mdadm.c-fix-compile-error-switch-condition-has-boole.patch - 0038-mdadm-Create-declaring-an-existing-struct-within-sam.patch - 0039-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch - 0040-Create-Fixup-various-whitespace-issues.patch - 0041-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch - 0042-mdopen-use-parameters-new_array-to-create-arrays-whe.patch - 0043-mdadm-manpage-update-manpage-for-readonly-parameter.patch - 0044-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch - 0045-maps-Terminate-modes-map-correctly.patch - 0046-Grow_continue_command-ensure-content-is-properly-ini.patch - 0047-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch - 0048-Detail-ensure-export-names-are-acceptable-as-shell-v.patch - 0049-Grow-set-component-size-prior-to-array-size.patch - 0050-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch - 0051-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch - 0052-IMSM-Correct-examine-output-for-4k-disks.patch - 0053-imsm-allow-drives-in-a-container-regardless-of-secto.patch - 0054-imsm-allocate-buffer-to-support-maximum-sector-size.patch - 0055-imsm-don-t-allow-disks-with-different-sector-size-in.patch - 0056-mdadm-mdmon-deleted-the-abort_reshape-never-invoked.patch - 0057-util-Introduce-md_get_array_info.patch - 0058-Incremental-Remove-redundant-call-for-GET_ARRAY_INFO.patch - 0059-util-Introduce-md_get_disk_info.patch - 0060-util-Introduce-md_set_array_info.patch - 0061-md_u-Remove-some-unused-ioctl-declarations.patch - 0062-mdadm-grow-reshape-would-be-stuck-from-raid1-to-raid.patch - 0063-sysfs-Use-the-presence-of-sys-block-dev-md-as-indica.patch - 0064-sysfs-Make-sysfs_init-return-an-error-code.patch - 0065-util-must_be_container-Use-sysfs_read-GET_VERSION-to.patch - 0066-util-set_array_info-Simplify-code-since-md_get_versi.patch - 0067-Assemble-Assemble-Stop-checking-kernel-md-driver-ver.patch - 0068-Build-Stop-bothering-about-supporting-md-driver-olde.patch - 0069-Grow-Stop-bothering-about-md-driver-versions-older-t.patch - 0070-Detail-Stop-bothering-about-md-drivers-older-than-0..patch - 0071-Create-Remove-all-attemps-to-handle-md-driver-older-.patch - 0072-Manage-Remove-all-references-to-md_get_version.patch - 0073-Query-Remove-all-references-to-md_get_version.patch - 0074-bitmap-Remove-use-of-md_get_version.patch - 0075-mdmon-Stop-bothering-about-md_get_version.patch - 0076-mdopen-open_mddev-Use-md_get_array_info-to-determine.patch - 0077-mdassemble-Use-md_get_array_info-to-check-for-valid-.patch - 0078-Assemble-Assemble-Get-rid-of-last-use-of-md_get_vers.patch - 0079-util-Finally-kill-off-md_get_version.patch - 0080-mdadm-Fail-for-kernels-older-than-2.6.15.patch - 0081-Revert-mdadm-grow-reshape-would-be-stuck-from-raid1-.patch - 0082-Retire-mdassemble.patch - 0083-super1-Clean-up-various-style-abuses.patch - 0084-Detail-Remove-pre-2.6-code-for-printing-info-on-rebu.patch - 0085-Assemble-Remove-obsolete-test-for-kernels-older-than.patch - 0086-Detail-Fixup-ugly-if-foo-abuse.patch - 0087-Query-Handle-error-returned-by-fstat.patch - 0088-Query-Use-sysfs-to-obtain-data-if-possible.patch - 0089-sysfs-Parse-array_state-in-sysfs_read.patch - 0090-util-Introduce-md_array_active-helper.patch - 0091-maps-Use-keyvalue-for-null-terminator-to-indicate-un.patch - 0092-util-Get-rid-of-unused-enough_fd.patch - 0093-mdadm-retire-mdassemble-in-make-everything.patch - 0094-Query-Quiet-gcc-since-it-cannot-know-errno-0-in-this.patch - 0095-Makefile-Default-to-O2-optimization.patch - 0096-maps-Simplify-implementation-of-map_name.patch - 0097-Don-t-use-UnSet-with-consistency_policy.patch - 0098-Detail-determine-array-state-from-sysfs.patch - 0099-Detail-Respect-code-lines-are-80-character-wide.patch - 0100-Detail-Reinstate-support-for-not-having-sysfs.patch - 0101-Incremental-Use-md_array_active-where-applicable.patch - 0102-Incremental-Cleanup-some-if-statement-spaghetti.patch - 0103-Create-tell-udev-md-device-is-not-ready-when-first-c.patch - 0104-Incremental-Use-md_array_active-to-determine-state-o.patch - 0105-Manage-Manage_ro-Use-md_array_active.patch - 0106-IMSM-Initialize-my_vol_raid_dev_num-during-vol-creat.patch - 0107-Grow-Grow_continue_command-Avoid-aliasing-array-vari.patch - 0108-change-back-0644-permission-for-Grow.c.patch - 0109-util-md_array_valid-Introduce-md_array_valid-helper.patch - 0110-kernel-patch-Remove-obsolete-kernel-patches-against-.patch - 0111-mdassemble-Kill-off-the-last-remains.patch - 0112-mdadm-util-unify-fstat-checking-blkdev-into-function.patch - 0113-mdadm-util-unify-stat-checking-blkdev-into-function.patch - 0114-Fix-typo-in-new-udev-rule.patch - 0115-Incremental-return-is-not-a-function.patch - 0116-sysfs-sysfs_read-Count-active_disks-and-failed_disks.patch - 0117-container_members_max_degradation-Switch-to-using-sy.patch - 0118-IncrementalScan-Use-md_array_active-instead-of-md_ge.patch - 0119-Mention-endian-in-documentation-for-update-byte-orde.patch - 0120-Monitor-Use-md_array_active-instead-of-manually-fidd.patch - 0121-Monitor-Code-is-80-characters-per-line.patch - 0122-mdadm-md.4-set-page-length-as-1000-to-avoid-warnings.patch - 0123-Allow-more-spare-selection-criteria.patch - 0124-Add-sector-size-as-spare-selection-criterion.patch - 0125-Monitor-check_array-Centralize-exit-path.patch - 0126-Monitor-check_array-Reduce-duplicated-error-handling.patch - 0127-Monitor-check_array-Declate-mdinfo-instance-globally.patch - 0128-Monitor-check_array-Read-sysfs-entry-earlier.patch - 0129-Monitor-check_array-Obtain-RAID-level-from-syfs.patch - 0130-Monitor-check_array-Get-failed_disks-from-sysfs.patch - 0131-Monitor-check_array-Get-array_disks-from-sysfs.patch - 0132-Monitor-check_array-Get-nr_disks-active_disks-and-sp.patch - 0133-sysfs-sysfs_read-Count-working_disks.patch - 0134-Monitor-check_array-Use-working_disks-from-sysfs.patch - 0135-retire-the-APIs-that-driver-no-longer-supports.patch - 0136-Monitor-Not-much-point-declaring-mdlist-in-both-fork.patch - 0137-Monitor-mailfrom-is-initialized-correctly.patch - 0138-Monitor-Fixup-a-pile-of-whitespace-issues.patch - 0139-mdadm-Uninitialized-variable-rdev.patch - 0140-super-ddf-sysfs_read-takes-a-pointer-as-device-name-.patch - 0141-mdadm-Fixup-a-large-number-of-bad-formatting-of-logi.patch - 0142-mdadm-Fixup-more-broken-logical-operator-formatting.patch - 0143-mdadm-Fix-broken-formatting.patch - 0144-mdadm-Fixup-broken-formatting.patch - 0145-Detail-don-t-exit-if-ioctl-has-been-successful.patch - 0146-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch - 0147-md_u-Remove-unused-ioctl-declaration-of-START_ARRAY.patch - 0148-Get-failed-disk-count-from-array-state.patch - 0149-Monitor-don-t-assume-mdadm-parameter-is-a-block-devi.patch - 0150-super1-Always-round-data-offset-to-1M.patch - 0151-mdadm-r5cache-allow-adding-journal-to-array-without-.patch - 0152-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch - 0153-Detail-correct-output-for-active-arrays.patch - 0154-imsm-rebuild-from-2-disk-RAID10.patch - 0155-Error-messages-should-end-with-a-newline-character.patch - 0156-Use-correct-syntax-for-passing-DEVLINKS-to-mdadm-fro.patch - 0157-super1-only-set-clustered-flag-when-bitmap-is-presen.patch - 0158-Don-t-use-exit-ERANGE.patch - 0159-Monitor-containers-don-t-have-the-same-sysfs-propert.patch - 0160-Monitor-Include-containers-in-spare-migration.patch - 0161-Detail-differentiate-between-container-and-inactive-.patch - 0162-mdadm-install-two-more-udev-rules-in-mdadm.spec.patch - 0163-mdadm-set-journal_clean-after-scanning-all-disks.patch - 0164-mdadm-bitmap-examine-bitmap-failed-when-bitmap-is-ex.patch - 0165-mdopen-call-modprobe-md_mod-if-it-might-be-needed.patch - 0166-lib-devid2kname-should-take-a-dev_t.patch - 0167-sysfs_init_dev-take-a-dev_t-argument.patch - 0168-Manage_subdevs-Use-a-dev_t.patch - 0169-util-Code-is-80-characters-wide.patch - 0170-Close-mdfd-before-returning-main-function.patch - 0171-Grow-stop-previous-reshape-process-first.patch - 0172-imsm-New-disk-controller-domains.patch - 0173-Monitor-Check-redundancy-for-arrays.patch - 0174-mdadm-grow-Component-size-must-be-larger-than-chunk-.patch - 0175-mdadm-manpage-disable-bitmap_resize-for-external-fil.patch - 0176-mdadm-fixes-some-trivial-typos-in-comments.patch - 0177-Don-t-abort-starting-the-array-if-kernel-does-not-su.patch - 0178-super1-Add-support-for-multiple-ppls.patch - 0179-imsm-Add-support-for-multiple-ppls.patch - 0180-imsm-validate-multiple-ppls-during-assemble.patch - 0181-Zeroout-whole-ppl-space-during-creation-force-assemb.patch - 0182-imsm-switch-to-multiple-ppls-automatically-during-as.patch - 0183-Grow-fix-switching-on-PPL-during-recovery.patch - 0184-imsm-don-t-skip-resync-when-an-invalid-ppl-header-is.patch - 0185-imsm-Write-empty-PPL-header-if-assembling-regular-cl.patch - 0186-imsm-always-do-ppl-recovery-when-starting-a-rebuildi.patch - 0187-imsm-use-correct-map-when-validating-ppl.patch - 0188-imsm-write-initial-ppl-on-a-disk-added-for-rebuild.patch - 0189-Grow-Use-all-80-characters.patch - 0190-imsm-Set-disk-slot-number.patch - 0191-mdmon-get-safe-mode-delay-file-descriptor-early.patch - 0192-mdadm-mdstat-fixup-a-number-of-broken-formatting.patch - 0193-mdadm-mdstat-correct-the-strncmp-number-4-as-6.patch - 0194-mdcheck-add-some-logging.patch - 0195-mdcheck-improve-cleanup.patch - 0197-mdadm-grow-adding-a-test-to-ensure-resize-was-requir.patch - 0198-mdadm-mdopen-create-new-function-create_named_array-.patch - 0199-systemd-add-I-to-description-of-mdadm-last-resort-se.patch - 0200-Incremental-Use-validate_geometry-instead-of-avail_s.patch - 0201-imsm-fix-reading-scsi-serial.patch - 0202-To-support-clustered-raid10.patch - 0203-imsm-More-precise-message-when-spanned-raid-is-creat.patch - 0204-sysfs-include-faulty-drive-in-disk-count.patch - 0205-Monitor-msg-Don-t-print-error-message-if-mdmon-doesn.patch - 0206-imsm-continue-resync-on-3-disk-RAID10.patch - 0207-managemon-Don-t-add-disk-to-the-array-after-it-has-s.patch - 0208-mdadm-grow-correct-the-s-size-1-to-make-max-work.patch - 0209-policy.c-Avoid-to-take-spare-without-defined-domain-.patch - 0210-mdadm-allow-clustered-raid10-to-be-created-with-defa.patch- Add missing patches which exist in SLE12-SP3 and should be in SLE15 too, - mdadm: improve the dlm locking mechanism for clustered raid (bsc#1049126) 0218-mdadm-improve-the-dlm-locking-mechanism-for-clustere.patch - Assemble: provide protection when clustered raid do assemble (bsc#1049126) 0219-Assemble-provide-protection-when-clustered-raid-do-a.patch - Assemble: cleanup the failure path (bsc#1049126) 0220-Assemble-cleanup-the-failure-path.patch - Assemble: remove the protection when clustered raid do assemble (bsc#1101348) 0221-Assemble-remove-the-protection-when-clustered-raid-d.patch - 1001-display-timeout-status.patch- mdadm.spec Change %doc to %license for COPYING file, which was warned during 'osc ci'.- imsm: change reserved space to 4MB (bsc#1101110) 0212-imsm-change-reserved-space-to-4MB.patch - imsm: add functions to get and set imsm dev size (bsc#1101110) 0213-imsm-add-functions-to-get-and-set-imsm-dev-size.patch - imsm: pass already existing map to imsm_num_data_members (bsc#1101110) 0214-imsm-pass-already-existing-map-to-imsm_num_data_memb.patch - imsm: do not use blocks_per_member in array size calculations (bsc#1101110) 0215-imsm-do-not-use-blocks_per_member-in-array-size-calc.patch - imsm: correct num_data_stripes in metadata map for migration (bsc#1101110) 0216-imsm-correct-num_data_stripes-in-metadata-map-for-mi.patch - mdadm/grow: correct size and chunk_size casting (bsc#1095177) 0217-mdadm-grow-correct-size-and-chunk_size-casting.patch- Assemble: prevent segfault with faulty "best" devices (bsc#1082766, bsc#1095729) 0211-Assemble-prevent-segfault-with-faulty-best-devices.patch- mdadm: allow clustered raid10 to be created with default layout (bsc#1083881) 0210-mdadm-allow-clustered-raid10-to-be-created-with-defa.patch- policy.c: Avoid to take spare without defined domain by imsm (bsc#1076588) 0209-policy.c-Avoid-to-take-spare-without-defined-domain-.patch- 0208-mdadm-grow-correct-the-s-size-1-to-make-max-work.patch (bsc#1074949)- 0207-managemon-Don-t-add-disk-to-the-array-after-it-has-s.patch (bsc#1073862)- Update mdadm for SLE15, for bug fixes and new feature enhancement - 1000-The-mdcheck-script-now-adds-messages-to-the-system.patch is removed because upstream has similar fix with almost identical funcationality. - The following patches are not deleted indeed, they are renamed and added into all other new-added patches with different perfix numbers, 0038-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0039-Create-Fixup-various-whitespace-issues.patch 0040-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0041-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0042-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0043-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0044-maps-Terminate-modes-map-correctly.patch 0045-Grow_continue_command-ensure-content-is-properly-ini.patch 0046-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0047-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0048-Grow-set-component-size-prior-to-array-size.patch 0049-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0050-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0051-IMSM-Correct-examine-output-for-4k-disks.patch 0052-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0053-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0054-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0055-Allow-more-spare-selection-criteria.patch 0056-Add-sector-size-as-spare-selection-criterion.patch 0057-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0058-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 0059-To-support-clustered-raid10.patch 0060-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch - The following patche set includes the above renamed patches, they have bug fixes for bsc#1068030, bsc#1069165, bsc#1069167, and some other fixes and enhancement for raid5 ppl, imsm, and general mdadm code, 0038-mdadm-Create-declaring-an-existing-struct-within-sam.patch 0039-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0040-Create-Fixup-various-whitespace-issues.patch 0041-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0042-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0043-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0044-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0045-maps-Terminate-modes-map-correctly.patch 0046-Grow_continue_command-ensure-content-is-properly-ini.patch 0047-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0048-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0049-Grow-set-component-size-prior-to-array-size.patch 0050-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0051-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0052-IMSM-Correct-examine-output-for-4k-disks.patch 0053-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0054-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0055-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0056-mdadm-mdmon-deleted-the-abort_reshape-never-invoked.patch 0057-util-Introduce-md_get_array_info.patch 0058-Incremental-Remove-redundant-call-for-GET_ARRAY_INFO.patch 0059-util-Introduce-md_get_disk_info.patch 0060-util-Introduce-md_set_array_info.patch 0061-md_u-Remove-some-unused-ioctl-declarations.patch 0062-mdadm-grow-reshape-would-be-stuck-from-raid1-to-raid.patch 0063-sysfs-Use-the-presence-of-sys-block-dev-md-as-indica.patch 0064-sysfs-Make-sysfs_init-return-an-error-code.patch 0065-util-must_be_container-Use-sysfs_read-GET_VERSION-to.patch 0066-util-set_array_info-Simplify-code-since-md_get_versi.patch 0067-Assemble-Assemble-Stop-checking-kernel-md-driver-ver.patch 0068-Build-Stop-bothering-about-supporting-md-driver-olde.patch 0069-Grow-Stop-bothering-about-md-driver-versions-older-t.patch 0070-Detail-Stop-bothering-about-md-drivers-older-than-0..patch 0071-Create-Remove-all-attemps-to-handle-md-driver-older-.patch 0072-Manage-Remove-all-references-to-md_get_version.patch 0073-Query-Remove-all-references-to-md_get_version.patch 0074-bitmap-Remove-use-of-md_get_version.patch 0075-mdmon-Stop-bothering-about-md_get_version.patch 0076-mdopen-open_mddev-Use-md_get_array_info-to-determine.patch 0077-mdassemble-Use-md_get_array_info-to-check-for-valid-.patch 0078-Assemble-Assemble-Get-rid-of-last-use-of-md_get_vers.patch 0079-util-Finally-kill-off-md_get_version.patch 0080-mdadm-Fail-for-kernels-older-than-2.6.15.patch 0081-Revert-mdadm-grow-reshape-would-be-stuck-from-raid1-.patch 0082-Retire-mdassemble.patch 0083-super1-Clean-up-various-style-abuses.patch 0084-Detail-Remove-pre-2.6-code-for-printing-info-on-rebu.patch 0085-Assemble-Remove-obsolete-test-for-kernels-older-than.patch 0086-Detail-Fixup-ugly-if-foo-abuse.patch 0087-Query-Handle-error-returned-by-fstat.patch 0088-Query-Use-sysfs-to-obtain-data-if-possible.patch 0089-sysfs-Parse-array_state-in-sysfs_read.patch 0090-util-Introduce-md_array_active-helper.patch 0091-maps-Use-keyvalue-for-null-terminator-to-indicate-un.patch 0092-util-Get-rid-of-unused-enough_fd.patch 0093-mdadm-retire-mdassemble-in-make-everything.patch 0094-Query-Quiet-gcc-since-it-cannot-know-errno-0-in-this.patch 0095-Makefile-Default-to-O2-optimization.patch 0096-maps-Simplify-implementation-of-map_name.patch 0097-Don-t-use-UnSet-with-consistency_policy.patch 0098-Detail-determine-array-state-from-sysfs.patch 0099-Detail-Respect-code-lines-are-80-character-wide.patch 0100-Detail-Reinstate-support-for-not-having-sysfs.patch 0101-Incremental-Use-md_array_active-where-applicable.patch 0102-Incremental-Cleanup-some-if-statement-spaghetti.patch 0103-Create-tell-udev-md-device-is-not-ready-when-first-c.patch 0104-Incremental-Use-md_array_active-to-determine-state-o.patch 0105-Manage-Manage_ro-Use-md_array_active.patch 0106-IMSM-Initialize-my_vol_raid_dev_num-during-vol-creat.patch 0107-Grow-Grow_continue_command-Avoid-aliasing-array-vari.patch 0108-change-back-0644-permission-for-Grow.c.patch 0109-util-md_array_valid-Introduce-md_array_valid-helper.patch 0110-kernel-patch-Remove-obsolete-kernel-patches-against-.patch 0111-mdassemble-Kill-off-the-last-remains.patch 0112-mdadm-util-unify-fstat-checking-blkdev-into-function.patch 0113-mdadm-util-unify-stat-checking-blkdev-into-function.patch 0114-Fix-typo-in-new-udev-rule.patch 0115-Incremental-return-is-not-a-function.patch 0116-sysfs-sysfs_read-Count-active_disks-and-failed_disks.patch 0117-container_members_max_degradation-Switch-to-using-sy.patch 0118-IncrementalScan-Use-md_array_active-instead-of-md_ge.patch 0119-Mention-endian-in-documentation-for-update-byte-orde.patch 0120-Monitor-Use-md_array_active-instead-of-manually-fidd.patch 0121-Monitor-Code-is-80-characters-per-line.patch 0122-mdadm-md.4-set-page-length-as-1000-to-avoid-warnings.patch 0123-Allow-more-spare-selection-criteria.patch 0124-Add-sector-size-as-spare-selection-criterion.patch 0125-Monitor-check_array-Centralize-exit-path.patch 0126-Monitor-check_array-Reduce-duplicated-error-handling.patch 0127-Monitor-check_array-Declate-mdinfo-instance-globally.patch 0128-Monitor-check_array-Read-sysfs-entry-earlier.patch 0129-Monitor-check_array-Obtain-RAID-level-from-syfs.patch 0130-Monitor-check_array-Get-failed_disks-from-sysfs.patch 0131-Monitor-check_array-Get-array_disks-from-sysfs.patch 0132-Monitor-check_array-Get-nr_disks-active_disks-and-sp.patch 0133-sysfs-sysfs_read-Count-working_disks.patch 0134-Monitor-check_array-Use-working_disks-from-sysfs.patch 0135-retire-the-APIs-that-driver-no-longer-supports.patch 0136-Monitor-Not-much-point-declaring-mdlist-in-both-fork.patch 0137-Monitor-mailfrom-is-initialized-correctly.patch 0138-Monitor-Fixup-a-pile-of-whitespace-issues.patch 0139-mdadm-Uninitialized-variable-rdev.patch 0140-super-ddf-sysfs_read-takes-a-pointer-as-device-name-.patch 0141-mdadm-Fixup-a-large-number-of-bad-formatting-of-logi.patch 0142-mdadm-Fixup-more-broken-logical-operator-formatting.patch 0143-mdadm-Fix-broken-formatting.patch 0144-mdadm-Fixup-broken-formatting.patch 0145-Detail-don-t-exit-if-ioctl-has-been-successful.patch 0146-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0147-md_u-Remove-unused-ioctl-declaration-of-START_ARRAY.patch 0148-Get-failed-disk-count-from-array-state.patch 0149-Monitor-don-t-assume-mdadm-parameter-is-a-block-devi.patch 0150-super1-Always-round-data-offset-to-1M.patch 0151-mdadm-r5cache-allow-adding-journal-to-array-without-.patch 0152-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch 0153-Detail-correct-output-for-active-arrays.patch 0154-imsm-rebuild-from-2-disk-RAID10.patch (bsc#1069165) 0155-Error-messages-should-end-with-a-newline-character.patch 0156-Use-correct-syntax-for-passing-DEVLINKS-to-mdadm-fro.patch 0157-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 0158-Don-t-use-exit-ERANGE.patch 0159-Monitor-containers-don-t-have-the-same-sysfs-propert.patch 0160-Monitor-Include-containers-in-spare-migration.patch 0161-Detail-differentiate-between-container-and-inactive-.patch 0162-mdadm-install-two-more-udev-rules-in-mdadm.spec.patch 0163-mdadm-set-journal_clean-after-scanning-all-disks.patch 0164-mdadm-bitmap-examine-bitmap-failed-when-bitmap-is-ex.patch 0165-mdopen-call-modprobe-md_mod-if-it-might-be-needed.patch 0166-lib-devid2kname-should-take-a-dev_t.patch 0167-sysfs_init_dev-take-a-dev_t-argument.patch 0168-Manage_subdevs-Use-a-dev_t.patch 0169-util-Code-is-80-characters-wide.patch 0170-Close-mdfd-before-returning-main-function.patch 0171-Grow-stop-previous-reshape-process-first.patch 0172-imsm-New-disk-controller-domains.patch 0173-Monitor-Check-redundancy-for-arrays.patch 0174-mdadm-grow-Component-size-must-be-larger-than-chunk-.patch 0175-mdadm-manpage-disable-bitmap_resize-for-external-fil.patch 0176-mdadm-fixes-some-trivial-typos-in-comments.patch (The following 12 patches are specifically for bsc#1068030) 0177-Don-t-abort-starting-the-array-if-kernel-does-not-su.patch 0178-super1-Add-support-for-multiple-ppls.patch 0179-imsm-Add-support-for-multiple-ppls.patch 0180-imsm-validate-multiple-ppls-during-assemble.patch 0181-Zeroout-whole-ppl-space-during-creation-force-assemb.patch 0182-imsm-switch-to-multiple-ppls-automatically-during-as.patch 0183-Grow-fix-switching-on-PPL-during-recovery.patch 0184-imsm-don-t-skip-resync-when-an-invalid-ppl-header-is.patch 0185-imsm-Write-empty-PPL-header-if-assembling-regular-cl.patch 0186-imsm-always-do-ppl-recovery-when-starting-a-rebuildi.patch 0187-imsm-use-correct-map-when-validating-ppl.patch 0188-imsm-write-initial-ppl-on-a-disk-added-for-rebuild.patch 0189-Grow-Use-all-80-characters.patch 0190-imsm-Set-disk-slot-number.patch (The following 1 patch is specifically for bsc#1069167) 0191-mdmon-get-safe-mode-delay-file-descriptor-early.patch 0192-mdadm-mdstat-fixup-a-number-of-broken-formatting.patch 0193-mdadm-mdstat-correct-the-strncmp-number-4-as-6.patch 0194-mdcheck-add-some-logging.patch 0195-mdcheck-improve-cleanup.patch 0196-Move-mdadm_env.sh-out-of-usr-lib-systemd.patch 0197-mdadm-grow-adding-a-test-to-ensure-resize-was-requir.patch 0198-mdadm-mdopen-create-new-function-create_named_array-.patch 0199-systemd-add-I-to-description-of-mdadm-last-resort-se.patch 0200-Incremental-Use-validate_geometry-instead-of-avail_s.patch 0201-imsm-fix-reading-scsi-serial.patch 0202-To-support-clustered-raid10.patch 0203-imsm-More-precise-message-when-spanned-raid-is-creat.patch 0204-sysfs-include-faulty-drive-in-disk-count.patch 0205-Monitor-msg-Don-t-print-error-message-if-mdmon-doesn.patch 0206-imsm-continue-resync-on-3-disk-RAID10.patch- Add udev rules for cluster-md to confirm device (fate#316335) 0060-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- Add one mdadm patch to support clustered raid10 (fate#323171) 0059-To-support-clustered-raid10.patch- SLE15 continues to use mdadm-4.0, synchronize mdadm package from SLE12-SP3 to SLE15, re-order all patches. - Rename the following patches, they are deleted and re-add in next part of patches 0001-Generic-support-for-consistency-policy-and-PPL.patch 0002-Detail-show-consistency-policy.patch 0002-The-mdcheck-script-now-adds-messages-to-the-system.patch 0003-imsm-PPL-support.patch 0004-super1-PPL-support.patch 0005-Add-ppl-and-no-ppl-options-for-update.patch 0006-Grow-support-consistency-policy-change.patch 0007-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch 0008-Retry-HOT_REMOVE_DISK-a-few-times.patch 0009-Introduce-sys_hot_remove_disk.patch 0010-Add-force-flag-to-hot_remove_disk.patch 0011-Detail-handle-non-existent-arrays-better.patch - Synchronize patches from mdadm of SLE12-SP3, the above renamed patches are re-add here, 0001-Makefile-Fix-date-to-be-output-in-ISO-format.patch 0002-imsm-fix-missing-error-message-during-migration.patch 0003-Fix-oddity-where-mdadm-did-not-recognise-a-relative-.patch 0004-mdadm-check-the-nodes-when-operate-clustered-array.patch 0005-examine-tidy-up-some-code.patch 0006-mdadm-add-man-page-for-symlinks.patch 0007-mdadm-add-checking-clustered-bitmap-in-assemble-mode.patch 0008-mdadm-Add-Wimplicit-fallthrough-0-in-Makefile.patch 0009-mdadm-Specify-enough-length-when-write-to-buffer.patch 0010-mdadm-it-doesn-t-make-sense-to-set-bitmap-twice.patch 0011-mdadm-Monitor-Fix-NULL-pointer-dereference-when-stat.patch 0012-Replace-snprintf-with-strncpy-at-some-places-to-avoi.patch 0013-mdadm-Forced-type-conversion-to-avoid-truncation.patch 0014-super1-ignore-failfast-flag-for-setting-device-role.patch 0015-mdadm-bitmap-fixed-typos-in-comments-of-bitmap.h.patch 0016-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch 0017-Retry-HOT_REMOVE_DISK-a-few-times.patch 0018-mdadm-Build-check-the-level-parameter-when-build-new.patch 0019-Introduce-sys_hot_remove_disk.patch 0020-Add-force-flag-to-hot_remove_disk.patch 0021-Detail-handle-non-existent-arrays-better.patch 0022-Generic-support-for-consistency-policy-and-PPL.patch 0023-Detail-show-consistency-policy.patch 0024-imsm-PPL-support.patch 0025-super1-PPL-support.patch 0026-Add-ppl-and-no-ppl-options-for-update.patch 0027-Grow-support-consistency-policy-change.patch 0028-mdadm.h-struct-mdinfo-reorganize-ppl-elements-for-be.patch 0029-super1-replace-hard-coded-values-with-bit-definition.patch 0030-mdadm-Clean-up-some-ugly-multiple-actions-on-single-.patch 0031-mdadm-Fixup-a-number-of-whitespace-inconsistency-cas.patch 0032-util-Cosmetic-changes.patch 0033-Grow-Fixup-a-pile-of-cosmetic-issues.patch 0034-Grow-Remove-unnecessary-optimization.patch 0035-Grow-Do-not-shadow-an-existing-variable.patch 0036-imsm-use-rounded-size-for-metadata-initialization.patch 0037-mdadm.c-fix-compile-error-switch-condition-has-boole.patch 0038-Create-Fixup-bad-placement-of-logical-in-multi-line-.patch 0039-Create-Fixup-various-whitespace-issues.patch 0040-mdadm.c-fix-compile-warning-mdfd-is-uninitialized.patch 0041-mdopen-use-parameters-new_array-to-create-arrays-whe.patch 0042-mdadm-manpage-update-manpage-for-readonly-parameter.patch 0043-mdadm-manpage-clustered-arrays-don-t-support-array-s.patch 0044-maps-Terminate-modes-map-correctly.patch 0045-Grow_continue_command-ensure-content-is-properly-ini.patch 0046-systemd-mdadm-last-resort-use-ConditionPathExists-in.patch 0047-Detail-ensure-export-names-are-acceptable-as-shell-v.patch 0048-Grow-set-component-size-prior-to-array-size.patch 0049-Grow-don-t-allow-to-enable-PPL-when-reshape-is-in-pr.patch 0050-Grow-don-t-allow-array-geometry-change-with-ppl-enab.patch 0051-IMSM-Correct-examine-output-for-4k-disks.patch 0052-imsm-allow-drives-in-a-container-regardless-of-secto.patch 0053-imsm-allocate-buffer-to-support-maximum-sector-size.patch 0054-imsm-don-t-allow-disks-with-different-sector-size-in.patch 0055-Allow-more-spare-selection-criteria.patch 0056-Add-sector-size-as-spare-selection-criterion.patch 0057-super1-fix-sb-max_dev-when-adding-a-new-disk-in-line.patch 0058-super1-only-set-clustered-flag-when-bitmap-is-presen.patch 1000-The-mdcheck-script-now-adds-messages-to-the-system.patch- New upstream release 4.0 Multiple bugfixes and various enhancements including IMSM support for bad blocks and 4K block devices. (FATE#321941) - DELETE 0001-super1-Clear-memory-allocated-for-superblock-bitmap-.patch this was included upstream - 0001-Generic-support-for-consistency-policy-and-PPL.patch - 0002-Detail-show-consistency-policy.patch - 0003-imsm-PPL-support.patch - 0004-super1-PPL-support.patch - 0005-Add-ppl-and-no-ppl-options-for-update.patch - 0006-Grow-support-consistency-policy-change.patch Add support for Partial Parity Logs (FATE#321941) - 0007-udev-md-raid-assembly.rules-Skip-non-ready-devices.patch (bsc#956236) - 0008-Retry-HOT_REMOVE_DISK-a-few-times.patch (bsc#808647) - 0009-Introduce-sys_hot_remove_disk.patch (bsc#974154) - 0010-Add-force-flag-to-hot_remove_disk.patch (bsc#808647) - 0011-Detail-handle-non-existent-arrays-better.patch (bsc#966773)- Added 0002-The-mdcheck-script-now-adds-messages-to-the-system.patch The mdcheck bash script now writes messages to the syslog about progress with check.- Do not list XXX@.service files for anything but service_del_preun. They cannot be restarted by systemctl as they are just templates. They don't need to be restarted at reinstall anyway. (bsc#979749)- New upstream release mdadm-3.4 Adds support for clustered-raid1 and journalled raid5 - 0001-super1-Clear-memory-allocated-for-superblock-bitmap-.patch Important upstream bugfix relating to uninialised memory.- Add missing pre-requres for initrd macros (boo#958562)- Own %{_systemdshutdowndir} in case nothing else does. This ensures build success even if systemd-mini does not own it (happens in some versions of our package).- Do not BuildRequire systemd: it conflicts with systemd-mini, pulled in by systemd-mini-devel (due to BuildRequires: pkgconfig(systemd)). The reason systemd was added as a buildrequires was for 'something' to onw /usr/lib/systemd/system-shutdown/; systemd-mini does that also for us.- new upstream version 3.3.4. Important bugfix to honour IMSM ROM settings when RAID is disabled. (bsc#939748 bsc#937363)- new upstream version 3.3.3. Lots of bug fixes, particular "mdadm --assemble --force" would often not do the right thing for RAID5. - 0001-Grow-Do-not-try-to-restart-if-reshape-is-running.patch 0001-Grow-fix-removal-of-line-in-wrong-case.patch 0001-IMSM-Add-warning-message-when-assemble-spanned-conta.patch 0001-Makefile-install-mdadm-grow-continue-.service.patch mdcheck-careful.patch mdcheck-no-devices.fix All removed as now included upstream.- Make it build, that is build-require pkgconfig of udev and the package systemd as this one is the owner of the directory /usr/lib/systemd/system-shutdown- 0001-IMSM-Add-warning-message-when-assemble-spanned-conta.patch (bnc#882634) - 0001-Grow-Do-not-try-to-restart-if-reshape-is-running.patch (bnc#887773)- mdcheck-careful.patch Be careful about reading all output of "mdadm --detail --export" as shell commands - it isn't quoted. (bnc#910500)- mdcheck-no-devices.fix mdcheck mustn't report an error if not md devices exist (bnc#903051)/bin/sh/bin/sh/bin/sh/bin/shs390zp32 1727095558  !"#$%&'()*+,-./012345674.2-150500.6.6.24.2-150500.6.6.2 mdadmmdmonsystem-shutdownmdadm.shutdownmdadm-grow-continue@.servicemdadm-last-resort@.servicemdadm-last-resort@.timermdcheck_continue.servicemdcheck_continue.timermdcheck_start.servicemdcheck_start.timermdmon@.servicemdmonitor-oneshot.servicemdmonitor-oneshot.timermdmonitor.service01-md-raid-creating.rules63-md-raid-arrays.rules64-md-raid-assembly.rules69-md-clustered-confirm-device.ruleslibexecmdadmmdadm_env.shmdadmmdmonrcmdmonitormdadmChangeLogREADME.initramfsSoftware-RAID.HOWTO-1.htmlSoftware-RAID.HOWTO-10.htmlSoftware-RAID.HOWTO-11.htmlSoftware-RAID.HOWTO-12.htmlSoftware-RAID.HOWTO-13.htmlSoftware-RAID.HOWTO-2.htmlSoftware-RAID.HOWTO-3.htmlSoftware-RAID.HOWTO-4.htmlSoftware-RAID.HOWTO-5.htmlSoftware-RAID.HOWTO-6.htmlSoftware-RAID.HOWTO-7.htmlSoftware-RAID.HOWTO-8.htmlSoftware-RAID.HOWTO-9.htmlSoftware-RAID.HOWTO.htmlSoftware-RAID.HOWTO.txtTODOmdadm.conf-examplemkinitramfssysconfig.mdadmmdadmCOPYINGmd.4.gzmdadm.conf.5.gzmdadm.8.gzmdmon.8.gzmdadmmdcheck/sbin//usr/lib/systemd//usr/lib/systemd/system-shutdown//usr/lib/systemd/system//usr/lib/udev/rules.d//usr//usr/libexec//usr/libexec/mdadm//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/mdadm//usr/share/fillup-templates//usr/share/licenses//usr/share/licenses/mdadm//usr/share/man/man4//usr/share/man/man5//usr/share/man/man8//usr/share//usr/share/mdadm/-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:35776/SUSE_SLE-15-SP5_Update/1651c239f9b9bb92c90e8a5e9c942502-mdadm.SUSE_SLE-15-SP5_Updatedrpmxz5s390x-suse-linux directoryPOSIX shell script, ASCII text executableASCII textELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=e9a2a0867c643ab6fa86f731eb924d3b411b2de2, for GNU/Linux 3.2.0, strippedELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=a341943b8bdcaf0482ef6aa61286172aad1bed79, for GNU/Linux 3.2.0, strippedHTML document, ASCII textASCII text, with escape sequences, with overstrikingtroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)Bourne-Again shell script, ASCII text executable"RRRRRRRRRRR RRR RRRR RRRRRRRRR RRR RRRR R0/&U Ds% if test -x /usr/lib/module-init-tools/regenerate-initrd-posttrans; then /bin/bash -c 'set +e; /usr/lib/module-init-tools/regenerate-initrd-posttrans' fi/bin/shsmtp_daemonutf-847ccbaadcf08b3d1f487f67eb47a9967227c117cbabd78b58e83c9821bacb9ab?P7zXZ !t/']"k%f2)/]09;v෤17"9I]<wsF:5jE=+ mQyf.tb붇Lv0\K=1I:6|'t>U3HBE3x\Ixl1Պje_ׇQ*/$xqPvXuU&C$νՌ,Pk\3^s.⢳ezE N<i&\{۸Ҏ""qzR.K]fܵu$h ~5KmH IϟM &`вf78C,`Q?IV/aVYgU/^@5KVj;UI΁t=UZ6. ڴaƎѵ'fvG%9xoan50yz(qZ6)Rj)Jp&@޾k:P{T?or=K*-uH"DZ$Lշ~GP(LB#8*`-|З \hs kLH?_0&մ:W-f!(N>fǤ9^'ӲJf\&`L6݌OtE!(*nehO"WASO'r` w:yp,a?  "oF_yBcV8?)cX~j/jj͂-pGE['23K 7h`H'=#.0I8j u8{Oa6h1h]U%elr|h)ʋݵ,vj*L-A0Ԃs{AǑGZfVKAj()IF!g[ 7nbY9K/BpWx;WI34tm'(m/jd=]JV6sY=N(,@Eq~k(v)0u3Q[ sZ֧ZSGcM۰( cf:|G4ǰxNB4ጹ| ! [l MFHn"?l[@Pmc$21hϝC v9S r=M\Ǘ1 09i~=#㵢S+0[5x/9E'OʹDrϢmdh_H(yS77F]@򅂝= }X!xd{/=AsE|%^ '/GsIɕFPJwls+ l)gIȷy&.pG}C'QH:7GxW5~onuH9r1_gGq]X0SK2ht%{oQ{Z Y*@y@xbzj pqnjJ۵nTP/OqqK{1Bf74#HIH7wF|zne]nn.7CBY Z'Rr3$˜d-bE`懰(FXs@_[u)Qh8a{<]'P2ZA쨔MBۂ*A JOƨ* n|cdiHQ4Dǭ~rUToB18:/mdY31DtODW9cε ,@>s"v$i)ȝkG˞-5Ͽ{ѭmꉖSGn1KQfKb +wi^[JD^bXCS+@[ЋAjH_CUQ72sle &+LgW/3_kH6!,*}A@9Gە0}g+r!:M=UpU!Su0' xJ'$q_I3BFi-+N88SoAz(<)f.MN4vcp>~NX Xݘy6"$s /R=KyХ HJZ 1zA Vլ`YEBBT׿&n$'Myу9ߞ!aD>\ &d{?Cdr&ba|*8POre ͐+|ɥXP +fmE9U ̵+`Sd3B}>`ȥ7b:8C#DqBr~SgQ\h%`u?wz¿lrX3+dHɻ{ݘ%}>hW(ńTM;pS;Ѧyj)Wǘruj3KezfJ11Yd.hO g"FnVX ?q& +lDzBʢlɑ)($I7/3 CwƆ*wT4bd%D&&ǂ6 UDҮI.\ZCzj7H ,̻!t紅@ (9t5:hfPi48i$[Tԋoy- K&LP?$7?,r$ 怇kH &I~6nOTIAMg*l AY "trXOBGv0v()u1}n8[&. _Kd>,5D~)> tRW5> bPVfȀn3DwUhtRQ!GNv^m0KEz6VuBb5yYCB ]ZCөu_7g6iea |AС؜c^M֓CSQ9./4ޕ4j@wI[GQ/3I B[s}'l5H) i.'LO„:h!܂)~Lf9"~+K|唐*a;W>g):}1W薧f#?F#  h/$WWzuu3Ki6>debѭ@b␡uL좡> -' 8E)VjD#A(16`G4z%YRQQ Y94%o(ZϮ/j+Xly A|\֏V"WK@R. 5?98Awj`2A褤o-M=v쩄& ]Z}BKWLŤڭWP$4MLo Fc; B ݧrϫ@AO s;w'w`EhSq`/=-砵r٬-ҥr#*_ ?XEWYQ:w{޵ laQsҟQ C&j U%crK@jd#?\cv v]!1͞cѭ>#V= $:nF ڡ9J$y$;~P58zp!yx%dIE4/6biҹ ½m#5fdꪎ>?e#'͗m8?Q![qt㶽>ɌRft(I;l`_NO!Mx^mI9R\w,]?Rv`k-lꂪQ.f~`C^}tk Yy@ѻstF<_/ZD2jqSPT҉̘ T[Og Y,(]sZA^jeqBp(v%6Ĺ`;*{H'bSzُ0YƐq3!:eGdqW}v+FYO }[.BqWE"Q]]6!aoD&z#3+0Zhm`;LS7v7_M=D'/cH?3lJf mI8hZI6g80"8QUʶGf%Ư I#U Z !o'{CKQ#m}(B`lLle76PҘO*KN'ExIVv$.͝sbyF3)7NqN  D?ք]|y#'.H2uMnڲSliD.-_+3'  eODkŧkT8hu'-0|6;2"qnлKgoL%KĕX^L @O?w͛n48) E&LXVBpQq>.aFNQe+Ɠ.zdsҩD[Bh0/iu9 = `s6y|bukAte54O+ Dp呲6ަK;;Bgj ͼ UV}dʩk5Oq 2߻w,lr%핗ȭCc&':mHRdrR~äC6~9xx4*#i+iJW!TAހ!*ֺ̳O>1dAs>M/xLp 팙|sD+OtF̀K㗂XJ +E ruʠaZa, 12WPS܈j &8ʞYd{?E9qDd/Hu`ɺbA1cр¡y igtZqf)^P8Y\rs>%:%o9{kFH$™rg[NP)AN-U}zQ)M];BEV*5KMP–r)嵩ų">hZ|).`4S( j\ܠT]ب~$F-qcոJv_۱(2 qq rv@ڼڜB6}]XϿ^9ώ$hSS%?0"ȭB$5Yt Geuy'o>hPfTsOf5ikaOϾyjp<4ė_#Tp2x7)3aާR!4!'nѸU@nGxt-Mg>%AqgF[3v79{Qd8WozuEH2#xO̭{,u),?c@ \53b0JK?^Y-/dՊ`K 䮶4/L=k3Gs_"ߠN/d^[t0~G5K~q3Ydc3=`yZ)4zיrL. ^uq鬿4,S<|/$WfYF1u-,&be/X!ΘXs]Ti*$|RfǹBfRTQ*6MU}كihۍىL< :z[4 1R1U@J?&0rB7^Z<)$U2M^c@'OѤ~/6kmꆻ#LrvZy"@3 %@DWL菛J,lg[j56%tWJ*{S)yQWRD>Xyaϫ[LrcU=0z#@_N+*<*kY| hbq7|4Ⱨ,4YCח3!"&NLhNڞrkY3ď09}Wp`Р t;soCv3q ("+f4IR.TPek{OwtΈ:Ɯ2kz_Bb Md4tuQ \yk&wH14`kU |W|@nZYǷ'*`c2.L _4p&g!tcþeJ_cOio`x(1Ye+R0 Je܊B?翩þwoX+7~7j.Rۦ۾dh>HSQT>.%Rj&,P ju3NpWijM 5ܟr͗&O@Q֪|MH2ƪ(V5M+8跛)U0lJ|nI wS,XL/W~zBqbY2]s~(S CD3_] $}XYB<"o3"t}ǸtcDj1@<@|N--UMdKK{U4:)sh+W5_¹qVZ?n1% Ywsp\!NWz+ ^ l0ṉN96:kcAFxOGa'~\ap.)UHQ(6尅ckԦ: 77Xb=:TZ4goē`l>; 01 /à^&aKzA޹۬O͟k%$d!;jw" D_+'W΢et.릫p[[r'Kjl# جVf,gTd>^$ة8gWMav+`0`]T%[s,,( ]@IPm& CW'I~ŊDi Kh4`y#s8/&Pf%S,l9] ~0V?ks|?Jym#6"q&W`Fnٕo6?ݎ!:'MWOgLeR*&'<8qS'8u~:/6Eem!Gj+o%I γjaeyBi˜ڈGn t- :HʚAVvo-`yۘ,k0E2B{ħ/ӃLEP,6AAs2ٛ@uR3ARKm;goA,ĴEd3|gˑ(пSr6vD,st̪e N&ޗdm'3ux,~hUdKv09c]@!5eV#_,\q\{R{Bqc< jJ**~/;;5N2f"" {wHXw c D㰦PB|bIFg'Yy9O-~]d&6¯'<7UGls-QDmc"^:2?YwK!8ֶegARMQk`_ћxUvm,J$VAA,"c(HWQjS|E*@ PLQxx'̮èǭ>-xGXd 1VmsDkAMk.mFoxi^scg.DZu=Ж7&ee7bA9pZm>9ICn92p^gX3z9[Jj˹.)9^i}\<*L( 5  ǢKڒ󦇭`{dn?6A7!@83rN. wQCo԰=µwiN/vIL̘XxgPt?҉wr0_cȋ!9BϬ7ݴ$YGQe>JVуB˩:% K~7sNg7+Vɓheo˘~Ƽo&}/um8@ bzf5*߈p~{Pyŕ!IDԕ &L>j65 k/G! Ga]~Ud\\Hd@V)B)Nm>Yb)̹1ЋtnazuLaBQm$47釰OS7C`! &: uUaa:UGfnYj?aXqZ? `q~g3P6%}\.P˸|l eZ|KXi}%*0xKO| HkPo35sV'\=o j-ƌ*$t_'d>e[$~&\|B[mKw@Y+SgU.44DKd`=blUGɇRo6jz=F;!OZ]4$\+)9(#CRRii1Pl>+£HnOlI)"T$ >}Ŕ~UL lNYؾj Md?R_"v @!+e=,eҒr}=DZn➦ه+$FɃ\CR@z!Q蟭TAn 9&w,V]@B7);(|Weu/ؗa$"<]OIhri*b~ܬ@n3QTfDYְxMe DoT{ɍ$ulx,`=B-x!U+veAѬKϓ_>&vgd}vY|f 2lߏ͡SߴHR ,RIyE2 =AҸ*3t|2Zq-;HO2+}DnF~l}Pb1-\Cn+eEQ #c0kA_|k~,ME>+.PLVLCee+WoH1q, H^ᡙNUP+8[ÖƱ[D!̿ϧټ*Tx+z2F/ PGF`V1Z&8迂s-L|o"ڲO}Z%*8Gs+פ9V;!J6A,Ɖ,<5xsFjd+|0KY4h@iV^Uo:f sƕW( w8anA< ܛ evL4saD .*|S*e['a+Gd8_: Y{*TM )M}loOA6D|fa@wgS݉AglECzC|:Hc+9$͆&C3Y^s_zz RR&;NM Q&CL -¢YoFW; 7>wn{:Dvoz\6o+T9m)*_k$- x,*K*U}/5"M&Y>1 {yN*DC,7%,4MMKK }|øD0f37L:`mE7>SrU䈷 VX^:b:PZ>U<'Tc慗Ncďcb82@,wfU9 fgχ1aug:V/Ԯs8mt(/?X(t_[P^\dqath׈ l;ƛI>/%-H^/rD4/0-B$ H qT1<ҽE6 =.Cbf3by4$'ʔICJ%VU(Ko5;pbT"-Abgf=6Xm|"=D.]T`ɳbg9ޫМO#+Y"AѩV!mzv SİjWFZ#,\pYE{<&zrݫjʮGǁq'c!ᳲ tFV"NNн<U_>^YBǀ!YN-1I% m9兕_pWJYPgeQ^oS: #  ?hC5$~ix%aZRW&*ϿV0+x !X{/xrn3wD\.id@,'/.~"XT:gbq VLev H/iժ$Tɠ$W3m} u5mwCKf-a n_ą$WF~%_*@Mw;` @2 L Re35ѥӹn]_&d=Fiz\OlwL2ъ*%wznojJ=Tz2ʖ=D8YP78`at4Qd v2mf)$a/5F} PrW3NmFKl;!@cqlHĝ'% %Ѕ!;sAI%{JSg s`'Iļ1č*2>%XСN3Xs#XXFg7¦ q V$ r!no*=![£Xw3 4_#}pNh DSw*ѳJ#U2Mp*4u,gRv?#9-l+ +9)h~Ksö\4_VM{UE}Ǚ@|\tʲ|"2Û'q]l/d dhG Vmb-cKWo{]eW8q2[T@8uA÷/qs۩Q \] ̌LfKX-nMOX|IUsM%y3qa֍s4DK$y]N[$KNЩA<~n wt*(ކJ b˫P"9fuhܚMwMGmjʉ3zpKX$_%ܸ .'wEidyTa~&-j5ߛQ0 .ḅ 1!Hĭڸ%!v4NW44>Ct1@'<].'R\1y մK,ۗ1 R#do!pjpȃT!H&\h"&/2\MQ&yT ~h::w&Z4f(IYa1"M_^"c[4Hl# *Z%IM!}(4n /Z(iݺ<ًh:=daCk6BU\ M\(g5 rzHHZ sW+==lwMAunMcxߧ$S鬐瑍¡Y5$Hl2֎Z נ0C`CLq5?Z!LuY*!_ addw@OA4jKxjbe?u^<XYwۅ[ ]7%~F&"BQuɨLڃC}_ŞὝшzoG{]َ?d8.Db^(l,q2 84 T 0.RQkC:Ԡ3>dhmҊc LDxE/d:1{m8ͲXDQ^h6[rڥL=AW?s~ V0ȷMwƃ:t7a˛e>RYK4b+&KI"On^>}pW[SaMNU%gϵVA6 tMQ_N;Z8}3 ]V%̴Q$|o17D_%􍿝;L_maQ_rө 3Y  D>bj&N9f‡-kY`L%W;.,-f^5G(UÜ4ml {rS4UmS-*wn^H|Ddžeu91́|h@"m7;Kp?ɪBEUUJ:=3Sӻ_#|7S`fƌ}"SͽT5_: (+KU7YdɂPn8RP?CJ}[2:-]ŠR QD^.~'q%.6 8ϦdhTg_TDW4%ȵ-2[;Щq[iuQs0m ÞUJr[<J lAa3FBˎg-=U7tScm4z4?̡l. `Gb nuL} 삃$ڹ4 ^r_#rM*+'̄r+uGmNJBz~Nӌ/Cu}]:XaG35pfK irobj l՞OV$Cx(c]Mc(h?ymP@|RL~SFl9ȀBI=gk1IQ>w凷c\(D!@Qm%A9{oUZ#,s# cdhX:Qt!<{T7&[SEjTFX!qDd \^9j)6 vT;Ji8zEcF4FiV0VC<.w0/%ĨTvxH f"2ZF%Ks X4?$vXY9( 4}?-譢C//c*CG }[pvh>qGz#!S +L@iK1q o[j-I4b?誊* uthg[!p:)-ɀljRB5Xh*&?J4LfCc卨N{{X5ך}uri㥡b\8B(5PuMOr9d:1s :i;s7G$s BpP+=Fz=$U)km~[I@|7~^ }isy\N#OkIeD|קF~eDeh ;9=Q!w7ݵխyG5Q%n0K( |.S't*C7VG;^Ū`vἏ'K۽'Cbmu?e{Z"Fl[[6,. *WuK"wElQ ]P6~:#Ahl|}">{\I])h{|bJUɷV{׏#qf di)s c6MVd[3m.12p \D Wi^*1TQk_(- mLGv3J$v*'MˀM?:!"CNR|ҫ/:G,.KFOǚ÷̳# 2-DC DA}O0+wfgy/6-E*XD˶վ(Ì:PcG{yC<ʆ)#hI_L$ q'n:c#󓸷WĺC%x۩oi":7ufbd,ʕaqSA?x,6fė.keE9\DOy=(*[磑sHR1棱\2_hИCX' " ȇLc{)}y/]$Z BP̰AunZ {iS溋SZrDGGE{Rc' fLrd.ōܵ|jyr.W҃H V!LPwlBl#-l-zɓ}y g zܭ;E҅F1 Z:Tۀ9g 3x+>5ƒcNYJafg =4>9 U{iq]#G[f} MP'# &,65S#.*)mޖ+:wW$jNṀ;8"vZ6>c$N j$I7Bz.(Lށy ba#e14@NXOg mb1J͸`xD|hU8H6M^8^D0l+Q~^ H%(0EZ)z![ sNhR${R-\c7G'.-wo.SP! uy]į"ʘs}[13zL SG{cnt1_Igr.4A:H}oǐ }cP,na&'K+S?Pd|H;*A>%Xszy7cVB [٩HFQ]dJt`O4^Ӫ* Gʫ W!j)z?z;aS=C7X]r)K#Y8ˀ%5eN~;@qNHOt<_F]2:j#Y̻V>-x\dCTU3?h\\{JQ.s됏sa_d䑝I%|8OF asFc KjAoOm]FadFMBOT<Ȳ9йzQJJ49LF1K)U@BB!W@WC28`Au3EzsC)*R}"xN> QfxSb^ @g W-6[w_jƔ1m_2i2;3ɜ?ȸx:2&=M,gF+cp}Cwȶށ%ޢl%/\p)7e_.[CL< 18pY=0\R5h ::z PJ~?J*dު|Q;-//?~s s]YjG@ J\`/PjfcRj\|)vsZ7OH3ídPTVXY|OִHT9 51" fLz?O|vѼTcq<6-~fWkAρ`:Ʈ͍֡6 >|mku"NYN`,\oˏ2--tp:x(d'&jtF6 #WZ5c%^:8& I [:jXTv4FL.1ʀZq'M5Z)}0%E:,A\s0y$ԫ:zd,5Ʌ5}-*S'ҕ eR@:un"HO_<6ĆpzZxpGHه#X=^;-a\C/@М)|3aQtuNɖ\ bE}L !ss bc60/I@V2?CNාcqDKc:h?1ևMZFOzz67gCqv% w IT:E lPS]8gsE/~I$TYGjPJflPu V ͺi3IYhߡnL6;a{R艱ې+o:`}̷26Pidڋ/$n'bJdY?HG/ AQYtY}TlFedH06k@9#T Y;BRLheE,\BDSIoz]x1Cmp[.Cn|lG%>*<"yoqv\CN. ZGXIaLD^TO߿So/1kqwOX''lO)gowHKQhg'{Ou]ȷ ˍV-U#-\TE&m3,"1٣ȱҚA9U~bg!5`^ \xA !`dҪԃ]<;T;0vFUM:tP#xsBU @ynr\GǕpDqs/Xsܡjxg 6|T`o3S$2zw>QY:!xb9Z %L&#tjy!-!XEU$-SNAfKž ^XUp|٥r 7_{BmYS>]ҶuD"t.k ~Nk5p0Y)ub;Lo~Q>-G44->\;RG҄q%mQDžѠ z ?ԋu?aS@vl'bQ%e %0Wr艥/J&p&Lin CvC> c0!nQ$|`CzVͩܲd3)5@H%V#ւKMc;Õs6h*ѯOdQR$|g4#c oQif[ X$`Tj_ 䡡LF Wv{S\;w6-F/RW F*6L f\p[3|CV_yk^f}np&WC V5WLJaa6Ғ'Vbh 7Ab֋,C`,YCsIL2ojjy d\-;\{weVfyb7ҴLOK?]:YyBHg򷭽[uR|p~o_,be+W>~M2|y $%*uǡX|jbfqs딆_],k/ˬ [SVT)mKR{>VAG\'^ܵ >[;$-?sh JHS s*,K 2-&΃_\o7U>|B >,-D<˸نcʢn ,:ctq4=G :M_g }D/G"2NL3ʖd鞯Ĝ[2s4tR\zr7y[Nye?#_}Ӑ:~>O.? T KݾocM۩ҍ_Pn>J((á$3b 5:fj۲:U>tp{afHOB{mEا^끝s]؍&`欌',FJ y{i?Ξ>XӇԈϺ%b4ܸ ע_iN2C ?LVzki-G\DCI ZjCĖ`B4|L ̤‰܁8ysRs,aPGg5˷Y%:4E- g`afghL0 & 8UQP~Vsx_'@BFrS;GS,ApK広 hYb𴚉i*35) FX[)-|j^p%|0SJ+Ƽd+sYo;2=#v1Ru {['?QFT"vaOX{j 'pM Z!Lb󿎐ilQ& cV~\ bxz |asdp12(LX8~<Yw8osZgcM:ha^ @=7AB`ZFm5L-nha$l0>8,UDe%<#,V0DmPʆ!;Vr=vdCî)z (BgTfs@DA--uw b W7O BJ$+o57{ MdK5d_VAL7 xA]Ϭ6o#c; "hR,k#nܞ{h-#/,~k2PQ1FŅW2z(vN'XR_R3_43< G[û]W:*f}:|\d//[l yaomP b͉vr-0´,>+AZM:FiU,1P>qOahVkFFJ$)ϳ^VG|Nn~AuXB?9a jeWQC{Fw&(rܦ3}Xr[Qt 4͍:=3⎸j<[a{ǬLkZmC_Hm=|ӗ6?>ːb Z!ea𽱨NXHPЬ`-+|[7d-85ӅX!DUr"%B|&̠UBp h~SG3OK0ܯt y>hwOX˺>%2@s}I(@֏jşiJ MzuRP i98tܷh˓CWv^SԵP&4B XLh1Q+Go/LExV6Υgc84j(7EOq>o*+-RRSBykukhrwQ(JgVi|.dULGD+~)r-_$ƦEw&= VV+65:@ 6}}"I@8ŷ,+yqA8.YODO"JhOLRv',<pDt`pdeA7~j`Hw ѽVն a;nIgODp@Մ<LiIZG̰y8GXbS6O(ĔSNGmyP=aeQj}qh8[xfd sVXB U8&|eOtu-\8^K`"bH14;B8bSKz)M4868AH>ʚK K͓DG Z2\>)NR'Č9a,w?b/ED_6BTDan$l1'ʙiI Yej1u|`crRy_,c,?'4gtKO6Rִ H*{ \~R}oN; lO1iC}\|)#l=@<}$懒7Ƿ"DU2M.MNs8{չ8= 7Ơ(Q,gh$ˌ*i5[};m<1:K'N筸{Z9O9>G/?{4wF A%?GH>><_=ȾyS6~EwE̯{Hz&;6\Lx@a;`lGt\n2 X\TZǮ惛8 FI=k)|H S ң<>zqܱ4)Ee뇸.5)F%+ 2:b/fg 8;i7@mjPֽ!DnM6;F͜%4o55@KV Qlt5>[e`5#C(ӛH;ý>TQˍj'S5(ˢy< ](ANF#0Hؤ L`ơu8|V]|5I}&27Ql7ݑ2iUpx@;V=Y]fFs.RpZZV7Xu7n r=%)yڟOM``urWh|PC׊i"ƙVGPNj* RK\GWwuG6ŃȖyҌUHf&Dzz*GXhE˥;=Q# %cXždHy@2 X:)r8TxS;ˬTqg|fA40<ئS>| * "OFZê5[Ȧ!mFqj9uޮOHK2=R&Pc\&)1~Um^|,YHG j]gpllX. UWf_0!DmqInTk̷ˀI1+֕P>D}4fb>~6Q<ϙw]CNewUCH:|Ɠme1зfi^MXUAMS{oi)ߨ~ZcyrqKv(t7DCr?= [ci]OnHoA le+0G]C(\`q_d -T9YnNU1$ YS;3БF7Ϩ3o81X0g.3‘ OL] XO_o᳨ [xM*&yc^8J;?,nΘ ؈7`!+}.e3zanh}I :ړ6x1aL`g,]]>^ׄO?FF X$48,282Rf3Ր}5ʹ'UTD8{1b,4ЈXr.#5^.k H0R`}-i$M ۲t"'w=AJh31꼝FE^4-ݖ1L_PX >y梭q@1'c׭BHFձHS2:W7T$z*ǫ)x> pƤ$~Ŏ# u(O\Ie_xrn=`[ #\{tsyY%@ RICGb{x[ktZksak3%H$ yGNZRJ,*q7m WGl$Yf SbrĶdkIJT7ѤP,Ր d΋ndUձZ_g$si$j^Jj ؝j 2pFoaft-wwbnT꼚z9EC\YY.Ukwv#R#(:B 8?A{l4AH0wM|u i , g<\d6eX΅ /qPŤ`:)L {p`[>fc4r0V>8:=ظo^Mv+}3*(fy eBTjTW!mzEv+M|j]&w?to8o0PfS6F!&9ʟWQ2Cby *qXܟ^_jfǐ?ϒưw57 D"+8׈@iur,6{TP1in@ѡH,*)TJ5$2,1I'16)m` ";{hمΪ58o5a_9S1Hϭt &?(W1E Z?7nC[rUMrnq_ ehqk_;!b?F{^.p)T̆w1"i@?!#0 Jk% *L͟(yy:R>2{:I1@QGำTN*w-'Tk@WWs@WXPǢCUNQ0W8AHgGc =ujINYnbdCIdT`;ҏ.)ˮW J.˕\KK#PLZ ɃX:cu8G?G{~r#ʜdž̞e-50@B~п"`(4D[ߔa6YİٍJ=$W ZxE|ZScTVB#XXJ眽b@ l$I6`+ S5j,-چ@`?[ߦ9it"fٛO%o:)Z.bUqGz8oh54'1, "n]H#L{v˼%Ԭz;- 'ˆe]d~ g}~ k0bxGULj^?so֌KEb鱬s[#͊#6!3խ (P:k6YT|-'G!ݲ>Q 1b ]_(4[ue:WjR?ןQOյ #a U%g! L* 2]wJ로f-(S mRfdy?m#ǽtN=.ՂD0` ؃yrH{`U@?:?:+d-^LrrH&$x},N4 1|=ff,bDV2a3GSi#Й'ȑ~ Wy W~ÐXdyF hǹ8i0xA!lD>^P kJ6Yu{hij( xҠ1P?ܯURY$YX!+g 䩿s ㅢJ h稬"q^iJ> 4r,+$a<,Bg<^)CcǭgJrh Zq8C?O긲}7rMOZ]HũH7Qu9Aڅ~\PxZ8w 2>i)o.^nݱc)r=,1W=7)fOK{B*tՙjWu"x2~bm,{lCgS;DHm.gƵ(\D`Zle%wh"kdnWhZ9NSqCi[ģЈ$~-廱7@|RA#<%]f||ض.4“c` Iل SR|Z `9НE6hGJ'Bq>yLV0[ x ݄|: DGỴ az'gjU#ϻB.,?up(ڼfY6gf_9lo?sPGFa]9@?ZE,?6c o"`9N [G0>zVѢcO"[U9i>׸KpwPBܳo@%Àܕ{7Bb;~sN G/fb0V6N-^T, f Q0=e@.^^hl33;F`H4T>qɷ$Xm[ϐB+-&>og׋/oD|u6h[W: w4u}HWxydD# ݄?Iid7gO[}HJk߮pd.B$a_;0F#mڝ4CXu f6$ۼ?4ވH/_%:e̟]Jc__kZu@tJ3aҦ2&ND\~j50.m nq\xNfR/7Jb&xW0T4Qp?EL(#&E}]Q.S1۪Di8>EtjJ$NA36#)&P;ܵ뎊.8^ S!XXGç^pn^\ ۰ (Br4lc *nC*4tgc)":j|cPNw|@ŕ-Il_H9;37q RtN^%(Fv c29E8?.!G_(;YDg}:[gL!ղ8AO.=7zlל8bV&*X˗r)-nt'̔3~E}v_ [%S@nK)+8~!r ƗӢ& q35K40L}!.h ˛̽`C b1vڀ#H_)6hHCC&k9 *šZƑܧ}Sp%z/~pJVzK&f'o֎rax €ձKlA]N)*i05Bݎh;Ss bID-&o2o|ZѠX7rK_]`( u":zDt%-fQs[`oA9&sBU쎍s.Av? GVQG5&\glU,"u#/"*cxRh!o+$y!iʵdA}6crV"tWGfmY!U#`m{ <׸ \RQ"nќ|IB[+| :[n~M؄U8:xB|-æ""?%l |H字,<5;Us'}k~ynHhY7794|dpWRr8'{O%߮6E .с2Q'DIBk Ulp[{=1ٲk'1QpIJ]r[łzӂ FtLRk5 3{EL?]$#@#̉MxEh: $Pv{>E+oh||>  G@D%Vlԕѱ >8lN8Ŀ~jewP$r`lI8KmjL}zig^3?M!_jLM>% 잿|#W5& f?# k|A*#-<=VA̵`+Ukh(Pm̴Nb|!Ru̮"$/ ]t';QQdա;9/ˏEէ] bҍtșDª)t;m TՙmV`nϢV>/"|rxvlj _aahR(Bګjq>A=U6|MhIzˑl< tzd(f PyܤB(h!=x\i=\؈(R2hf|[^xq8Vg-!JU/:+XH@bYyW~ 5;=lM%.f-,8SvBB ocu% 6w&C!4HYa":-,l/^;dA!;yp 6-%ic:PZdEd_vֆh X>zWB'thwy(Ltonr#qaK[+)eݷލ72Mgס| ^dJC>@%<۾0S&t/ۢH~cv DSOZvߣƕ4xs}J%3fr+yZBs5tnX$ ҵMQINFAȏa` -&2*|3b~⌴wzI!bF Qܛ_Gɟ0Û|u*DhcJnv&8becs } ojʀNaAtB\Rhu>{Tya)tJ=eȱaVOrK +<2 Ŧ*tFOʆB70`ڷʱcQ|~;^5sxipmNyoFV|4/c5ek^!:p yR _y%NE;OD [R$-ȩzY]*̠~*ÃSG՝Dh1JS 70DUT9!Ha7 ;5l@@8 R[CJry~.A2/IiW] O˞NzE1 ,lfAvb(ۏ(暷@N)]![ˆ7?n^lYOnah 5-Я\kI}u;r, }nyM/, TM2 ۟٬G)42$Yz!W-e 4;2kshXc2xe^3|\r%᭓xqD3ZۛO=SUΎڳxK,aG+JX<Pؽ/ Jwґ’[-&23f6یiTTQ'r7uVN`r\[[0il'̣dgMDA-j˷ʕHY7r-GCFJU JsWefC~| Ignؓf7>4"8f }tzƨRWv" Napgku8y#)@~ $̔ґȴW7f?6>K,G6MЮ*̮ڼӲ}tuG o gЦC FJ-XÌ'4^o 3S/F>S`~;~.SN<9ڒg1cfRݹp- WU&=Ú?~t:G_ hOțlhpGbKع5w!lgv*F_JoLǓOnB$xfJVG;˴47#ײP0 c.CJ ;׶.At]![=(H@I- z FGLJmhM=:Nh~Eqs6L<|6b6wDRNuTˀ=rR UiiFX\tȠ75Z{-%5N@̘cکn796we粖(Y돮-N5VB.DSN7*̮{ TP:^8e O%^_ZT}E3a4 !I 3oL&?Zv]0 *Mbf4ZLT@\Ȳ/y\{j=7d72`pe'P aԗqA33 SEVRtv?wiTʠ 5%XW8ߴƟ:)(xZ0QR\ LF8ֻA:NWX7 0kˬ-#L;wE~nB~zKTHMBWa)Ҷ9uP`6,M1Zް6+2wB,2%1_p-<5 lU)VW䉈W: 63}3K*rc"̄T1}$s{+7m%ٳ2'9o7!ˬ@8|2/cM:–МdCi;[66~3?Y}ۋ{J Z+Ly6[=c)6eV~H*ܧYQ|Q< *`]~/Ρ&Ju PpD1LJ9$'An<|iUܕR#96?-7e51I1[ _/0|ڌ 64 Oxߐ(6ai h/kz'ԕ˗rAMic.O,o4/ Bq/&jǣ -1' WhV~mEဵUBt\*Mx]dY8MTز\ Z11s ڶ}"MtI]{yaȜ6^v-h$2K0|))˿EݕN7O=iE㉰8dyY$8(AD!W%\^kdwլxຨ#˸GdW(-&".|`ֈ,ۉ|nondq0dzfx}ߙʾ&}jPF!#ZEL XJ1Peƈ qSۧA󻍿u-RU,|rA ۊ#Y *1x Ԓ *jk={ ;e#] mڋ܅G;lVyLwꭉRY7V%UEIxJtWH]wnqԿak wQepfɗ^lZ&(U6 iK)ۮcY59sIɛ+5*^,>4rXu&/8i ;Ka285|jƭ@ЭzBj{)p%K:or#+RRk O\5eN:]zX"P|R Q,/+yڛaSP@dk #V1Jg@i?VuTO,P@ޣI_Y%=wHd̓:Q g&Yi5p{,Rݼ8OԢİ2+ɴ9l 4'fu\FQn38-jobXLiL6ϑDqt? 4C{@/]􏈧܆fKh7urv w* _jz3 n]e)"j=, | gcU ߥQLn_c|h5d%Ҫ c҅0I~(4sM|9%7B߇M[E QjA:V#pn7 xAڦ9A_!%d,_Nq-{lu>-=O$ju07:uiGYYAHMã Ek$c&$~%J&;[?OTmaicfOᯙۀDcyE=3W(G@yFl81)p-iB_Qӻ([ĔM}w6?~!$Q8;\SuR<ORِ- G090ڥL9msY^ɌQؒHz#^xvYSUl˥VyUϲ<o{g hR$΋G'..729[9;7O{N`cwPV5-W\'Mauf7`-R:I T>[gFA79$ .oЁf 71yS5"sxR'Rƹy-CgV! 9%urb\:4[Ox(‘p[_dвWybZɇ#sĈ5i{i龅3?`x"x7í 1Ԯe\ !(D3"d\}b+ࢭxEn obOHVꤎ۲GSrf|N)b5qz/8eڶ KY>SZq$9Z˂L'7/ˍ%)*ߖӍ,}$Ulu@uCF`ڲ(7cPMGE@}w\z ?yHT Wrq#3#^*#dG`¤Q>Ǿ`v}ÞB&hT|1[ыB{ c1 'GKhF+?yȽr'Mɹ:q>Wz{ƗcBRuϬl(zo>-zuU-Yӥ?YgcCQ)!>so*5 w<y!Y:z"UDY X82g>wV=uY^k <ĸ_Y2neIXn"FN5ߞ~:i۠OA8kh'˛ 0G+Q ZVZr6C2$Mg\XѷQ#,ْqeOq+o{̱ZBUfqd)`xihbߟS^jՠ =C/vE63Z7\00]7ݩp5 ŏcd!V.@pqۋ? O=KtcZP/u[(OX=oK&zL <o0Yc/EYJOdǤA6 \ݯ_`hEg9 0p5םT)FѶuu r‘<<#I` k-ۉ ' $.r:Q/.w |,'VbzP7;Gkv Kft3ʐ+kF(Լi4=i.K~P[ѧljv G[eY;k@wTl%7%A) tn@.ZG"|Ÿ*^gcW)ܛC'Qk?q?ig}q{g`]w(12#L U%SaA㱘H7(Htԣlys5|~6hiQFhF(zK}|ԫ!#ϵ>U4 6;A;֬30jի{OȰo6.'#-5o7z?@{&N;Bǽ0h0q|75W(wϮY"yۚ|?Nf2k>)\HlRV /Q;cy\N :c8yyP#?]97i"Kr mVxG_2< #Lp!J> ?|RL٪ckmq$vF3=Jo1L=pj[~_/6e ~U0BT%>ᗗ/h%cӒ I.jOw~Y`fE29吆&jYn\s!(4wz{gH Oi Z f|ެeyY;yous_5{z{e4#,KY&Y4P6z 5 y)~daAcJ1`;5U7bYх=(ydYA P=L(SO76^/@E]+ɎPMj2jRW\wW36Ub^r=@{7VpP2-Y^EEp@K` DlxN%\>lqJ/V: r,8nY_9P/.{)vL|GSR`g]ۃ-eɠ ^S-L+T;'0ǫF JU$pfWbVڻIQL6G! s Fμz%{W8q*o?QQDm\2u5IQsffj;d4`X!ł<8I)7ϕOjbo̔ "#iwuc{ڜM62aK4|c z|2$/0>)]`R ߎG\of\d.k1 j3\oMn7z1P[[F.ByXgWH"02D nvfխѨnr cyˇ6R2Y:|X5xt: O45-9'GRq^_.G.] tA`^{ iM_?t"\ ?v @Z8EѕIUf *f ɕ4X!V/ @Euif*؏r `U6t(?d+5X").q+pgkF+bHS!f-_j$4!A}17X7{5{CIt}!92PL.{ %δ%,)>r(GfB~Bgٹbh'[k\g٣x\5YdKRgb~@ xbɢ<1AU SvE'AMbh)]77qV\p5C;3suX>\IAëK<u ed> x[ԟ>׼J9urϟ8qvTZX6Ԃ2o>P=\Ի/&@CRQ?!sñSF<ګ4p#<v/lb䆕&TeI:;k3@~ųϻHp&6m bC50̹ ~@ J,8 dMk+l߫!V2<6>Tl F13Nϲrơ(`t>Ǥ4iw/ۭ.[lbDp!{^oe'wsէ3\::Ex_a=)NJM8łE<.*M]''A]Gr|Jb׾FEފ-OP \=(.cKX1a3;[gDroz;H,M<_bs7 lS=L*q{߱I|Ko\rr`9L64<*OٕJ?c8a-62fOҟH}.%㍕);Xt0r&D  ;Zmi4TYdfC dakfNB fFlld&'N<LiEqOAM2T)9ݪGБkhYKѪAy82?݁좺/9n^%ϸJg'!J Stҙ@=$L'lj1~_!qlI}kc$=*miAo\Gux'@Mȷe PbPco&E]mP0+SKi&-|6Q+sTѾ , *wi|@kܿiъf}0pknpIҧDsnُBXZ[*,g`Εcܵ=V14o7 {Fj\COby413# ^I$/_&5D[[OǠdN$YFȩO&sAJ6m'-Ie*=׵|p*3E>X ֙W0ThXb" 0??j78ϲ`Bs}q[-*؝#wZljH1HۉYNdrwL m}( - }@S>{'ǝLAzop M+M->FYoӯ^ohVQ4G. _8cO6y>O|Jlia׋ = J—lo.T>h|R (8ClyE6O,kt@K.*<dY"L )K ]GOeA zj%0P" ,1Uj?6:&Exe ӏ@\em>:niŜY,b=s~F3֤ OZ?sO/SY^ 6{S\AP>HV>xMBfunFqþzm25kHJOw,>->eS>lL:o\HG3@]Κ-3uO7}$qb{_^*(CX#<jN[:! 70zB6҄9CfW">C7(V(/&ݙS ޾˦B:9oj./z+ ۩PZ$x\n۪bU4* SpcmV&@z1\sV!C%l.HsD*g͆ɉ5$B$h`Ve/"RL榱2 5onҷ٩k/>C"@K.ݐSb‘&//a6"=x0tDS>]61j.o_X#nM?4~ډiVѓS6kb%음Sp!k6uфCЙ3JW'?d:O1GX9"r yҴ\N;5UG'_AU8e(ۻ''AYG>PPJ1!4%9Ք knbulԲn6&t=#q^U0{ZyqOa1 QjT籖izu0:e gt}G-/@@wGoB9׌WFb^قR uYWEc@gqq5H,+j,d(A^"g& ;=Q2eGZɌ2Ƞ:cDH 2u ˪#ove{-:sբ[o;Q5Z o^U9{Ikiy.&HTu)wc|_3gE: N 3& !NMlPv01UCSVąK;hXxĽ؃yA(s&lIYg@'Hk gQ5#a(4{{@]!VjBS'*DӖ:o{@Ẍ́ W8MidšV; k(z0AI~ɧt.| իw=mQB1^DBH <|4vv"gS9cS% ُ^”XTFsezləɶL 6}I燐cLՄ93I34g=Pſ׼',3 piٽWWT|=F 㣪 ?6 hŤO)#4Ea(tNA|d(߯b)}K Bّ0,JRTECGl]iQ%?y}`4cN_}{ ]4tU|4#}]Pnq$2cINIz<8efÜUUp?r>60 ?7%! B Qlk8{HtbVK8ՉgmJ@~ ޴̼s3|leIs(~|i_ r-}@JJsF3Q#IH:̿7Mu PE{7aą:Czg﬿aFH uEjL"J2XΚ>`a\KKA= B:4)a[}KP*<- bSBDj7yw AK0{Ue~.qY-^:`$&X>˂#L;{Q+\>+q#}Q\E"DBcp]vОnE|~-ɂJv35S:b.rܳьG;qo?K9S_AkˎX̑춋lU!l bm̔3)ڥ_&j5ޖGg( \emNYe߆V>;V8Ϲů&_2eJTQ sh84 ?c`b~L{޹El.jTT2B7Z8kN/T@!V0|;7i^pԵB˽;>T|0\2{O[Zo̱0,QTsA6\<ky5+!xC(NoTg]÷ xZ`;lj|^HNjx 1nL4Atm`sJ a5+0t4淳#J#no8Aٗsa,˭x~G50!VMd|Ϫ{Dq'AFKVΉSu*ے3<7tza8SR*0Qdp|~(?R h  lvUnۺds5ЪOCop6ЕFգ//a'ӀP= WX*^H&s O&$Z7 x(ƀ30}h8r*iUҗd `ȧM oDtfpMk/ l3ŷ8贩Kp>,LknmBE5l-?AICbU&w@ vS?l=uv"b8 ̺9ӉaٻN $K \YOrK TLa J>ksP 杅(_s6^zK6LU~z^&UL?vWq&q_A*@{rQ#5"lmJGWl+ˉJ؍~&#ƟyrꜦzRrHasQUwLLS3Eq;Q,b~CPI/"݂J~fSV$ywu$GZpB|4F_D\SO.MU`_@C7:a~i<)$ڃ')%e{4]C Aw&rCH:6)bl?cp{7 +EӦaRy y T&毡FeX¤[ ^:TIAg rwibH{pR9XDeiI;2 K[/Vb˲ ^e+S $NƞN|MN UKW0.8>AU)Ӎ%Tа[ MY1Q]y>DTuQꄠ>G!QNl[;5[3PxٿP.e fH#Q8MpdU-b0Wdfф8*ٸ/YIn<^j|(b ͬfU5r(I]_%""wIm~d$xYXd(N820핞iW-?Z:F#ц;ҙf'|??ET&m{·uVv0&3K>Z,NA* )N:n[١w<N.X}Rc'\Azt$zot]|;B,oM) kؽ?UB{N8 6\^X}ݑD* -Yp7yY_MI-^?35Yb@OcQM}b_e0nItA]%wBs.Dnhڗ/vnb v".Ûx/,[!^@b JRn܋gl2LU}&q{qM' Hg;n-[^y||m"9%O$uF >j>c}-#qN~ zsZb1Ns6k=R JcykfurM]nrxGl(oqrGM7-RĢ1g$w_рg; U~KA$&͖\!/uTZ!<pJ,h,\v؇cb V$ys":7*rrt a⺞q2 Չ EOy XVBЁŚTh/$ܨ:X*"eJ|[ M{NTaf#tfQ?x/'9_ cV8ʼn&#sBioF~GXgMqLꘃpI\>&| G`Y#Oځr`<\"\S{3pN,^q\NF޶ԣݘ1q>Y Fa,$@ q\)ZiY^X NH)SY_g)YMB16@āgDr$ BUIeCOd7^L/>g/OӉΜy&NU3-ٵ!d{"aiQ/j$JlZ9|G ^ }\37P? J(]:$(y@ \ݔ$Ll,*Eq't 63_ܥnߌB +קq""HWqrwFȏ-kVg(VXtsysB+`5 %vv^UbZ~8)lK_ Q D?G ؝foր  T Zǀv wv`LCv܈%ACZM*̑HdiHWb=]8oFA#u z >]jeEDCv+0}ꁰ/Jy>j,j ͭ %Þ/$[O7.=΁5 =:ҏE}L)JF*Ǟ$j9s42p4!Jte^uuk e,>خQ=PP`oV-g $1k7o|Xݛ+Rg+}y@ }2N.8 # k![Q'Msǧc/%'4 . &u!{4vv˪E&&%0Ka0$pj4y;E::%ԂMs5C55~XM /O7Y7  M%@!轁dmKfgi"$ LٲFj;rFA0f(g4a$*Ν- ,~-=ᚴИpB/&?tjDoWOLCWnjng*A6/odiyuNI6ت $]\͉6̰~ uyGhew%JKx:e![' Spw§<7};%+A u rI=t&3MJlMS5qf=967UIE!OꗏJ{c'$Y*XbT&[&ZD}]ᚥ^ ʹfZp,"˱xG4^',kD6p(]bF`WL$}i&`JƻupF128D?Fas ȐĘ#;5@ VnYgKmI:4K/Qj*Ќ>b',74T_/XQ]rOT|f ʎ?L&Yczcy+Di8ޫ=fpAOUd!^o!7 WD|s]іnN-|m }/i\1 3jRpXn Ї64"XNv 1jS YUx>49?-x2&m')YA(itkh΅SuێmLzK%Tɍs-Z 43G0d^voy~2)Tϯb\9徭3evRȪrC1X<+4K զMsP:L==S\Gِm2HDi⻵ě>`b<9g\T+/зwխ.αm ^#*f+4}aE[/D\6;;=)Wxՠ)[F_. U]ǯ 1 R~)kO%!|桘.a.MaGI\(PS`H|<,=us>GVtq6ʁТV%5T mŊ`%I'ʂ@3D= ؼ[o;d'琝 gm(y/hO>9S?@!X@Gp֜Ï@%/ר}Ҍ8EdŪj^zU4}\9XlSI`Ky@-CӼb*izlZaฟ~~+1]^Q, ̌8Y *#O <[045yfzP^w8CMqYe# icz4[ze6!b9~g˸ Q3#& {ծ t l~i%<|X#pFv[l}ؔF% i`Òo+VNS8Efd%ʆY 9jIV /vĥ0\X|I$f~!K5d'1':@TWY}IT1Dk6N2 ~#C ZaT|IӰ7/4 z0|;N3H񷥢DzV2Cq.νAy!fw],T/ՐW@HIBT,\e#98J6c1r ,t"|ЯڦX0 PwQ}Ę tQqSA\^ZbB2ל!l8o}(qߵ*diw}q0rZ43RPl 3l=iݺl<s9JP:a-D>'\ExvCUdLj(( :ЭYetU2`_띀Pڼ  OMh@*MXJ*◰ z8F]h=?//'mYM_c}$LkFIA){UL^Q7lQ!+[x)rcQII "ע(<[WFm.iQC;/mTil{+7!g`y B'jiys BƌfmZ>8 8a<]3EV)?l5D>1CD8a4[%R6qoaCĠN lRh8(u)sk09: ( k6 Kks$/ nbEDVnXFN=OTHw0WWY,NzNd&> L䓧e"THn7iLm*1izQUE}2@ʝoaͩ^@GlE 7R<6Q^Bcv;f; x AO6cŴ0 hԦ[~fc2 \od,&=oB8@ߏ2.`C#ZDX$h#:_7gu]}T8Ύ  ^ISb$cWBD* Up1m(- -7o9fY`W>퀽t0 Eux DbXȄ `֟b]#’DQyv I8 P !Ghsuku {[/_g9BkSBq}@5A䠔Ɲ7Xn\\M S髳 VwwA~"Z8O%tjcۗ')½4/KjK/"Y% H)؋,|7E(⎣etʾbWDdк߫gIququ/'|Tӑ2 &Doz\zETGJBmIaB Q^>w٪ Ŗ K&:k69}Ď05μ)5Q#AU ^3vعuv JA\9 -Gw `&b-ujq0@[ő+s@9iu?S#/F);-6[Du.]uE CV竕_Ik },8XP]q+"6Pu1R7DG2*$2>em]YaF'x|r>.o9*5u@MDVL>P q:>3U-BL[7{+Em2@0ҜϰC`zʲ}C֡[V\NXo?ʋp`QB~omgR%}v hEHj,YN>q*0dSb^bb0Bvo+A1ZmdNziO"ӑ'+7{UY-EИt:m.^IȄ_QjKzVGH=_$s*. g[)0C؅ny=~3D}jE5i,B>/eL=^}{oTgp'9 1hzˆ!Ef\c]v9x )rᱫ;BOrBSI =Mpl;tb 5$iμݞ;o1ϵa c%ʼE+ܑZDOBWT)M<Kϐlo5'js8hQӭ{,:؊y6DS NW `\Imx}vk?u^{W s8o]!{wqr:R&p:fxAWht<ׯjƺT؃~{*4OˌDͰ eD.x)N.si2'h0ϱ^=@|qnqa`nBYK+j'"߭KzL8ѱPFʸ}uj0iiU`E Y7Lb֎ҧ@э%g?w_ Ow'{5u^975^ZZ&,# nO~34~UCtm7: :̧f8=`E M{PudU1Ď 0Aneѵ2G32ocBzU*_p٣3|%N]{{L7_B NY$Ko8:A%IyUayXL_0Mc8ٌݭL*e9s9ÕjZk`\S1j-;"۸=7SO0R&Rt*}Kw9QY ޣ$DeV&Vq6#RP._FcfKj_h܃#x ?`v`3tYFRھ&ۯEPaFdkEw=dekPV6 vg]INDCoUy2:eWyT. \[nA5kي]btU!ə"NλWquVY\dc? sK>l?lS 38OoI:"!P20cibv־A9顊7RRM*X١`؆gN;ͺu7LfLMOWk 9\XPM5M)[8dh@u9#cA+[y:GĿ;y?_rV̝U:>2wY~Ns^Xn+|Ch+h?cDA$u6|n@'8ۇA/L?ҭnI=wuqe|'բ°YdɫȨ yͣVj苾J*3ڤd"^I`črYlji wS5 >yOV@N ُ(BF&XR/M Ŧ7'|ӷYv_W=HFJ'68"e# .Z0ձ un]vJtEAŅbSey. y`^ԉpL ePzae#4w:wO3 6{mYi+Y"_T &)@ [y4DaZG$R0t@ aNUA9/j.7,pЯ#1q'c &U|56+ Opb咯ZHQ%0v/o=fyw)A漗rn1A-EJDM&,ZK9HdN#/N~dJY]x<",+xEr LGIpx7Ӎ5uf%uLҼA4w@= G~_^cd"%%JU12c;+|LLb2*6ꛄ/'K kʽdm#=ŘGaY$ĝ*"CY -"gUBТqC2!W|5DE9+ocDuxU} b/t޻Bb8;7^&]8 /ow(( )Vg&6޲2S!:BwPrI'SX҇\_0ͨ(&r3|G'T ct}-Sڹ6yCƣ^HQ.F>U7nV3rY|9+ȯ ϊmWݬKj;tɡyB` ط46FXNfDqtq]^JBDgāx$wb3_~ZjN{L 6Ʉc':~Ǣ%Yc뉓Qă_1{9JS_) $DGYvSYYZ9,n1S;&iv9>ڵSpѬBW`{?=NjFRr% Q6 iB Jt)C?Iݎ }'"L}M߮"Ct ڀpRt#nqÍ-Y)%|szoҳ"ߵrLYPYڐ~zϿ-ձsIu;-=Gǯ稘._Sap{nڤ%ZG>E<0 mT"ٝ9`k~>wr߸UOU ~'ʇk:|1ikI]Mh 0I=a '.VkXW(·W{X99Mdpis;4 CAQ[oGTeKM_@B~ȫU"i@JʵGJ1 {zw^/ww-`92t9sf ғTjYFw JXv8 [v}3HyHkQe׮D:&=W΢3*V@d5Gŧ 8j &-yhF,ȨyaD=Hᖗ甪cQLlZRip+HA*_l;T<ɋCvSmAAS۝0vru"M<-6Rޥ/j]Nj#yI4E8'_TGIZcG_Ľ'KD:HoB{v :J=pØdm`\hf! $ǽzwsF{PuV,x^Gow}n.wu`u`.6\ÃUF"O#fAt5PD3z 5uC/&v^xmv~G 0\莞ʔse2_9kYی3ޚ놂|AŦGOoEwZk*X.tշL¡ \4)_A&Q[8pe!;y Ͷ=%+RV>Hƺ`7gW$v0=:8~ 2ϞYz\ڄT p1vjndsB1bS`rgyɱ豦9SK zф| C!eˮ-JD/: sg+:ȫXƢ`-cma2B`Hs{cҚ}>{ }+!DN;ߦc01V(MA$Z\v\,90-Uee 'L<)/cj_~qpEyVĽt`2W\ba55 (u/@j[4kdCRrzg!<,dJ Ahe}7@u@=gEoR\bz4owG K!jWfy[= M%0KKFuSoIb3 ;yc߱;3\oWc[PN?C"`6>_]-']TX*ͤb +ͥ%}RpU,tJbZ*z><3,gipZ\n<58h,G' eiZg䏡6 t :-PLsҕ@Uf61W(sgIkGRYN%`\w E'8'_^,n8T3_w^m=>q4m %*YIowtßm˯ IpV^Uڮ4Vh[b<ԠlB+p%8HDs AD ,ƚ}Ӥ>\21&w|1MOe aM Mm%('[q(~sDTa{ٮ[ÔPK[Vd+9:;^yU )oɿ 85vO/M?|rVw<_JD.'$fkGAlw|e/HRl*6,[ jY/9*`ur߳&n ;;Ɯp䏱B ݕĮ@Ux1|zS/$Lr 9R1͆Fm+S+;:n(3]R39€[WϳB|P+C éqG<󂃏ޛTYFmQOvdcgPM̸cޕ0RdDľ3~Jt| PY2JQ wCGV M/^_MxN))zFPN2H|`HSo@Ǫxَօ#aoHc m,+l!IM.U?$Zj蹪x)CIT Rgw#v,5j$84Q%0:V{LLxG;(-ߝUφħƴq{H@< yJGzg:'z RRtfRCdB/ʏ&+C~6e2oi qC:ӗRڞEp B (W]u3XTT""v+.5̲=Zh.`OG軰1ӕٲ3/ >pv4bޙ1=G]xQ 䱋Zd֢~vr 1ko5 yawYǬ05>\evf0ޔd2%[pT<˧4?QdXEf&dw0ˢGxq{ށ]=‚;^`*cSIe`F2.qž%CT&< z46I-ʪ^%+*ɊNp}+.?d0HKܕ]vɸyd%j˟f-,n7f*Yb k0U|i z aķߍ뭓ҐY-}4(R AA\+0TfR^&ǥ̄-tY*ݗ'\;z28L!sҤ4FèRMMXGd\S/\ w',`ʣF,Am_;nπR/j֙hQ=-VY6uґL 0hF/f.:*AOt1Gu1; ^8оQmtHֆmK+jIP6h$S(+\0X@9T?dϋ̭"Zeh$-39;~ci5VۢeZBA"d!,7L=&hkCu"-aMx2 R]|aTn/7ߢW"M=$agzK>fȱQ% 8<.wr'hf@2Q'c>^3Yg! !h*8FMtN!tڌ\n9CUV}!N۲_1?lؑ"Y٢I'=*3j (v9*>gVICp'C`Ly8H55qxn'Ccq0Ydyko== o8hZ1לX@N`LlAW#ǥs~ً/iXe%͒. D=jcOl(t\i~.ɴfx_@Q)"維H+хHP70 ^,*iE6O R:]p½"szd(9V E!0F#]nU5E}bюJ($Q ل~g۱XyIaeoa`7, x[Okoe$m4YvKcΏj[΋+_sjA{*EkKIBta.ikn;z3K4 wa FP^(LLɋK(„@#f$[NU#>E7χLq3jt˩2yKr6r-<1YlxNNb7 B҇(t@DX-}K:( Woߍ{i~f*פ kۈ{b.ȒV;z.ǟ8CzwbןzKbn?x`QpzR #]*Fb}U^}D^cŧT?hyZk+e<4gU_ũp3UmW\"5x&źvgi!Qsb{6>*: 0%3b~= Cj3./L\n o//\zjZ Lr`Q6jo{|;_dC 4tLʉEBd*$6Xen~mɄZLD,RIDDU}RxLëƗTV?fBê`X_"k'Ƅ%t բWt.j_\]dќ` kdh >ۦج?=ONQU lcZ(K4,wLX|լN+6NLrnΓh-+j@*s7mP%X[=eJ3ȅ{ )"h rȒ(pek+l󝑦`Ibː1䬶#Ub&8zŮ_1a$aۉйW!s3 4/:/nnUr]vM11!HZ4,PX TM>3ċl]jS:"S|>QB4Yy($r7~ VTiϺya^s4#0!j™Ф U7R΅MQVEM^lhܰv7'ʍ3j$roi<+]8,$O_ XcRty |KiS^K7[l ~I0n2|zS>ޡ`20KQ1(*ke{P MT$A?%u^q\,X"]xAdٯM>mkԫ N! ;!R5N+a gN*/U}X]Pw+4œI rwiZ}udQ!!c^u|X N`p,v@]0ڀi -6͔~i*$PM!̪qHv*c]?JdG0':ڰT.b3U .gŻv%4n7BHxZ W4Лˋv71aתUΒFPTk-k* "a"9StsG'DS>1=Z`Rr^Fs箴.K?_ꋮݭWDqH0mOg'~TI$o2!``?9WZKpg5dYiBIDÊ"͗7kO3a ugU.K0bjgwd\':2!0oC?iĺ@FvE(k,Y~NEZZc8Es{Q{5ASO0FTcT)^`bC7`\@R'%-&x9Md!ݢЌ <7Zv&J,Ik~. ?+@Y!=xgAZFMC!,\'~Mq|d]-pca@V7w0OTy2ϴ·w;Z# xaaIξq3IvXD4F>rTX0D싯۳! >wE7߽kK+Mnab(!y藕_WfR;nYD}azk/ ܼ/L{oF,(ZVkr]onR&;XW+ۂd @*{'ɯ%MIPS}A rpŸD{:[ecQea|̓_n[@f>r@yʴc~4*\ I|b:k %ɗJ߶_u6aܪk{^'WB /N fiUvHN`vȊ6%1 Yݛ+|LB/t*du_ӣjd72^77rn#y7 ve\miq1y-KTνtPi+9/ ::LyNjߓ*ϮhlΗzdUILR4Mǽwn@G"dZwuP.oeqb[(l8͜6@0O76J/̓n%#)v9 5LףGKTo͛6OoO'W0SrP4Cm")0XsW&Apf|5 *ϔ;QSp߿ZSWIix+ ?bA^v wA'7~pE(Qx5oI}E}yVd ?`.VF%9o?~_"RCQJɍ,|mߊ'I/mz,T"_{.q"ނ=kD@iFZa0W3.!Sc{$ΓW5JTȊPo2]+GLm‹vǞX߰~|J~ fL6nc4 - W '֗RTFR5ji,ѷ.TIҵ 6xsC:]=OprEeC.[Ŗ|RMԄ1ݝW)Tjk9a)FJT@Vdpaxrz# ^ǹ:2eD|U%!F}`pG7eBb}`U]\?YEֆd{oL/1 kW|Ou``?|+#ާCq(<+тy!C~ug-B8|-'ܪwcww ^ @JL̳,z#+dZr)k͒u[Py},dadL3٣3Pw,wt]C!.U[iH+8Sj2+#`C!C7Dg5a𓍯@Y u]W{gefRJ<:NV4{TͅS%w_\M }̖B@ۑ0o08,TFJT#pweZoRg560VI0F\3dt %gNB@VE.ޗQ D%JtFia^ eeXzQIʛxp/li9: %\:t'B-b>=5Z|;drѤU6?L^0yC^N HInY ^ڇK>>SƖ%buk_4myM|b>t'館fB|8g={f#2_1w\Ғ@TKI!nN1lGk/T}Ni}W;w?m.SJ3OrCFzL8䶩1d?3w-"4'l22+Aγԣf4Aȹ&{n8s'%P/t8vlωT٩=aм}D{U2 SCL!_WZكm^ҍJxRX (j{v~[P=Pg d)2΀cgr!>C`^#~'pwFrƒS8AAtULu(S0Y|3Sh7ИlaTxMXث |Tja+C%:⼻ `LiD ܦEtWZ ebf* z&LɃ-k(4n6+M(eKMf->gb T4ъ*N2]`kވ@YС$#}jhc:5 jt .UrI3wܦpotCb=+Ti$?Vc2rTX^5 fMB#DQ-6bwBS"[z45WJ斛l ⽐ < | A׭@ ܗտ= j5xGŠ^noM܅|CU, v3}Єcvʩ8gE;sI)bhizj6&x R^Q ,`/PBdFVg#RI =$ܺ0kn8FLv24(Mlv vm 1z ndZ)x <;JTr ˀ]ށZu]C%>b+uTȜ]j&XAދP+bdч5R78+Am&MBUX%RoT[<ʯM5(cA&kJ`(ܕd<8;5'hJSDMDIpCX/NR.\Rk.FE?1-[* dZhK? ;0oOk6&"U`{wj*hp_N-SOa"k6hmz0} >V_]6 3<]>Ub5kS$kCt_Bu,_Q-]+&TJ$ha[N_ ~}6իm6ifE}_G\5Q|#f7;KLI&!e#V2q %9o 5SI{{+S:@֑0$h>[{{ /Z[M!^  M\1"o,sX၈4Qt"!qUVEѝ:p!5²@*16qox,v(nfA`#'4?an&YB֣\%ܭ"f-P2|)mq+4(g7M2ࣆ0tɶ[#IH$-5Ǫ\ I~>L~Z %ش.ț]n^Ey=Xcb*l`Yfاt$&Eќ`,Ғ~S!޷3$YלK4)Bp>k>:nlÞIK dNc<ĂS+x+ )C;R_^\, "ʺ@&/azv2;B K"E L[PI|j3tT~/0HMRr*'`B07_jL,b=Xn9CeQ2 }F٫0qꎁ*=mh))ƛfL;-ʌѴMHP7@}B(1ǒ$\Inf1>~Y2 ~ -``Y[[KR-lTs4#= #Uh`MxSfO4h1ݔZ[r'/2g۷K6n01 $`wїUH&QB\ulxLY>KjMe[ Xuv԰}XOUNUH0SͭI1WaZ@^Ճ5JڀB/ KݟD! 3cM?x5xR:E@рVTl,SOĭ96;l4bm8+;2&5tM-= ۇZA8O5]6~7sبoaLxL*9^ZGKnba}kiRb)B&p (wz^GYC5 Ây\2D]եdorJ;nZ#v=)h'6 }ő wRKe-B?h o3`6_l^&g{~Q.d}ZOJ$J./Gq\fpӞv& LX8QC4U]`>NGMΓ}t]ϒS[h3MM>-h -ch9QPIdJEᒣ谮P!A8 4fĵ 놺 ޛk˰hI/l Au*<;H,LA =fHN]~3G{cKz?X |BCa/V_kF n {p^uhj#Vy6]To8o+#dkt h*n>U.ZoƥH !iDU/Ŗ̃~$nϕ_,ѣmE($_g *Ws.MWNYFXW| ~>y\P |&çY'!]Uaijj)C9*|w!R/f `oC hU]YODL5M?PrS)bk0;:םer&iX84oաzu0 Age2,pK⪓LAx\2> O6&||-8XH}@qp2r>CZ Gll!>Qg(> z?3٤rÚԮo̕u&Q7iH귫v K%k&Ydε+~;R)r~J;TsudZ:\n.`:;L^/bD_Nf[t6&C" 4Jb؁lT$o4?2yOQȷ3^ؘܮCcp$',H5p;JB{ )#Y}W,}!O &Cd[t B68yO ÆjV)ÄhR#7%:-0x,6LQ\QߺM 'VkQ2'J|+E< g {M6d1o` QKyR?-YctZjZKkmPrh9'0/<ЕLq*0ƑN"="elj{1}X?r.}iy=r˻AB%rL q#y%ФhvavV!\,HLMq^}CR.#Q1rƍ2y]n/2a( @穷Gc dk`++~NQZ^ b'$CmMx7$n}3 rv MfK:D,T hQJX>w}Η>E릁|!A}FOtoWCdt" M!+D 7Z$}_DZ6H[#@2j3*M5yIh}T xV~A RRǃ;B/h/4L)N$Cү;*{I&ꁩ/q pڗs.aO9,*5Ƒvys~QaXԯZ.Cpݤ"6MO:Ӂ`;m~/!GGD(X5qgV%"W<U(%*Ed5ǣP j7y}͆;w*27\$1``pX9QfZ[_uC'v0zRz!{8bjͰA'Ue>j} )&awbY+Q R>ǡJ9됈l@Ѳ?Nn;)~Jevh[dP-jHYN%r!ZJ@8kPtٸJ[$y2h -h6oLc68﫫;*zC4AIg衒0MKʒ/CnԴE#C!*ivZ) %_;q#RnNVni~4]T,Z^J}|Ya[ҽzC﫮tq-*;(#;Zʤ?-9CQ R^آ):r zZ)^BZNEvHr d*D~zB^樢8Stm1aCò\y$ACB~T(REdY wв`WFºA=z.>Шb4.a;jo[m,T@H-I,pG;TL )Ⱦ\sd΅]-CUNF d .YMM'.R^\Qwf2[Ai)[8 hJc!BI(:xhPuv͹Sʍh=X7z͖;ؘN#vΡPI)~n' ȎϕR{g!Nzpc(:F`DԒxHӬi*Ju9n+C"".apt0lu, 7wP +t&{jvZc^hxC|0=KVBq12Ē?rFeI.ǥ7@ ݭ!@:a؆.bx5 U ߀+?WM񗠭dRk2q.tӿ uȹ7X.U vXnT?ovkuQb ,y\w<]9v\="7F߷w+aa`_ F;Z{3tfdⱛY}HcPa\NZSēA8`q0r6rvC?u;:YZ,߱~cu /8ׇhk,"jnnDs^6?e(rˆ [槅DiDk=(\)Ӵ0j8!-JE=^88Ľ?5PxFd>cE;/$q`_e6Yߢ&Y;$fE%WAg*X2! yzoDղJ0)Mo'硑f JVO _lcmhFތ+4\N< ?rgT:b} }ut7h`] _X ۗ]*iОrޕ&k2Z*ٵi%ht/'E!TU(wduаA1и{8L LdbzKI_;ޖohG,-`FB FźnO溃;aD\ʋհk1lsQ \Y~'6q |5nvZ*rwf m׏nd*D(KSsí]0v1!~vl j!2QOBB4tSxÞ >8ɄtVAyxSR -$[ޅ3_%_ư6YTƨvҭ%$FgL!ĥ֎z_r6A2+2{s{=q%5 .ۀSrqCf4ޜV;#T[H;*gN++lf{SZGRTm!\&?ԁF+-= <}BڐʹgFB fBENƹG=1}yo'N2U[k@coɲ9,k* KEqe ΙKk:|x4tm:q1+b.df/"諑-U+Ja2vmQ.D>]hbzx'k:H^d6([0;FjF_@ ̌,[^^qS>ԑ&-Gܕ><:ēʌጜylYzz䷫䗋=Ϩ+1?^) Vbl xGS18ZTZ%Χ୏GJƑY+lB]D0'a)hL Y*Yj\#JNViZ48 u WVQd{"JppO,yHI\Nc5 9`\b!"Z18˲)'0a mL{/"ҁ)A§M`⃄@ z}-$:{ VY♐X+WXhn9@M]&eQ|H-"->7hvw<èy;% 4bȝ Jp <[6L/Ui>7߾oB6ٹԉjbisi2힥/ EV( o[욱#&oĀ)R aQxL/;~dq-`4Utٝgl{PFC1l_An5l2A VUqPTه}[>xc\t|-e싑qaG7QcoMrmJCgl,]L#mKEas{f̓lWZ:0 fwYmY鱊|~J|ժCQhv. YEzBT![T+PTc/ obՁFpB*iA,md?檦KF+[-^XB]-L({(%L֔o$ZwyYwyC&y04!c)@L6Pv Ӹcн5_e?Eۚ@2ȟh b4rk̚+zޝT,=w=AB 5 Q+ָ]<}:|~CVsYFlY<[#3xq4M<ۜ;BL;iJ8T59!(^UQ*hIgsAjcNѵdz+GG?҈鞔h3Rrlȗ^̸?GՑP+y6:kSyq\!CD8@$lk0-]3ػ %n=jV{V '! ՚(4,D1>sȂXO t)Y^OkH#hrE8zMZG>8''yQcMANi{&O* È5UVә^4/Ac3.ΓC`r̓4"B ؆>մwll *GS hlM lŶBCcah>l$Ni*WbnNDޛp#jrLb_ikRr;VWQ_jB|"!"cgJ1ڬ~xI \S| QڊohiWYd@la !9o--mCA6AVgRV5f7ȁVģ%z} 8*nC9K-)D5/UÐN8\5:n e]nZ{mgǒ"chJo6DތSV#Hyğl G Oë 9Űt/C`#zCAЏG\Xu%yGK.ej]\%,o 7`##d+=`NSk[Bb Qh4?Fȼլ&/n)|R js_Uٶ YZ