mdadm-4.2-150500.6.6.2<>,ňfcp9|˃%aa :ՐT}6o-w7!X )P f6|&Uq-Ƅ_s7UbO`&oZ0J"7-,q\gֲxG7<X64*,r@O$, g |paTfťl/?d٧07Y3Cx5(obZ=mkg%@$Փep Jӡ7} J "PB%ɏKcӬ4$ZǓ_짹>齄?t^9M>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%]E)/]09;2ԏsy,LfFq^ 2OI y2kmO> wK3'1RhJ=V\t35" EefÉ`gF tGb#@XE} ܏ +vӠ%3BlfYBW'V?ͪ@aF7C=|+vWb2 xRC/ӌHd*e3Fp;L`b#mk`. 9rC 9&$7kI"f9LDQ3cV&eւ{HSѧY1sJLb 8RY`el6h8 KUm`xك]!ÈBILDPoՄ)|E֗CQ f&Dܬ ̓4&jеO~qhUd FE+dyoQ1WS+?A WN*z.Mۘt[iTjut#Tnؑ}*.ɆqͣWfƃ+m|,F#S.E fcYgS;J#vQ۩2lQ`Wm'MCcypaj_""QDaP#-QXn`yɡ g Tͩ8}9WrEmzwf\ X6E ByaDžg2XryIo^3Alj0L9\+cM/hЛ_CoQw^-0 E-yxXTC'4:)}g;l`^cm-qQh9њ<0!CI%*.6ߔa~C](Z%9xŜ-Ab-y/^B*:!LNmJsN8$CԚߵjW&YQjlwOk[8[HdW1=mH[| 5߁,`Z#(?غ6X"o3wnSٔ<\^$puR{\;04*P GŽ| -t|Di(T*,%ڥ\T۳ys |rH5ofR᯸EMlT9zW!n$AHFGŷxU '(VxM`JpQ 6:+Cѝ8KgƃN;~'^rGa(+KJol<_mt% ^QnhԆ!VB&K<êQ .sc!tjPKwR;j #.~2#-XB}reVywD%s$; _~ՙFeIbnƍETCeȧFCcVZ<9ʳ|k#;.M S6KB bQR_d4zL԰ :"FE&T[bYa|BxeTaI5$dN>Q(pxЪh;>,*m.P4AN߯3;8^ꅶ^.6>D< KUQG8,[Rc91rPt,0Xe.5Iu\q&fK5@8ptZT@)N;ՏnSܖ> LFq-.aDיjepi`"#$n?qsuƗ>F!2dƧ,I5kcѺ}epX}ٍ'uutP|HIaJW)"|hv2t =%KaO'*D&srr(o?bya=(F|QZ|L$hqV1+#S"  ;"Ѯ0-\?5$zddo<dA uƶ3H`BSK_-잉A 5Gv_*|48cpxlzS߫S%Uyw Ij㗜dln3 $ˋSS~)rqby 1 e la$(`zD}dOݜaY>]= -uD?m;AC* (F!NdpV$_?}zJ)apq-?LkhV@xg\4:nw|laW=^zZQ|@eM{ :Y[gY:~rU-zU#c1F5e)^%/x )&)N c'YK~Ofqc% uQ^"`GȞIcT- I~Smfs}$ܢ( ѣRv(i,\ix0OR2?sσZ(\e,k=ܥQ wt  2r,o0, )$Ł&K gSq\UG ^2zbYѸhs"=Duul%`\r0EʬA4cΎಹ^Kbnj89{!PS{Y 5̗ELmb0}mV -#vh&TD_)}-lŸwpsh˩"%e/=CA;+yCj/Wg!Q{iɥ\(\G)`lT^L<"\Os#v{xO &_]Db-)7{^RS :t{˗xM!?nQ`*ef]Ol) XuX%nq{ê4f^CG@@GoSG5 ͉ lod4$鉼OtYf=B[QBuSJñʛMFYǦXv;ztc&uOGkF?n3TׂmC#RB~x)=rf}Lo9 -c`ߵ Ew+ u+Db24m\9M_&x,e nI<#GFF{@ܵC:F㾵!I:ktwkI:h8v21(aCTҒ,1BCs!gZ>B[cmwu $H6p!l0/2;T J}U!ViǚKօ/4oY/ǣ!sM|PqYE +2+ZOv>l^սg;oOR 8tJfsl9߭F0>`ҷ*C &䥕A=hD3DDO}֥ #"[lNV\6Z< 2D QCNBjm6/xP6Q{ ^{'+jBLK3xdwrf=^vrBTj#Tl]}r1"}C4L B$9P^6 _Pՠg7.gPŭLD`OORxtHdAȮ!V-2:7(qI:wh0(G?P:_J+BCH|&7NA!@y\}ՠOe[-]:jxzQRybC\]fk !ԥM"c Y-su7%g*ŧ!"( z2@W7wևuQxLo[n U'`[mP>9%+XXYRR'{7? 1,9Kmt;M+ɭT'DRfԋX`&|eR\Gg+1iJ1#R}ON`'JB)96u ڊNnqynA8Msԉmb]*=j@!כJbn_6*|UVV̖!ɔ4»qAjVI3 q\lrG^ >3T0,Ђai'So1!T Lâxa΁ }O6B x>:@9Q Upm39H<ţ)zyxymHMզB*!TP sYG Ԭ;cU>A<]}J'"tqMSyV%}zKfQ:f܆|`WP+)Yx _uQαO#xnY y'Ѳ,'P!M adY\_G85ylގȤs/q0sZ~UXlA~ L? 2yŃ:W)i`s>VCfQv4^"R~jRSk gu/7a}VmG^*kQ%`<`} 8]?x~q>^F!f+ $Anʗ b-w >j+M!$^nKK.#~<+,vuk~>/$ea@wJƟC=Hy@'+8Pe}_n#<=V 7SG"X{&0[6ZO $ubx [!C,5#$HDfTDdqFv,JlUo`*OE4DN羿 k,Ȋõc <٨]GXm|YoVCVBt:N iÐroʐČ#:!Kd2MpTSIXWZauA\{;cio4ڻ^p_NS|u*7N2@xIMMD92aPG$|k5j&$1%uU(@|$^oޫ*j"R^x<̰1KQYDhBa"ﴑDY"Oj +,?Y766l""ްak(+P:b; GT{ -'QC2U "!Z2_LQ9|X|s*~OD!=A,j.0d_nVͰZ7|KTULj7]:F:㺼ZIo=F:B( /TpP &y'e94t㼻vp`c<A博K Zua^r\ǡwM jt"A+ "˕5@6|Tu1 V[>+qjV9}q8kCuZL \4 >yJT:LOI؏2 um' dEqXp?ndPAmfxlD )GoG6k1{rxQWô@ @d};u:O~>|F}q2z/`3I v^R #fl"ױ\.ChŅ*9},UK *u ' u)sh )JV&ˈy0QϽ #X. zpG&s!_Nb_H<ucVߡYp:J,ӭ1-Q( xT*eXF"D6[Du>M)q`?FI]bMD.J. t A;s.P2&qAl T> ^R&i an&S.uT7qow?ł5Ӝ,~vP@zQuU&_tR^%`~X7GCZB T'+QDњ lʗTܠt'\^ #Xbx\ +_§,~f͟Ov!m&$!:L ̞h^*7J-Qbq0o4g* V rZKIem*7[$?Og;'U|pȌkR ͅ*x͌|]3z|c]&l:RVX(f)N@ 1O/ۃkK&N[p`f-߸ 8|]b|+n\ L^yPTfFTo}Bf3DޒyxjcZ ؤzRQ21"҇Β"Hљ"gq0Q؉-e#ΔBdځA5WYkWe| ԩH >d:˨K%G@tp%*x(C=}y zH{-' /Pm^-*ƴ.$a7{?eh$tT-VY[n-+R r$JW ތȯv]X0cДBD wãmt:D-WZtRtV[a*UY|?SO /7&lCe0PPi*J W‘ֆuOQ!3Qs.$u5jǏSB zk)73YGy̚i-20QEnZ;3&=4->ϓ2E#`;w,y|oA*э9>?W;/TΎ6=v B}TKTKqgu4'=nXl薱e*Qt13ѸsZn>ed$\K2.=/ކ7a4w*mDT$>JMǵᅲXԜn,Q3bM6J40y(B&Zdz<z7/,̽[o:Є5i;X%'&ZW6ǿ(\aE&mj3c ;n5NӜ8 !f6lBD,oXMQDb8U=.pKV{?MUmtw vG#MYUwnbZiݡ@GT@c2<ܷ(݌u%m>Hvatt1H[,s-ܚ3AeIw^ Sb*#kpѵ.3.]_rAHzFoڦQU搮MKtV~lhd u݇cg_rgefƐ6͔֤C'9]',얗Yw|m&CE_vr't 5H޵I0fa ]:UUvSD;%[m |z myUL0SQs(E36isH}O{X9&d] =eC'v5J[]0(bֹ=t'7輇i1&ũ{m1jwmvj'Ym9fFe&QXWE-UqfTހd [ kzܪ,`\% g!S5%Wv61Sɳ)*_H:%-Oδ1!G:Ƈ !y*9՞[dk8e!An HlB- h,@<,WGS֬*%->5E >~ ͛=ҏM\& ٔeU<|χ3=5Qv:iCFI]4R[.G~;@AA_ԊnCO_ "nrs`*m>on+} N58ukԅn5bp?k~lKF(θ|1ܭe-3%XBo7l6g=YA$jE:7J*JFۦW̫NWBr#m_%6[cw2HqL#$l`Oa$gg=ރ9_ַFP-AŠ5#a%% 4K8YFvO* Z 0MUMu iv1YG( lJcT;_d?W/͉.L"H"yuuX?)IQ$Aa Pz%⋫HjUwrJ1ӣj(&x: ls_ؿT1+D !JZB8#6HN^ `+ɔh` Tcs1eN2lb,5NJuzuC HgK3i+Wn5^2[hH).: Tƺ>?(~ٿIQuXdI3۾N^^2۝  I%&=Uӆ4!ԿPMx#5%9䜟f͑x d;Bjg* -8 })>@PƬLeG "a'2 H!hf ܧ@ck:alAAt %xXqpXf7mlSŷ⢀ %ehZ]oBL]Mh%(Zv}4sRwMdS6W k5W%iBoFPkd 8˖yۢ` >!m҂Y%aáExDwsuA>`2h<&)Ζ&_WB^^5ԗvrZY/]ȶ ْ,B&ū,q"gbBC/\ek{͏Gbj`@G| GFd̯ւf'da_eX-~Ox\C\of@9[J}qs/2ݒRNZB[_\ŧmnܽg?kpH]i393(Im Ag=Skb,b;sH/^=Eީ @w(SRwFx1}]F@&l׎r77lʽ䗎/VӰ fdJp bCIr\oC?>oN)oӏ^(8,g.\ Ynr1ߕʬ'nj^Ec;߆N6ρh'hOڏY ),Foa?l[ bZ E mgx" ٺ|Vڕ {Y_֙?_`:|`OpZBzyFƪ}n^Hexԯ/Z4OlۧΡYP'$jyf}TU k r:qhT`k>][yLEME>o;9n˩lA^zw5F]J`2׆1BSFPAsE iW{|noK0_O߶?y8?NY%NmZfrFMj(ܬ}L:;JF:= NX# ,E )+*5aEoenb_S74Gug5Vrlh5 VȮT1z9Jm2QIa 5h9KA_ڸt\ƒT\s#8ԂtpL3g|M3a;j  ]ȆJese͞<239f2ew^3% Qvb$d PʓvR~/πC5t9Bl;eENsxށZAo$SH-wBۻ򱕐?D)7 ~/k6#S>|~_La{:, ('j4eB\ȸ>.V*|[Qj*82}/N,[~\36݆ggAJhdvҴ<=p7rEa(p xG\'r:K A ɑo%|@}6 5h.RlRҳqh~ 'k`OAl"CRrB3ۓKsFh*B G/Zٚ/BIH)m.VI{9N>NM\!}zG`4쿽`]% 䖵2 '׭xD8hpŸc]uEjNі|)?r28 MW!N !T׃7 HMK\ρ8OGGi,OlNyYX٣#,␺ưsqјd'$)@a-Ŋ;!8fNp cMy5QwLB"rDPүHqO\IX(" V@jR3(G6u8 ]l1(±0ơs~o'eM/i5S7-jaɜkyQftJ.[R,Pp&Է懣>x#kСb~.%%@ )24Ym%kB!cYHD'CCOɠgx .^iEF@J! !)aϞ|82 jqʰKlA0ZJ04Eک] Qe&\谫 OOI5s' A̯>s\#R@fsf5gqfT.\tX-X}JN% YX 1ִp .[[38/ܧT̥>gDs,BZ_Nau5oo\@ IYAA""kTOKܟvyIe~yEԠV߬yMz0(q4b- ӉODwԅ;*H8 ff > fTZdR\Z &)Ѐwkxl?]);oebd0ڎ&hȓ:`lD0zhCOe8KA.A!xEZŬgOyGDS]Slʄ 5D> yVUffCpc㱻ȯI+ d" j*f ֋sUf/SVN,y0QɎVy7t[װn%9lXWO܉dvÖ=d0E1I 806߿5}Ͼ(x2`AjG䴾ẝ<'7rJa$4 t~_Ɂ'< XaZejrTSVoo'FK.S!̦y[Ӛ Re6V 1(fg1:*1 &[ê$ Ԥ =G0I=JHB;+Ea&|N@ҺKA{fCoVkw'Ԁڝ2f%D,@[k.uMNψcc$E2Ǩok*made՜RuN@ТkQ;IiybX 0 97-mP('+"|V _z@mZ桱BT\ ZRcrD"׉-{ҖPbP}ʷ80 vͶ6R*_zn7je !6ZB&jOfj@[r?{R)vo:C|G$z P!|G| Y'xHqL87A߻n#R#5:3rkeYDXqcӉ2!X} AQ*0}OQZo^]p۸F"ҕm3cSD_W N$ 0vY=o6L챣(R'*#Q`#Pә8I}Op ~!4X⅏Y,eͭY7;q6g`k .(ʋtUj#@ez"4 t`|Fw">ŷ476Oz @RlUN@}f)`$J eJEeH:+b#FJ{}K.0-CʻUi <ݧ@0UKqKJm)^v Ӝ0??ۄyOK`6,@~)4'xXJi_yn}$LMƌ?ݴ˽+!L­24CLhl';@YL!Dn{o5"`OCu :װ U%L+b/&iߜ/H^lzpxu!L| d#czq~<^u+`d! ӪE=751xbgDם^D1"# <Ӻ4iynĬdg{ ;'i&F8q_cRcbYO)En`]#b4FƜџ$,+ՓҢD :qElv>j7P=K.sMwϰ-+IPz!sDDwl&U܆"ukt;KekXxXG*V|]H l4fFtHR6eKM:+ulH2\ bXۨU^P0oaF6@Ky^k'a*3/mp um8Zgodm,$ei|)`PK_$Qp݆jp xG혵ǀv v%vJ*B)i&l2nG#(ON~]w/w@n["k6}0)CS|BìO?o7며xC#8 t3<7I>Nح'FO݉A2ROs(]>hg#Ͽ ȗPyMkzXU<0{&\&,)pW~QP,Q0VBOPlӪ2^'X)fh;?{lȂ_ǛQOA"R$(|j ӃX]d\oO"aĘ_ 'Yd`V\PI5OVC@ ѳq"ȵ l.ՏIg,es%@| 6틊IbNS@"18mBAAYtM~`\x]uo!E܎Mز3"Su.I|&[B} CлfUd1=a@TҳI6Jd(mA<]U_"wpFq͘oDGPi(DvUV<|=gHVc*ѷKBk&<3jؐ(Bskc9-ahpT'g0S,|Bуt\A-h>[c{pjMBKJ,Km1F(:1'U\ӥ-dZU_ h p}eNi.қ}O+?X>ʼn3>MGa]ԍyL_prGۛ߬ \+rl+pX RQd"= t~;,V>mEptg<SNT9:/Lgf(TW(o71Zp xJPi$WYJS/%zvI9wb {Ńa) -B ^i|I똆_4j T[T_x3"ML< >o.t=_mh."7}߅oF/8 i%\Ƅ9kȕH$Sgpqw'Sa;I 1wZMFYD 9ē…ߖ{ М;>"2)EwZid EyO]X@D8gz{k M)~ (z7E,+ğ4l]tS LS!Zu[҃.w59*j|&R;uNy549OfߔWg"ۢC Hu&1ɻ:Zi<4p%-p@"&> E+{~KW_Q?jGИX)FUeo'|Y/]{)6lbJA>BƤyJRcL'h`LD<)9a BZfw btJ_j̯0<`Xk 7=Dh^OMKp7p"W~Bx]M5\7d2^̶Q 巜l$?n&+{hw.At2{|DVMy( }=H_LfGWD9Z{N6&,E6>iA/c,4B)'ѨڊYmSNcO :NU@$a4^})5cR3[kbI3ѥ/<) Gq-\@?>Ȏ?|'>r0s>Ƒ~TnM-t>\u: 2f;-?šR(NE/gȬ2f+=zc (d.kIG)ᲈۜ ;i-b6Bj_|ի\uӝiR9ȓLVBr?@MU=nĒt;OJ6<ϸp ]9{c;OaS9$mcϾH2ݚ+ACUgnD[/4Q~Nv罬]hQ/ *܏w(`gJQђDE7 T{DL;yN9{Ԁuf7a>Ҹn#’|#oЭ"7OoNT=xqVuwxn)38WTW 8V뉅0 _ziӒ] h#͈[1665؛pap5H,|YfFjB5/cc?(fMVmJh gJ t"dҸWMgőXǾ`7SL\>\2:ٿ1U-^=AλZѪ詿 F=I՞5^ۨS:3M~>s8o E?:ʪuN$_0QĢVme&+B~#lڢ 5etS⫓`^HVP)Pq=@0=tt婥ɯ="jyJo82nfUV 7qH2K\&7-dgK- ˥.PP7N/lb yp歍9ߚp3*9g\4ޗy]mSCCX#lKCUjm;& ADL qb\fZN@1>^h'?iI|^ )Oy!WӪvwrbs824]fڭV>ei]`ɡEsnO4C#>U&"N;|e V YVh|#Lle9;G\Ŝy}!ASJ;eхj!|t膛8bdÀcXXJuIm~`APvkO_mMQ#r8hF(ĘeFЉ ,yylQ늪M[(G,ϥtR%K8:^/*Bk[iO| Mu({+>_-$&kyl힦enBZw8M{a)mfBg%4$@ Nf.z XN2V͝rKcSڗC]WL"Zj'F7V3X] ~+Qh m27Xv`4xRۆ\ґ J´IC1}sX@t=jHF['ǛK->=%U߃&"P9b~tbs92~˪V˼IPib|Q_>,}5لGe6?٠ 1[.Oѥ Z<)D#B1Vxo]u>D`@z}V$1 [vެ%2.uO$ӅT?3';L`޼d 2LqBChL &%iH9+viiJpՋ]}A-դWBzCM,my%~ؖ:JGFDSZJG~eE ws05L eu'.}دs ?KU0ɬUDw=vuku,BBݢP/i 0Cp;6 \˓=b@oyp ~H#ȸB;pF]ׇ_s"^fQrT']QղU L;؏K=Vx '9IQW.2xMT@/xR'c՘4~˓'p -L8hDuxb[/y;$*#NWm] HX{g.6ߴ?9yv@/#<`Q6:Qd˭IZzN3%lA; w5@ҍ[]-$.F#p^i7[x]@`0 )R$cleyO  3;Z-zQ۟>p8QLr`Xl$opH"@!jH[FOlՃrY |ji{ @e;Q #Oky3/a%?[dbFZޏBxWB-1O`>fS[}LXP3q lZYrIhG֒һ? Z{"_&iy "_A}Tu|%_rkMœUpCܔ) N`˿wKNblYNp֐N\zBY:LH? "k*Lf&qTjmverD;4Wg,z5YwpEF b 1.,Qj c%7z= u`WJWJJt:璥sx 6;ZZ1M76J? &Sp'n撵 ~7@ q|7Oeq* 回/`>1qc_ˬCW=P'd1e`6\E2K?b|ͪdu )æEg Uyhn6j("wY|Ӄ1$#Pݪ1Ff|0WzC[E*m @(Y$׏n6/Yy3VbD9piZnYj`>8B|{MٶcW8~H@Nz?Ji 'k+RM+tvG&ڇ=A2_԰ _ uRȋ-mnsc㱍 h'2vWae7Y[N6+hA3Z~Ldҋ\ 0YfGrvLI,Y1ঢUl@ ΩL8ld2+4e}Jd$ _IiTq^~\,f&`Zm3`x:&CagJK^?{gkY>tH'Auu_K5hOH5͒#Y2HvP#P֍~,/Sf߭ ;1x]Ź'& hvf؟#_#Ji!8jr^*31CD4%99UXGN2cDơH]E6;*8, aNP,tY8w\Lc 9^%/B}Օ?zݝ}7yQd=@c}ac2ZHs M\M~D4_͆rij]&AHm=m@FkgdW$O1f-zKa!) % WZLs'x+WR_=) f_VNemxV];Md{4tԨ9L ٭#*9T2rH 2ʙX|HNr+{fEjJ{H'B& ESa؛(g^9g55U d#:}ˇ,R\O LK墝m#%Dwe y6SS||mQrrb) MJLM뜤C dҮ jΤj0⁽NR7[AVoC[~nKƺ"ҿ]7!qeٽ}^<5c^a!P::~>G3zj?7}1dLrX^Z@Iz7&NuS8QfYM$_݊lUxl`v海+8,#%˳ ; /H_ġRJ51 Pd?hv o7aݿ0Q?mS4UDO_`VZu}O1TM&B$sB~QT- HMGCT F[C2(4\{Eֵk^¤R+Z߸-1WUIXg OOkT!xO|jf%d1]ؾ^Ki{/7q cIǚa2|pp IT^ZIm Eas`\`q4nN4V` VWZuӒNo0Vʏq̈~97 Q' 1LUq 7rDn2ذYm%9u $}͝䟎ruQOMG-*$MFb Q ` 'Z7Gن0j!45W * PxPiG6BA+$$WxBgsgū2)JPmza_FeM$C:W%^ =x6щ5D./C%ȚQz_t}QҰ՜6ALhr;N qAS}_=8 4.ٿ8JV~f%1!A?s N``p{BxcDdّx]2=m޻yB/$UwKe TK8lv㈦!&K <(.k2ǨQ2`'P{`~h;ŨFg[#IL@tbꏰEso)LaWogJ QSQ +5qN|'TLUO1uZ*])c BL薑(=ہ;]_P-PZὭ,δlIϨ%A[(S_DL5f ToMaVtq;P"DeL>H/ ABl)fh"trNKxfa`l+*6*"+jOG Οc4z(2щ,d&^]jI%H4Pu0!؝[YVs3LV 58 ENl"R BI;@%N3 d9lFlP1T]f{j5 q<檽|@4 5mF ]#g*xGk[9 r1Qحե4W4AǢw9pt7f a~pWP {YQ \Qx`5k_doZek>4IȓYZYcTfoO#"jRLosBy>)43uƺ~N'B9tTkĉjd8ޝ|"6L:2zm dlzWz^;ҕ>mA[Mm] 5%$y{]8@d*Bc7H% XCl[d!T5+8._2~vPB{(D#KĈ[>9ˍZGNr~zEWͪ<Ф S q)/;x36?mcOn&M (wX7Vpv,>z"FDdl9KpgYT+цyر~|Un)&1j({:^Y>6 GVar;b0j0 >jQW^Rm(( ɁFu>q :U0qe!հ+>[1xoIT4Ly*q/3a:Dbx$x:3?ޣnosEEh]KA8^HRXkH G6aUd(,be]QA2O>ʱ0yiڳAP*qʽ渫@f V6BOnҗ@[oEqԮGа]&[_NYkfi1u)pHwfwab ͚XňhN+5t*Q}=h|HwݒG!XXb)jj]3. @p;c%1.ЕӨD܊y5Bl);O 4a"w} l""aK+/pKenܸ?s sD7g.GMޮs+L&%ʰ\!52I,Tc)-slpJƼYFiKGJ9.x:gQTtG|+Ұ0\vSl'a1$vc-c#V!>D I1gHS| J5B),Vo 3gch̫6ӸX@FA"/|rQ5lIZ' U|Snd`KHs$?}n|J}nwgz],Pd͍4[ EY QO׬4Ha<^~Md[X h"CHX6=:Zh؞Q6/tF DN;:OT[u~ :olZ<l)JLuP-n/Q5=;T7וo%gon]!$'Rc=pk|nV} iXO]qH\5'so~񕐽c7{RXë! W k2sZM .ސUiUWfdMg)zbpy.R];ڌ^hdT^ϑ_tT$zcBe {=y sR]*)~}_I Xf;yUM /Βw:wq:MIJl|t԰RU:I=#Q$62Jˇ4c_ UXI)+Դ?6mlAȗn,>jNW֣'JgV82ݯDys"Q;[^64<|Q zOnC|, Ld ϺEɶGي(o`0xx4C=P=ؚ =:|n^!hBv+q\h*A(pn8\4umHBvѠ./T_ÎHDTV67:Z[M5Y)-41VdSgcv^?sYdY#b TYi0u# SB9ZrrX :h6(w2~smeE@ :]#NlxyPwtgTk]ijph>q>J1ύִfQTzAJpswMD^eGYT3x;wXI  Kybp\&[g a:8wcޏt{묊"\2 =J;"WnQ=jDcV8rpwB3 gݐ<h$D>^ӦH.kpY-*JfwϠ^ZP)PV<1 N6$ ֬Oۿh |'X8l2$*V4㖘 DhPnvǟ7c.٪'ź\Rtʜ՟U|sެ,|<;ЄOcb -i'M2IWWU.CsQbW~+O`f@p 3ގ @*.9>g\Au";4^V"v}9R҃;1t%E6=3IBXK(#y)Gm3/ezЕpwf>S;2Oo]ktS5]ܠoiټT^Tǂ˭^ϔ,ѕ=źo`YZimضbGIӫJYoSOΦ=ۘǥ?"J2`utvK3hHҵx&+|e|bA);X+ aUZ"-5n~ŀyl7;YۊǤ}KԚK H(*)Y߅RܐZ$j YHX19JL1 !^{wD/Uh&i69EzDXGJ3R8Bj7,I<"o~|瑅^G[;FKWS.ɮݣLƅE,"XTFᦴM)BHcMAYӃJ@HQΙ.;O࿍PĢjkYNɛgb\ɲ8$yHA҈VĘ.I3_BQ`@[3S9a?Ho! i`^MN7K1oHRw RZ8hF1@䱘GB^c4$_>o Ni9cFܝ(.lŽQZ\ S}ỿKr8P@C2|m^:>+jٓJ7v*djg@8 +˽* F׵G7!89'm윹7vD=*+j: DV}30~͙mp&8 @@y :T w )MMNzdf} ^*u,iƶL8`2}md2ECzW9"^Z 8iC: ɸZ3`X?f@F;i,=0!|m-eizw/L/\ ҙAdGo+[Pld$*fv%n f=0+;sN.4_Ӥi0ʘ79sK֩qP^h]zix~͇eg΃~LՆA#Rf[ mf_Jx+MN/ănE 9޵Tgi.Fr׷b7{7 ;9bJwxZ 4bw_e~2Q8]4UNJ*wS(5MxEp849H:NjJH s&H\LD(\%! Dq a*K잓jֱO6sKZG4G68@jÁv81nom~=R %#‘>^ˉݮI>XcrrT历|5`B$3*ȷ+vQi`יH PHhr6pJ6Duy D/@2^3&BC^Ts,^r01e=yyx@_V[nrl73ip3F ^Y í CdPr=K5 Hg6˗Q8Fe 'SJ u}mzi]|Y<ޒ1Tp>zT0j#HmP,9Lq\"ZFBQ0Z7r;N&,8rVhh"&o?ļez aw6v'&GvNqMayop) dqk!#|m8$|}48n);Y[Qr)~t֨N^'S#{%r"wv(2d;>Ei?"=y;FxED[<m>њ̍$N֨Ea%ȷ A:pZaԲ+%?|SyQr輝 4DXy1WpЇ)v_[?w%w۬QȵSxm9|^|.GOU%=^!luЉȱb՚ĎpK7}IXgO4*KB{"\7e&Tp}|Yv9DGLzljȢ{*1wngz%S|qC  RBwMGNmIIrczpǧ6k~^β,t`u>>ځ}9ZWMeFxV՟ 98CƇ}&McWM6[ 4 7\ĐEO[FIzs%-!>4þ.N:31^Axg/}8̎FI졁ȔÂT[+у/%;UWAI-DM 23}ڼ՟n)ىؙg(M[ =r $/垫BIP WXNG$K)7|haǠYi Okp/B$099o@b *}/Xfdi**c6@hs+Q  i.=kwYUZؐ::%g+Ӏw"+\ pE]&W F t]{%9/-ԿI)n|i{lCZ%=?0Nve7ĢL:hqWlJT'" -Evdɾkުv\%izJ >%dOqw7^d"-o6f+|l~gq@[}ƐkZcxΊvyR Sjhs-F'*UWKH`7Cwd4:& a_Tcm 6&( Oib)5-݌{yr34N0lRI; d 4FӤQ1?3EhEAS>o "HŨPXvCa͔쓛q~ץ߫4I(Cƛ$q;Pbic[" R*4AJ`W]q82&h2&z*gx6t7'ĂUoMpkō7Cq Q =)}L+r}FCJPˠ4:GށWm7o{,{(O ;/CjzFGz8I̟w{$bJmX?BV3۔~i zjDVd7F-ocz B5ќAg BGc_]2VԔe</iZiᛳ..3Ӈj$f}"v{ mkO *aj2PN4Dثi 70VveAxBM /ߖ] #h$v?E:=l@Ym!QQ}si&n/5ЎXĶh##J߯@ &Y leBQcWDnm6K<~>Q7}uQZ/K8ß\e3?vǭzCw8k.hnO;zC 9eyk6%tԑrmۧgE b=g/fGJӁcI&Ѧ! 2M%`G=ǼpejX jd~AJha98"{)5+|dsv  PiЮ~1>cJ-%>K,ktc½A܂n}-x4F*+Eg$8D1G퍍u :_9_q1ʐvM S,2iV/7}X-.͖_cc=W07ADވLhŶ);huSDޘ,b"NEd| wIeBn*eORcտ1)-t; `1I&8]4 W&5b0,$b#j}Offw=W)ԔS#DVp/DnZ^Z\]3ws[q0٘rmrf~ϳLx}@$ =LԩkD7W ) zdJETĪ< =lX dnƌY6E3`t 3Y}ۊeɦ/ //ΑWxt-t/HTH/E9uv"]uO,jg .t[yUߋ3k<ܨI:(׻ jBO'P]WZ(*7"P'qHmz=XJos#Hm'݊1pw˛Y6yGK~6eY Z->[hnbUr|&퓿7 hLPPˉ0b!?HL[_PMX,ꛗ7k J?5ECBqDpV1g->O>'5!Լ~jk30"",P8WS[CՈTjnXX3yeQ6!BiA#]ƣNOv#)A,.H m[%R|fK`J:GgVީDWp˻ q?Gp.l)a(ݤGqL "S$=ve$YJ8y߬0F^ZӾeBǽXRG"qm{i!КьB:5G]\sz.^!1Wiu]u"lVPdF%h N09Ӓ+59S`83Þ.ܞ!1?bS\Zwe{n:N5Bs#L7U z,?!\lP0Eb):s?aTޫ[HA.kIjiiKtvtƸ'@kSA;I[W @A#J[f)1khUs3+7&'Ոe___WiU*O{Hl|-`h}頛 n@_a0LB@'3̭(#] fsK$Jj47?ƀhoNEj^Yyz\Z.63RFl,DH!rGa V`XdAzXZ`;~qgWu}Z"Q XQI}|͘ ^/Иx|/QX"+?tLu%N N:W&懅GsR 70pM HuyhtԥT&`Vo>|0Ah.S2^,3K'4~oW!GʥFԥMi6i05Qg]leEZ4sο;_6[DISoZL΢Ou8T# 59V=R]l0(WmGS g܎ئPy?y2  KQ4Xua >dmߧ{*-5/g-0%ۚ.K-N-<<=},gZ3Swazx ”,}TM^({WHLz#썧>OQ:58P*T}nr[)Ƣ M|EGm_ZW֊'x5mwtA'<!P]D6kWϛA{`ȷw]S<ݍ-ɤ\FՂMU^nsVRk{%iUy< Fխ&R7[YҋuR}5FxX A(||CG(7uϕH)'8WXzVw#x,G^N-&HKy1dYN `X5&C:qS[VΤ,9Qɭŗ6M=0QF@j0G~+ݶ=)!qq_TI}DliK7t  PQGB;8,cI W>.&jrOwֲ2$@%bS RRɫ]| aְ,h+ahbTH 1#kc<DwĸhMt vj>Dҭ>s/_/59&V.wuWD) FSԢeV^0\Z (ТQ:oJ}j^ÿݛ@lC,PUC#K`6G ܱlOzGq[ಐ!혥/JyG&ee,)r@JKʅOCc<)8=KK͛.|E\EQEtz^ob5T(o#NOg=DH8 ^h9'&=@92t%[,oMk̉&;dE(-PC#d4MlSJ_mpigA+^}mtуq?dd9%5C'q%cOzfs# B՞ÀFqj<˼*UC+[È@2De)D٘$5E p `}MEٗcY;Z$#w' \5MJA$ʻF=‡ ZUf=4@뻙Y@ZHx(abvFߋY 0_ĩ fL;Oû}outo&uqS)F7ك:( IJpf:cO&c+"= uC{jȈ^a'󗺦Ϛq%Q:uXo%ժ~N1fy0{a~~i٦xE{HC5Rڨm3th4COU !vr$_~kqXP S#qlF I/}{i3$!nP_OsRڇt~ -mCv {(!^sQTz%UX5慴J.J8vTDXF+lF@{<CaB6Km N窟?>-fKHϷL8o]LN]D`nv < t?P'IF>R;@#d[ 5>+44|'[#R -ώry}m3HBhcl@u"! &~!@lGzIQC9grl-?.eGyaϡB;sȿ^sNuUd+Ą Ko. Iu3Ee] ?Q6{; 9w"̒ F^ NTysP ;9԰<jt |2&7|CX>i^ ihFeջţ""8o%2tl`Y7\$'c%$*ڬd}m|w4s*>=vxq%s:>!K<~n|+B5ȃ\Yi c 4g0a!㲚 /hYruZ,:e(-7<&bCtS ;[;kMZrA Cꭀ)R/Mdy\_n^& * z)([pȓm)v!1G85J)ewG6cw{jSϦ&ZV#VD-b 49|`]j^S:F t.af73\mwo('"' DiFZeFLR6ZOxӧcG AnaY@w}KIW3aا{;#\:z EcZ}(Qs>M àu?Q O l\M,QYSۂ (k[I[<ͣ1SOߘ? @]O-'sRyKj/CyJQUUqQyU yN+tRGYH f1%򿧉ݿKbX5tY+?j !HȊ CauVOL NhnCl}Oɦk/\.7 褶v{_eX|$E(̢y~) 4C_59v6Fzf!ŗ4`Ȓ g4). @bngL]nKǦ7IMl /ɵ|>h:=u2o7_k+ـ<%b[3$8Iۘ()&3lLtLq%"Lۄ>ݵ&KqܼHVb^W:Bq2N(͓>*nɭ09fY2ѣ%Ў"MFd_NGp\MH*RQBtQcA@ MI&\>?SsysO # 1yt&sfRrF9\ڻ@yRѬj 66Pgzq067ƹxMPEӪXB(iӭ!v9!6s1Q AJJȎ%D*M##xvxҞɠWh&[ YD*aCT펐0&f5>}D"/|KeRly Mag$gTi-4QuDcET?c0 Pq5aH뎳hZƊ44@ގc91p}WXŃ6)%Rs) <09;p۷>݈jM5V,7k%_Er_xeqǗI(ժauap(N@ZYvbX`L9 ;Kz`#|(5Xol&@Tp>x}t׌6$*ʉ=b=!6wl0g%[蛰^M?EGah 2Ku4?Un aD)@R(\[18MTAڽ2_0#(+h%A782b8Vr@B +@QDQ\|% *0q~1wVa+F:>uVh*2JW$DChy@ R5:S ®7͝F3D8iηf*JX,T. @Rąa5zoyDkN95mJX| /5;bVII.}?:tC A |)GY"2[-%IhP31mY8`1efDHUl;Tc W£d}au㼭XEgh}OuA74{qLlukuluUv|Oc~3q? ZwGUc~xwOPB~psX."jʹiYR.W u*UC#*eqLK!6+nM7^CjQ٦`_lМe=s+!kzKږ{O,H$'“,=S7yIt3dV'uxMz][uz#>-ihH <@5r?!r26L4F! ǿ[MN\:4Qӱ;5y9ΐQR,[ JѸQ(lzJCtDs(4iyҥX@gO6Y \-i;c и ^q!q طN @dݖl|"]ob5 {{sgOI\<7w 8'_,B0]N=)T6~kڅj[m@N܏P :iNt4OJkC ij1bjdtܐT~$-VRWpЌ>WW(:DciP>~2hGW Ɯn2ⵞH8[d_\G 5oJK&?bWo2Ϝ$W8 !Jcޢ{[1`ZerSʈ;1䏆{荈<)֔ ]sƈm~Buӛ<]onʶ:O*œ#ȗׯ4 ¶hP~u0@3C! 0&eKFrf}  =x>+[BF"^f cp >ȌzH+@7eEt-4Voxх"[ҭEr{4'"a)ϊB8 Kse@bt*0"+[vV %&(NG%:Ʊ׵Gd@P!Óm *e'96:­RWg~ /KAZx@6usZ½wy.9+J$qxXƱ$#t :=Nw>{ 6l"Ucgs;&f_n,ׁ`I1 a3/0Ge$ii|՟3uKɷ뿯@cQvyƾۢ)0l9Ua.硉ڐA'ҐZX.*$Yf 0JF 5h)KRwOJ]WӿtJhLkfFOeHnǫ1" yIv=0N2z-|HG``NZP ]9\t:B[#@*7.O ][ 0 pgKu( e0qJon=iۗ <,)'(х+eE _ΖMw_zEG_,ث51 jN\2;e7eXn)=!(1ǬUENA>x_)s5M͹D`=kcGpu[?ww46ϋO!Ŗ0UD '%~!l01U^h\c<^/0{ Dӂ>X%,萑QE>//bk~y^@3,OsC>@'$ʮk:08L|ҕKdDNNmۦ4踔N*h$6m,p܍Lk T^!ia v@Y|H+g/4!(lcÝ:4'ucchP8hEC950z?rV {y'e-%} pIGbMd#ԑ z-wFeZo,%e`+(fdw0yya[. LOʨmJ 8?\iTn7^>s"c-[b@ڗYV oH?c!ہds@" b M#KĮ{Bl#n$8!+I^M#9N7GZ6<[%t]$M|ݝuD4eހ,ZFyY:zdE/F`'s r9Ӛfp+ 2qD0l sbE 5lxΕ<{ĄB3E8/4(?Qn#L5UVyK*:Gtˡ-45I+oV1 +t"Q2aLv&2 HuY၆R\?9 dJ v3^ 6;%70 xo\ OtIQ('r H P!f=:3K]sɍyz `ݸiX ;-K:^ sĊdh]qOΩ:2jaE03J1CsHp`9i?}*N&[]{.Z-Ww]V$Oq;(ҋ6}`mBE 46ݧ^t9۞h',UAzpxλ I]f=1Tnx9aCݵXJ{ub҇Z:Wzfn6!Yaj^XSEԾo=*}6Գm H( vبuZ&a L͜vzj%.v 3~^߽̀v׷{K a'e,Ðڦ< j]FVM(Ԅ9" az~2/Xl'V.qGqt6 iF~bPB.!}#)hd>Gȓǎ' ?hQ6ϣ܎%Rh:q%%O}ձ[ޚTUZıі7L&V<sR0s7¨J:VZݢl68풋{3`r61#hRP jwzpi-ܪ9{`ЊwWd-2 :ʓXPxtZ]ZQfrNlSփx""Z jG^H|8P"[r`V )ְz_"'-aU]+{@F@Y ԒI~.A98^s~@ M݅J* TF9t׆)9bۈ-FkV>n\HkӰ\ (2%RI r~~B_bk&}LDT= 3 /Dz+'*'Ҹo~6|h  j[: ǯ &SV 8N?2JvLY_^ΤQtikZ K?V9bEYw )5u_]YPijp e@g$si nC KG9 {3g[UCȯa3Zuq~~ QK|ZKkCG,X1ufWkyMc"Tמ:=CM֦()j 2MT6b[G搘L_uSLzI39 ~Fʝkwsnɷ"(z<ü=7Inyn 4ۮi%:)jA%r;}t姬Qի_f@eICXthdf?Nǡa\tgND5ñ[If7c2 {d"  Ic)sܑzX{ Gq5r$0_f4%4g--T1'ApA%"D=ei(ѺHqjHې+Ҳzб>c(bGңRȢ@pFf**ߞuIİ~@ `w.~O[N 1l7"/`5?ٜA>C"b`)޼w]3݋Duҷa+ѹ0 ~ q@hp$Wt+tO ASVƃre2S Z0Q^G4F%@We0[wTuu}9l'eՊ LV>.r7;ރ}waeF#?„0s2 o,UcAzPZ-BȖGe>;A@/q<o ːcxQ?1ʔjnȡwgWyz)] 9r[m R㴅yȾN^>$}) e^>eUvߌuvt^<+N%PV?R(/rY=JN/2zKx\ކ֜bZ#71 $W$['6Dd)20I3!eE|kdEnMӞo劲uM ?Kt5*HWUEO! |Ra: O| H~] ̻7I+F=U&6t|׽C#$zu꙲ u rМgrnŐhu" {3O?_ۂo }J.+ pMFARcUSVοa~.hg lQV_ rڐ1KGs;uQxCG{lkfɬcp3}GdDjbNp;ou6 2KBWZH<] 8a#vIC'_-E9&dl/0lf6,qG`Yj:zO52 ҇yE(J /]'3+2 1EGz[~ ._uڛGNrZoDr< L/tw9(5q(%w`G9Ȍ FURGWQ`TCT@_{B4E=9 uP̔AɷP+pIE.sx2 /jp 5wtcq'0ZJSNph0eSK1JAvnt?)]saTI./gT9%jD՛n7n|ȧ鍗ˎ+4$j?/ Hi@G?wʫ_hiO%3S>ΟIIH8|F5q9R 6htSsl儾u~50rgT{J]*϶9=|V!gYesr1V*ƾKK*3puF<2ؓېCCTً̅gd"Yu'Lؖn/QO'rW_hg6!Wkӓ ufxE8fsh}Ht) v^?^J/!Mcwീ X?1ehَkbDRqIW){}zCl0 W?d?GH.'`+)erƃu7te)Y Vj~}h^D3 ˒h_dj~^\%OM/5]`,|`ZA6@{}̾i9T R2W 7-}HWc=cY. k|rq*GPl:BϦM`hŎE0O&n % 67#B}TSvoeTiռK+]dtP( +/]ªvSFr.pc֟0ϥPCwJH@m~d91eSK4XqtUHQ{|ɑ C)ma$Iv: }J9r 5D5LJE}-I#|غC I%7f*,/&09UD{rBbiRABO8T;cVR0b:A\IuA9 %iF/eFK8rÚEs%#"jGKh-3DT]22Mvۂ2f5/'Z>Ii U|1?ULJ_' cߖ_U=lk d?ݧ.pQ{E浂4[S`9O[mٌb|:tcV K!)F}}VC?\FOu_q[|^ ~\I[v[9[1!nAzbO;ҔO|"U#/']G?iwo̤ݭ"JƋb>KOΨ٢og􀩠Dz`s$VcKlěCan/Q99[M2ghDao*Щ+L3'6$Sqߖ EPċ,ք^ Nu0-kۢmcWm8{.{j*Kj39 ?mb~WCjAd":y/Hw [=BS"@lyC\ZYܾW֖<8:socso:DI878k3Sm`锻ãİwC}{G.U{uvFTʃqYee^*p5٪s?Z_a,|8Mh=g4)I 8Pe>p_\7M{i !9t+n# QX6yu.R#۫.DD,%vSZ TȢBr2ZT|;IS8r,?% ]'b-hV]Md7 1PD73I] k=c'^:RpbB3PƅxH7D;M-@,:4MQ.;x*RN+ ۂ!z~qj5ϵߛⓩ5Q nl#7; = %T6!H%p<î -O񰄻ǏRJOӈiOWst{fgi!_*=a^)#cDƏi_Vea<@u؏*2m#U'+ױtU|KdϿGڋT6krn} V {=#۲C𯷮n1R|-7xG |i/y)ڕo&kWZIF/}ӓt&=WwE(׳i,1m m]ˋ1I1.:5KݬVJ2&a汧k,gu_Ya ze%J1"hit7ǫR5f{1"QV>8S#}KhaMϬAͽW+ &C֙wN Q{^~JG[m_Yބ~v?;iLrHB 2H+'IpG" J@⃡ @{ӀLM\YRdڈDK=Gix'Mp`0b~KGCl{'gik5Yu])KG<P"ζ`bk[cFwPeJ)Ư)9*&A#yg .TDf4B2 א5u~~%1:Yn=~v#{aH y=ݭsʟ G8N&'mщV |i{g`> ᜝!@UMa(x Ȉi]ZPK>v-e6InBE f۰`. ='!(& ]JU}.PywعY˓=PA z;zx0Skorb}w9Ū7$UludsCIEot0׹Zy?ό6rp.jݳ#.š볆:RE@ct<0Pau/,"=@J*+|3!IٿHqZp}7oF;u ?r8-~dV'ꍜ<_} ci{>Gg\J .;&~xڼmgv>4pΙolqlu5zrT8!O@o&B(O32uYXZwF/P$*SUztY`"62r+0B.l?1-9MV7@`/G#ᆈ7 UKdHVv|Ѹv"m&[`ϋŮ*Dyk6=&bMКr֭UO e זU~Q?NX"F֧a3{sj ;FH{ Co$ ǜ(Y@$R6&EțP9jecxfϩ? y%g(`$LIMo:uec;R̈́OM6E}D-!}{Xdqwa{.3I_HcWHq;WԀ~0uaN7ju,n9ߴ<|Vb y#RrgU_@3 Ip8ŻsyQ< |YnVo=+9Ym 1"mU8fC`־RGd0?S&6( B~ a}3AO䱧hF3]{n{K7/VƎo5l_l|̳g:5i9|`S#V#dhi[6o|" 1[ BLjE.*]%>&} %Kן@KZ^B5rXglbv%oDmyg p >?cuVF 36Nf<>n9?Sb{kl(Oz )tRBHL0t_A׋}j}F\qJgIKqi5tlocrbvQl,$˔'>tov Fg求)X)H_ +CͰіp.e7^N"%xh*bVi;;CuEDEԸGTbx#/aĉ";Q\ëȮë 3 }$ug€lǁ!eoˤJ9v%#Gn&%cjy#B MKs%=>U=6ۏ1b:/dF"~ KAH4i;:p- KR췮d aI5'b'[%RՁ9E'GD՘`̀6>h^mɂg>A[43T!KD$)E.ϻȑhzoi@_?UNXs\r>q"ڋiG=19@>"4%SّBc+ّ I;1$u9Tjeyn-71cDNܶ(7b%:mc脾fۈ˓eɢ6| E V%k[m^n!X+l'e= f]:A~j8Bp5xhjf~[EXVAmG/jgT#Eߕ4DYFO$?!q"Gb`K) Vq~cKs09h.(ڦSF>5o%Jo(lAa)Ó-?ČAm], GMQlVhNr ugྣIEZ= J͎= ":\Fubj=şJrf!kCene06^lKIftwXRh8 i](F MO5^̆ &; o7L=e4?ĬO%G^O=ZČ\X Rf#[A(q: )wnNosXB.XqƄhxzItx|~zuۭvrdߝ b/"!.FɣkJEGL(~?S$86 ۢBvܼUHjߓ,/!!qCHK\,LNLl&:/"]:҈BCgQ|aЭ dWUGrT؅~& buSo8L+ xz!Sđbwu6ygL~><]xP5(M+..;y v!#Nm+C]AU:+~by93ɖzuJԩ-Q 'yǝ*׵LI"Y",e`R$I*Dtyɶ L*1W%HG?'k8$xU*S''N.$7P._s^Pu DSqQsrM>L7YIE r(ܬN;r%@{z v*. 9* mfe>iCD#G9ہ)nN! zd` o// Ii±IO)5fW;Nd|U*u:b2Ŝ-=eJXs~I*W1]/i{*ri6Be/+p?w`ɗwJ\qƥHi6 Ray`IcYSJH/TZ,-\1͛Gh+ENθ56cCf1%`: s_WBZ%%nMPcWG ;tL諱s>#Ȏ+S7Ã"u.* ףP_fsK̞xX79Gڰ:08@;4p]!6=C LWx8)Rk.pcBf4p#k(~ԍFheQ+pH>XJu]cەD*itiTOc8Z~vߎm@S8~wE$4΅՚Nn᧡eO*>T|ϝ1o}fjp.Y60LIp*av!0ͭe:.sS*5J|"v=sDIR=D# f%ќ[ɟICfWfl%Vh)Cp3{A@`aUk9t`pk; ~/_9* (?w3w ڎ|1>(:`f{ڟ]^BƲ"Ux}4qMh5{.\TτXZ5azp-WM#h)j>>Xl+Z(zGp+a* 4bj`0@]PK6+Y%d4&jnbtL&JcPMS=V ,ۻׂG$ {JL(naNPTG|bù¿uޜDIk藍'[d@-w|$uknWMu') nvA i$] m9Qj^N_֑]ÄP9Q=!fu 1,xSUk,4ߍ m!+!J^T-a2+ wƤ{zXT{7PyU{Aj__*9N1'xi͒1wOg#xK:|)W\s lWt&ema{$I܇y,i*x/k_LX?YNsB(fy>w?Q-@xH֞z78\X {&pW=֞A0?m$ٙO遝7pnEBp0ݹS"Ŋj`Uq ~jfm#5JR1 ?n48bAvN^mu#~,TyD6Y&Bt5~&ʮWz[!YsfxXv \+T +kHoIdl yn[ŀP}2 J`<I2Ua ` j$eHz_ a/N2hP﷉56mvg?v\ʍaNwD$?D;}qUDn,xX?8Z0OӖ.Y,GtUhޖGjV+ 96&%mMCc"&Y,W\e3~^SWfp:đCu%]6ߴxl SN)ق*3-Eoe;Ujt\c-IeX|#PAwP?ex.俼% %FK9@E3(ÓFfݠgxg1aA {6rֹb;O 0lxFl3Ȋ l[FCKS#3Gh-<]6Oq]춶JQ<]bMzx Q^Ԕ|n%z/ dsL[$=γSiqM$Oaaӛfgh/]NϊXr$hB,hqhAFysp3<RhAs C:Xyv:}q ݖ)"/!FOr]zHol92g{N4Ɏ%=?PnL~dIEb42~9Az=4_?:: Iyhs?"ʀsX@[)BN JvɈ^#lTy -*jmǠ}b(眊Y~D)xV~Gi=(W\Dc1CS|q%D%ֻ0d+kGYt_ż< Ee>#&Xw;\R+8 +*a4> BR]TF-CP1wCpi?5J,dJuS͞o5ʀoC[PT -qTP tk΂vQ=A;MYyF6߄2sx'y&K<a[2KkfY CVf+.9Ϲq5Ք(= x}h1GS q9fHڣ5L @&^(LxL ;VZOceZ4/%Ǚ^tMZ nh5go{ȉ8g,G6B-օ5"d\;ݘ2d5ETW#60?cN /N  ΒdͰS[71]VlŻ=}I<,7A6߷ -,ZL6[E q+%ΏO ;Е9Kuz~._k5eܞTy r4G%+d˼/c\G;閪`&|($3?2p Ua\ŦŌz6j,_RFCnjߡDrʯQhchς?蝰1wo/FT:Og}K~/\iQb C.鿰ͮnIs1™dBNM7CKIk4uU`)4 LG0E@z ;a`T;vv"/0Z>yBu6͟qNIBO箻i!!ZwIu})CbjI8Բpɟ #?\8l>t"َ_z~9$ ,~JzкOeS$z bN)ޕfsJ%uNٞ2>h1[J P̪Ek2G4ef),˟ LoN"̈+pߏ`/:3? =B ,}a]&B:Gƽ<IucWC:s}v(vd\ү~LA &Z7^o,tnֺ0lƙBՙ?A+󍆨t(.~_詓y`o[9`̑$Kޤw&N)Z.pȣ^إtD^kV̰m(r~{Imnd&]t{$4&i٦n5/S^ ْR,L"owѦ6˨~^ZړAcTuY @8t.r1[&R$l-%~?C'l Yhӝ?WO\RtAJ˻#2wLYUѮr5PK͙4U3J>DEPlZہDp0m"Wei(X#_sv{T'GT2bN@9٠i?orTX^;E!Ħ|j3ۣkkm%^afRFUJ8>wXawml22 4Zu4NJʲHfqhqDž >oCM"N/d 2s~ML,1MPrBO!= 1}ńV;_3$*Woݷ;c;$GՎ>dx1ZdiQ{i>VI{&9=?s*lIMU5YO"yN6eb4 ̀ !ZvC4DXF}FsCxأ 5lBpRk oD20LEȁ]s+ԢV$SFD&潘HG$e=RV0'aC|*tIJ@ YǺP @C7 9տ$|H#0'!TǪhetJ]CvyBl^dõG"L$vՒP^hFL*} 7_{ḛa3aCƒ>FZ*F]tn+/jXu_ְ5&1EοIRM̶؄<N!Jg.R%foz~)xPGiIjk蠊.D5-rW<~sS"u ƺ j'i,8LCjS 13qZF~͢gUW~&K 0/ahNhMk?hPHr0@Vu$);\]@M|<@ Y=-]x n#IUd@$~MLl}r|IMvluvW S'.E]`"|DS?8b~UjC=?\V]ޟ iy^ӿ$+|R~P&lGY7mqqL+ 5XA/ ŠO] \>w³c~bUg֟"L0cL`E_vu0"J=)X3Ɵ4u#}y3M2+ BbTjl@Hi懼·dJe,Ľ)c V[9tymZ5gvCYi~טR$w]G `Iv r[1*La™ :NiJOV0AI6`fB8HX1HD 7yD

gp2K(22꥔6=SM0uvQ*ITĕ<7&qRpE &Wrg8jhdrxcrI} 1_:򵸓GuXDHS~ks_F.F#q+JSԳ eI5hIϡY"%,KsN)O3rC Iv%Po)(0%UlM/K[BrL `4Sˎwr0]8risS7KJe(8{Zѿ62[4S={/R6ܰK,J[DVmњbi{;9Lǎ>cf,g6]IZ v)_Ńt"yqk׻jAi|NDž:~nQ A? Lߵ8X( %`wiSxspʹ'Y]'k/30ƅ wIWIբm W1|;.''OyS.=|S:-bLXF<&/I=Ո8XNCw<^Dl-|C;cp}*; %_c1H}_GyT]XjJC=; SB,x]V`w,<̝D8v4XyނI@`\$}b'J}u(#6)ѾNS'[D'}yh4]%wzLX0ybd[/T؃˗"%5#:PșjK_^\+-RD2j}14>1.ȼUIe\N4cTS bo1.Po9ϱ_2;=V" CZg7Y;-Sc F{_y!ݿ`WUp-Qmr.`kK_pEr(ߖMs_UIl^Cz;љ:% fu%7BcD" ;*2S;F=ӨPk!{-QjŰDaE' ]),G<&C"Xf7!/q[,azB`"pu$f,[b4Xl=Ku<_fԂ*@#6n9׃\P$"H1\"7c;ヮ oiQn-3Y~R`5GgY `ﲋQ Ke [p$$sW7k4p|CЫ)]q9$-4&Nm6t:G͝[ZAx<)9pJ<$St⁉Pىq*}^Ckߗ0ы8yo;!VD8XQ 8mϛk{T m@Cʿac}|-^kY<-R(7\VPըwA}>.CSQKrKZLxotޞh 3SK4m[qdu?}HO;À;g-|wwF (BuP4g+ش]$sb#=ڻUwv]}mIlRjW%.EWݜե5hD f`kkcs)Ð(\7jҜN1n^~1=s\ji1r[c57«}T-6E1wQҰ_{?P?G싖F7ۑrἠ3p**iyB4)![K&=,`U[NBT#TU:yм0ǖx{L%ѱsE*p~ŤekhJъuPs e}̆,I?2;ԩ\l=nG1-z8ϲ'z1eS7m=CEP >>Lڢ1A >Av*ȷ8ՄKJcJn/z5uzd{e9{ijML]糟\"@SO2݆-KR|7#t'f*s-&sUةܲ`кNscmᲣlU)]U'ygCݎ{=Z]`]t2!x~MmM&s3+2O}mG%?BnX||ZFF ʲ&{X#S2XttU<{u? r.WQ3_(zށ.[Ny(QxNf-:_'^޷cjoqhG63*ݭB{ɽmE`}{o;z; bڙv! qy6mpJu$9 ]t/nK񰜊3ܚ>0 P "#kCH#+*Wrv!VI$o1mX(&@&c[uG%i5jWK[ͺib~iO}pJ*;tL}<-5H#@XKDof/.g$@"RϨi Ev O13˭w5۾kmJ\# ( zU2GX_|iT Җ_8z_O EwZ I\ŴiB\z~ "׉4--ʄ{ ]]\rݔ)bu#ȘwY)RĨ)ȿx.fDɕj g~M(%(>)_'xb>-<) ~~- L :> < GUiJR4弄6kdO1=*]f`\O LxBRx?͏Ų*d2tTTRz$XJU5edrmhj¯/E8NBt' n;9>Բ9WUTJlR#ď*vŌ q|ĵF,V,~lg=]wS9qӕ^T2_r^`!B"7]BcuT^Y0.P&S"]pߔ`UvlG6!|*zz>^mꢣAb${1Յ+!v.|{ WA{R. ޣNNCo2`փ j3|kbq4x2\U\ӛUC Qjh̰=ѥڸڡc2?:O#{+ Ɯ,O9P7 I-PkZuhCC ψp-8VÏA{/=64*\NYߚ!.z^  x#s[.f5u۽mD f朣2Hi$>'S O:{vM3YWsIAR4uzO~Y'}b!͗K0zld0 ٭*?@@ԼA./P8թ'pk} y|B!K+§bDao*(F-NDRcʤI%[>WD^ WPWuDcXy[и?Չv]tɓm?!@Kl寪+圕,(HiMEVgb+! Mqi{$8[n5DQA7E;mX`g A?؈o:`Q U_+3OL9(NN r!G6^¾<|Tm`~\^@k(7XJt'^xy`,d\!Q mS]D?RS2$[`S#jn?ΨncܳLʔ E7K c꽮zwWP=>?8ݤGP=e[aTJ$zBv4x -w͠)Sq ˳1N;HD\ ^*^< 'H#8dաX=f%hD{;,r0_pPT*3T Zt*.=S}]fwp@P"w+lqJߟȱ"ўK%gwӗ5|C\;9q 2" &o\9&'^-E4O(ϔj]|B D\`V3Μ9r@?HҠʈihY /ZBB@*7V8ٟ'BxĵY> -[۩orWaT<:S)#WÀbh]OAN0?o^4ֹaTĸ+V-Hd.\˚, |bw (AX@ϊPְG Nײu\nWEH` 5y#}hĚCob IceNBH`$e8TG Cd8{_dEz5QS?j DRIzO+!rK@sw7wh]gA|7PKlCHd{ \ȌU&64u9+ҚXbߴaldKZ Bp:* y5OE\@L#:/NwAf4}WK0LSQ͈߰́+###Hi9&cZI.hJde]4b 0a?ϼozs3,%B8SauYg4oOiof^![(@Mx(rj=1ft`3u  \Lhl`އW] Ȗ\oU(߄G2r@YWX ұc38,!`Na {8qr_ɖW-BjMaɰ:[g{ίK 8jfV/3h]~V`w&<'V9>giCU.< Ͻӻ[ j"х[ |OL*cvІ%r_2GnU%p_f)xѴ<぀Ux;k<1Nu2A&?Wb1ۑ/dSgrl_ptIBJn9Ua" GH0` &eq gSWP".̾`Kcȣ6[ROiFv"{CI@ugY莓6AoϚQ Q&m8{r|E#.ݽ0 D@nE`MҋЪu ].*Q>l \+{ۧ,".Z*fFfH佱/J&C<,QIB8c:~ c$M2qo0]Lozn;}hE!Z֗z#@d ?fKx S 0'6i)"FP26r(Nza0&صW[҉*TF`PrgL!?D(:o<ZL:VK`ƣwsъPv$3gUv].ө~_tBN#bszF$ԭ, w`h(3]BXڬczTX7sӖ<~)adb{n 5 4TzghHV3aN_i3:Ŭ1msH,{~hFX`qYr"q2<2\58e|n:Y|<'_X~m0鍤꯰z[[T22k4hͻ'7'y:#Ovj42E|bP[wDy-[tIȮjp]fpt^.  (^`tu05|Pfqg}_7X<)$aߧ,ܚ@5Z T%iFnk^}kݦig\i7,'`^4kI1˘)xХi0'q/%z]D0(i}R&B3^Agi, _8ejK?SwK[ 06JD.fne6h"Ѕyh"q7~ \0ZaۢF9$s TwJ^s9\l/jڰL*,CR)`AL`*+04^u3-SZrp]NY,xe<4R([ *$k@6 | R+ ռ2τvR)k77yuzX5 4q #Gsy7řLF 7!: 涷k/*θZ^CM_)d\F{U]mK7v׷ ^ìVyv"Jl;=Z%1rx sW< ޫ- ȤD3mƲ|h<|?n{҇j. q[9?b&@I%3Al,_P9RwE;Ly#a@ts3{` Xu1v~wԇʓ#Fr&Vs<7z~a#H* i]hNrꔋ=j 5_tez掘EA  Qn-vC/ ^'\ ZE;Nt'G&=EUKO5pG-(Wj3UFm6{`J52`\stwxi"nUMnS@M*gmoʷ_2)Q~p`<]_=L:%;x10y๷j]w[m˧V~t}>[[@j0 hQlٓ$ݟt%Ax=rlMWV#DwH(1+80pur%8ki[3ur8ܤ9,T핬҄kʡPLm@x$^#:E,2aa8TQð]iW sR"0tS4;"^Ya=s8{ܼH,jh:'Q]B^oBd8 5Q7cL7}"XW/ "/17y 1<><ÔэmhBk>e[L@uW,A}>Dv,%#bDY22V3[M'9 SzXQ64sW<4v%S)D?a ih2q} eDt mX/0_LSTŝXل'dȰDݻ:@Q3aaj\B֎?,7 ,}p׭iɉE;x|NU+!E7KOJm~UI˚mMqU+> C6]fIS}-B</שn&Ιn0-N.%{\vNyRSqd! ?DN< n%4m7.ax8v55C,1k%?, ׻!P7H:;GĈGs4W=T{z5.O#qd8rےeCR+`4D'nVW&'hl oU$8u[os<D`EX_hS/[n@)SoIq :+P5þN#R9^ͤ z"M܂;Bּԑ%wBAgizhz캳CNSz< rԈN\`^;:Kax.k,GFTڀ+B||ߗ u]^ ij =V̸2$ZFA0|2&JgRdQEwǀؑeosj1<{Mi]7غ9X? 0]4hLY1z^MRb2ll c=>`{ GCNQ/ X+U|6{L.kZ؜cR >𗎘Քxe=r+4 m;-+䄧71{:eF8d+$!t(Vj DV r~4հ)CXjώEX' Rb2[PڗG{fs[Lijn ԤiUlT c30I^5IGDǥiRZW`;LwzW{}QL2~7:s1z+n~8"RGIo' =q|k-\hut[KNRo Lʖ4x wl@ B4,W\P Ejd_{ 3ark56R%IS⒣l| je"nv,-~;lp+@VՕ&6xx}}sI;: nӈQV%ɕꜫ-\Jmȭ?|@7&)t%-QEHB/fت}z3: I(U8"v$N}DL,򼭍|ƿ &Z;a˭秋Bdb$'Xt?tOG ]C{X[kb"VSӟѧxIJGh]ўcn-3:oP| [HB OxʸJ~WDdv6?vE)%5߳D[q ~`aJDrm_.dteicA˦ (_D.4ޓ,s13!H;Xilg{3(?Jm;T!zY*H֭.BeuW^N2)PleBs<5C &`5`g| ֐#pHPON+YMf RoIA]߿HY$3boS#1f'CVp$< Eb=b 1j:7J$ix dqR]*cX,tҼqR?Q7apn OfG_+]ݥgqm[`rukzgX WˢNkpW*; B& r;0@f6~A'V11(puO@iI`Օ Ya*eѝ؇M[ZL[VXpߜsfvp;@hdl".X=rz f!WiGHJ=tF"~'X^ |T'dꀹn =,^iji yc(<y'bXqr]Ea:0~sLubSvьoFa펨tOZneF\i;>Q.jl!ߤL>.j"Rri81U)KDń>O87gd^bcif#?; oFF`% [!$[)/-kc*" :cfy "r/b)L):sp޼.^ɷ5YNl}iXӿB}Ƣ ͚SWШFHUai\\8^̔Li=s0ּnmvs3qI)ҟon<}Cmu Kuv1h`*e@6;.Y썧`z $/D&ĕfPq$18_q^ 6o dAQi(DH\qGkgDKr~_ :X#&ِM}{ڰm͙nYJ ѹoE>~9\8^C+5K!n;;VIF[)ŦUr~qJRDH/(#4oN| oeUO (3&+tQ?ZyD~ PW/@,Qr4MH9KX\e2uAlGۓvHnL ؆yثHTnO͎}63aa lYb!"U͆i#;" ; ua['Kj OXaG,E:}=+,;LC;FCQyii g|C7r97Q'`j_28tI/rĭatjXshגҰBޘ`oQ p%*lbdP:+ GbFar6L\Da,6e@Ca,:L#8lc=bII>ěVOZGOxl_ cha֚ôZ^E~Xs:1ۆhChjI^ñ@%[;tWz{xhU/~K"FĤޓډ &ׄ3[Džytc<8a>gz~$|܌O~XٰAvMq8n#({5GAiN|]2d"即ϳW8(߿- qoR ,}桉.Z#^n^>SzaSxXk~@a{Ba$$!".A&MG>&R. ]YՐw(M=H?H*Չ>aX ^n%j>Q Mj _ P=ejy|ndW%q2hc5ŃD( ڳ P+qŭ(~!CK,֊ˉ V-a;s*\jIz52 R9 V rCwl+̑;suX=Η᳌KJaRNa{8ߊg3&w>"}^~I}(q7'먦T ;-.Sيqy4`K(-c: D[^N)BEӈڳ;/ġACoG$ӶJ&%FҵEGઅ-xur7@"y L4K"AF_Ch2]^e4o`o2#LC3X \;б.VeoVQ1𷣲d ʵRשQ8e=p.3[6A(X;)kt;=y~@ސ2 ݖ1\wY" `ͼO4/%l?7_2P'u!VkDOb'w H.ZB9NT\Mr  dFJiΗǪdtH;T?)<o Z/7Z E{bj//HV8G֎I-T0AsN:x_7ẟze?{tCZhM$ҟ1n㑔tBVy!(+ `5VDj ֬LI^ME^]bK4E+ 0/ FelCCzVI^JlGPKn=-&(\1hu\ zlOwG3ŮԉId EsJȯ 3O [5z6J#O턒?"ā¼{IIk5򀻣٘4$e_e !(\7=ٰE1+{q2&tZ'BQ _9jڞ# FbP\ڵwcX1V{R5B6J WVB_@a(eצƝp'LTcԃ;]ֆ"+)Nҁ*]Cμ4CD~R]x6t;K1 ĹP>Lx1oٲ.5. y-cR>fD)!]8 L[Gqe@?\p2s`Sen,뻔5]$!׆8̈TkO+2&;-gh+zpZFWaeJ?g-fS>EʜJ0|rCp]_rPk$T;Jى.ˌf Ġ;@b!33훆PcJEIY nyN͌M = oK1 &cIť5p@ꕜ؅~ٻ#37 -\xƋ4rg tGI۵|zMt݅/"mV$X4_O(;Qp1] >j#ʰ{P`d~ND D>A) !O򥝘 lT s,>&"TљB|LABovfog^}je0zV, J:!D /s Uhoed0ih9?|'L2[VV =jrB8lr~h|TxRL_b]? 7,XV? RM'AM ,9(5W o7kǐʇ<ZaqњTxj'?WVI|m}ձwOA6l6zdchdrgkKDyN[N +YZU#!֤,#ϱIL"PצI6g6*_2J/Oɣل涑OY;19>tCFbPc ]:Y",]xaM3"A(]?bf l1%ѽ8KRx\$P9ؾS(>4erFB3Eg*Lrp1"k+AVBI"8_Qg-sC+ YZ