mdadm-4.1-150300.24.33.1<>,&Hd3Zp9|o/B@Ye~T8?FjnneG8oq1gW:N+kܖؚcp%Bdc L 2TWr6G-B)"BoaӢh?[-8Nv-.ᦼ2ײ `tՒI`D}K-#nHGIn˜J G22J`xMIj~4:)E zrbOt;|\o>KX?Hd   N  ?EK  844 p4 4 4 !\4 !4"h4#l4$p$4%d%| % ( ((8(99)9:-R9=>?@F G$4H4I4XY \ (4] 4^ bVcdeflu4vl w 4x4y z,<DCmdadm4.1150300.24.33.1Utility for configuring "MD" software RAID devicesmdadm is a program that can be used to control Linux md devices.d3Zs390zl33uSUSE 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 mdmon@.service mdadm-last-resort@.service mdadm-grow-continue@.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 mdmon@.service mdadm-last-resort@.service mdadm-grow-continue@.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/all p@e3u  A GbN9~1vzV O--e.V_  F>B p,AA큤A큤A큤Ad3Yd3Yd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Yd3Y[f[fd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3Xd3X[f[f[fd3Xd3Y[fd3Xd3Xd3Xd3Xd3Xd3Xf14c7fc36de5c65d6c81e94ab5faa0e9d9494c1cf6c42535dc754e80b5b0c9050c63e771ab5ffae3472884e9547973b9d3a336d8c75cb1843c63e013b545526ec7a8b98a69aa04ab96fabe36591074b5106e0a6bf9a3db6b6abc3d685a20c28a762a29b328b28172c95f6a1e202e0453410d0ccf3449fb17d0d5770852965ed509df38f55bbebcbbd2f6908d1f9fd39db9a52068fcacc03177f5e98f52acdb4ccd5f7e9e8f00832bc9355799ab71026bff53bbdd8e99d1bfbe4c4b3a07f14481d789d3d1867df89d312d17cfff73b0cc4b47379486bb0ea4f059708dd20120781392df8b1b8b5cec3cd468ac46d498fe55a0a8c39b5136ad7b66b195c82f9c40d3957a71e448cd8425d585405606ab1c5f27cf72aa092c0cf1a9a9fa46d2036f636c1b4b1ef272bd27acd445af5e2761b48c7822189d413dddc9d942479383ed1d23260664142e2def5f249899645ed5abc16fe158bf586e0ee12bc0c3b6d70cc6c3ccc6a26a0135e61965884297cc9b4c0aaf8d9b6158f9324d711e446f1923c964c100f0d90630c3ccf1d8e25d634f240971688436d65e0d8ef14475ddbd5e87befe5e61b716be922ebd2be3bd05fc24f512082a00e38f7742cc2b7d52957bb43c7d8846a9e46c24e0263a6e0b6a004fa29c4b4bdc64b3c71146b2e93a63b179f5ab1e4c7ca00916e1444d8d47e1181ff6e9bd5fc8a511bf84a16a7ca833ee0c374ba87211097f6d0a720a11fcbbf7dd7af5eb60f3c0cb27d00191e831a29d9e56ab20cbd9d45e641d3643308b44545c616c12f48cf5f5694335788795a32029e943ad89929f8512b34ece38bb772416266a58153815e74c91a6366eabbb81d72b3245d3f6f6fee432aeb23fdf7c0c2ad5fe2c1e197c757dcf1f8384515e66da08f4125c0a269c6a67b3757b7d9fd09e14c6f67bb8c7ff1e541d532dca4da308a09f94e7c1c57032e19e3ed4f5e8c18c5ed533e47d35d833e608cdf7804e3207ec768327b0e324eab80693a68852d342bd19285bf7356753e566c5e179f889902a174c2f7e71b4eb1b1f3781e9577564db0c7b9b1b5bafab2f6f2ce99095a3e6f6d62f227eda2151af5db24ad5e728ffc437a3d672e828a1e7b81bd7783bbb76890b029d204368a9be769d3ff580110f0e7742db48b1b026ec56a0a556e786dc763e2231d021ebcb1ac6b81b2b86c7d53a23368ba6f38b0f5f347278156f9496707ed85c848e03daf5dd08d0a66e448308ec62df3bfac5e8529ba10e077447590676b7918d24d93c8eaa4b56926b83ff31493b122e688e44fb967258a36752921e40b0e7e1ae3303a4a293d063f4b6ae0a95f2f5590fc184371cd20c6b6ac9ac0448ed2dc45a3ca9b523bfe870cc904f143139c50f827ad981314e654d39ddc46c0dd4ff25105ad19addefa46ceded4a1e13c43d45441729dcf14d6bad9e656f25779970c7da4d4620c6b9af103a91a3f2eea5729c496979766e5e0bd858c7732fc467a5756529eb357d4ed5bee9c8c234e812454211b2e12ef75a4489583dcd5828098c7845bf48876f3a2b8d66182bb0e893ddbda1237c68fd1c6cab4a9f7d6e460c26b26ce3e9d7c1cb4c531c75e4dc21e4b18e9cc63533de2b094423b3eeda765be954c997b8cf79038c7fa64223c46505f1e8bdc65937ace772cf423b314c5722b29ee8a268bafb4044116175f6155f21c9e6bf843fada369fbf0fff3d0c6892ad74cce318c0521dfe2e1244449e52fde377fcc5edca1c4eea179d208b9dd44bd1c67a9e6606b9a23904a71c1a84cb7e64e9bf51ca0d33842210f3cc58177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643da173060f7917a742bb8525965991f937421faddbc95c9fd3f943a05dc8457e63cd8ef003b0a3b4374f68cd680ee90867e9ce590ac9708d637256785dbded66c81c28e536d92e853caf486a931ab076841d94965c55991ea6a0848eace91705c6dc0669cef48e7027552b13fd9d6f9e82b21c59dd403ac4d7b68ccbc2a7a7ce41c318d317bc193e07e27c83dffc45832ca1aeda1f4d99df96e79e16e41a5325cservicerootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootmdadm-4.1-150300.24.33.1.src.rpmmdadmmdadm(s390-64)@  @ @@@@@@@@@@@@@@@@    /bin/bash/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/bin/sh/sbin/mkinitrdcoreutilsdiffutilsfillupgreplibc.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)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.14.3d@ddQdJc&@c(Yb@bb4t@b @a0`f@`f@`e_T_v@__K^@^@^^F^^F^=Q@^=Q@]{@]c\@\b@\\U@[$@[dC[dC[dC[3|@Z1@Z~ZTZLZ%8Z Z@Z ,@Y@X @WA@W>@W)@Vii@UUAUWU@U@TPTи@TWn@mwilck@suse.commwilck@suse.commwilck@suse.comnfbrown@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.commwilck@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comheming.zhao@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comcolyli@suse.comnfbrown@suse.comcolyli@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- fix for uncontrolled resource consumption (CVE-2023-28938, bsc#1214245) - 1018-Fix-memory-leak-after-mdadm-detail.patch- block array creation with long names (CVE-2023-28736, bsc#1214244) - 1017-mdadm-block-creation-with-long-names.patch- make sure initramfs is rebuilt in %posttrans (bsc#1214427)- 1011-Improvements-for-IMSM_NO_PLATFORM-testing.patch - 1012-mdmon-don-t-test-both-all-and-container_name.patch - 1013-mdmon-change-system-unit-file-to-use-foreground.patch - 1014-mdmon-compensate-for-removal-of-KillMode-none.patch - 1015-mdmon-improvements-for-switchroot.patch - 1016-mdopen-always-try-create_named_array.patch 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)- Update the following patch for (bsc#1207868) 1005-mdadm-enable-Intel-Alderlake-RSTe-configuration.patch- mdadm.spec: add EXTRAVERSION string to make command line (jsc#SLE-24761, bsc#1193566)- imsm: support for third Sata controller (bsc#1201297) 0122-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 0121-udev-md-raid-assembly.rules-skip-if-DM_UDEV_DISABLE_.patch- Monitor: print message before quit for no array to monitor (bsc#1183229) 0120-Monitor-print-message-before-quit-for-no-array-to-mo.patch- 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- 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- 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.patc - 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-mdadm-add-no-devices-to-avoid-component-devices-deta.patch 0013-udev-add-no-devices-option-for-calling-mdadm-detail.patch 0021-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch 0022-mdcheck-use-to-pass-variable-to-mdcheck.patch 0023-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch 0024-Create-add-support-for-RAID0-layouts.patch 0025-Assemble-add-support-for-RAID0-layouts.patch 0026-Enable-probe_roms-to-scan-more-than-6-roms.patch 1002-mdadm.8-add-note-information-for-raid0-growing-opera.patch- Enable probe_roms to scan more than 6 roms. (bsc#1156040) 0026-Enable-probe_roms-to-scan-more-than-6-roms.patch- Create: add support for RAID0 layouts. (bsc#1162479) 0024-Create-add-support-for-RAID0-layouts.patch - Assemble: add support for RAID0 layouts. (bsc#1162479) 0025-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- New patch: 0022-mdcheck-when-mdcheck_start-is-enabled-enable-mdcheck.patch New patch: 0023-mdcheck-use-to-pass-variable-to-mdcheck.patch New patch: 0024-SUSE-mdadm_env.sh-handle-MDADM_CHECK_DURATION.patch Improve systemd units for mdcheck (bsc#1153258)- 0012-mdadm-add-no-devices-to-avoid-component-devices-deta.patch (bsc#1139709) mdadm: add --no-devices to avoid component devices detail information - 0013-udev-add-no-devices-option-for-calling-mdadm-detail.patch (bsc#1139709) udev: add --no-devices option for calling 'mdadm --detail'- 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/shs390zl33 1693987674  !"#$%&'()*+,-./012344.1-150300.24.33.14.1-150300.24.33.1 mdadmmdmonmdadmmdadm_env.shsystem-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.rulesrcmdmonitormdadmChangeLogREADME.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//usr/lib/mdadm//usr/lib/systemd//usr/lib/systemd/system-shutdown//usr/lib/systemd/system//usr/lib/udev/rules.d//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:30550/SUSE_SLE-15-SP3_Update/160cd3e7bfcf0e518955712a5ac8dd54-mdadm.SUSE_SLE-15-SP3_Updatedrpmxz5s390x-suse-linux ELF 64-bit MSB shared object, IBM S/390, version 1 (SYSV), dynamically linked, interpreter /lib/ld64.so.1, BuildID[sha1]=2fe5d873155cce305582f101d3060c22d6621362, 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]=9184e5b9680cf7b43dbdfb3b49298110f5e982ba, for GNU/Linux 3.2.0, strippeddirectoryPOSIX shell script, ASCII text executableASCII textHTML 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 executableRRRRRRRR RRRRRR RRRRRRRR RRRRRRR RRR>x8`>q: 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-83743ad5cee5a49cf184d468b5d758a2991d43600f3f554f42bd7e5f9ea052c5e?P7zXZ !t/N]"k%nŪ)/]|g[k<Vd彥F>JCIhgB/}D;MBdWç <%:Uyρ-> T_L0Dv?†ftv\X ZyZΪYʉwа58oVd:BC&lo}BkyNjҰ5G+;s&h>nV8!̘94+'y֖ #{{,vWt.AZBro)K˽β oF |\諳TъL6R-: [4h-lssZ,OO*KIj:^0Q|64>;}:w6mB.RM ZI0zøE_Op=IZvjZ=mxz!6?͇HX%# oqbPZזE{"+[wgL"}{dQ/Py7q"8J[%-;}KaZz+\H/N:o /*r+#enuѴ"l;ĭJ x[Ģ(hފD&,͂\kZ LsCks**M8΄?WvWhY@ Ƿm4:v$;|]{Xm8Jo;ݕ4Ak= EU9vɕ:ZpJ/3#M#`WP>o{pd0(^ަ",| oy6Pn}8?lqqj<2O\!fSaeJjOsNԙ9 ,O}'U\Cnp5Gӌrҡjv4Ri&=ؠbhrQj^  < 뗬$XNƉq*})<+L;mH8'o"SĆ`'fWʳpTVQJUD*!gg٘2_ǭJ8u|B8Җ"X9SL:|At,T"d@KFZ٣T3LKsݤkB|sDܷ1Nc3 z.ywx#J!8翠yG܁A!jhVN4FA YsXu~ xCt]u=pZ\\䲰Eh0STZ3:31XGٳ#fݙ`wr+Q`Ba$vy}czO=3=,FaVoAčN]M~nOװit1?5C3Yq5za(ZaJlhۼu{khK+OWDZL/}gm;_gj3 [MN[ׅ!"bK֣afvtgygN,G)8h?nsOGԩCWxjԝ%PXa$5PokQC5Փj**, 0 H<Ј"] id̫}yȲzQ;i@vw*+4?i@I0fǹ GFP_/S*i} 3X3ŇDTn5AK $ )v hԽl}pƴD೴#]BPU.\3mB~~9ƦKx3Ski?#Zpc*P3$yjr Z2Fjiٱ` iPe䧓lj1I4MY7 w =P,f0"A aמfASߥɯ:>"X-V 2>gSʓxIjUne&wg =PxBAbEck{o M4/R $9.NRf)>nxH=-;бCW d5dA>-`)ci@H>H7(k)Z2i|M#}mouF`Kx6.rcŹ zCp}p "n4_/!-jybqclH $m-KPN  ,cOEb7XDaa`D-J87K/xR}:%G5~N5ި˶B*6fB'*SK)' r}B|!2 _ECqy qi>bC%ZXuvEFI%:a&lwP*fE`;x_qZ= hE>F)9ih71Q_1.J^ckf]hGWT6>&+_b۪_ڹ lЪ}< >l>t@EXJ+l5pu&̽bK%K`%Ɠϵ(wKy_O]dӖZm>;̮72g##l׀ְwg\H-FI|$o"l7[Qw2ɪI3T`|5:>%Ktfq/|d%/1!ft 砇i`R͍]Ef$(](n.ceRurifYu%4b=`.\* T,Yr;Br A>6־"v0 [+@j.㦷g7ؼKMz"# Ҙ,r{j*`6XѸxl傤eY1c& (9Oc*٪e⚂Ah]kPdO?Xv@C4π Ħ'jة4nb_/1_';2[%l]mdS t#O8;«Z;ʡGReW܉>x2qnz4\(>#zJb=cAN_n ݎwɅmtNliUfä/1d"Hg14Bm]<² F>Im9JwΙrS>Ko:"d‹ GJtB'0Gh-'AѠ^j^яk6]Nw UɪQNü]}M ,&p{OgU;( !&but _N8972r1RQ[඗pZM 8өL쎐PJ -qEu1!o(&y9~D|=}p}oDSB{[`ƇJXFTтi0! nyH_z$N[òp ID!=Jt+J_$5H2S#9\w Bl~>8=8pEPصB@D5V[ڦBTiѩe&-dNlTx!A},r! ~أD)Ӽi֨K][3l: KgtâY#ՋI)E'Sb`qpYCy=N>4WCJĒn؋?5","YtXq|Ǹ[}%&k5h3\w"'uL1+ q'ٛ$=a)M P@m{{ 83iTЭl+G?b-M?9i%jA*ɑ|%G;kX`4/0h wO$τ+v1J}T۷?,;U>D4S'fAρN$b> ONsǫpٞ-}g̺sL(_+>ש5\bvz}. i 0>BYbyA@(/Y%oL(^+ߥ{$ԎD?_`7PŹsm YM4w| IlO?:ɺ%>sSl/+]r2{v%*x3n3ž|P=N{:f¦LA Q`k}Sa<*sد|)E]ID+-?-.!(MD|cMgN7gW-睃*Z`V^\}ZlPda̩wbs/ׇlFh./+;e/"n7?9zv RTnxIeiegW1Me"ԍ) 61g1%IVț0 v4sȃ\1,GzuеT+v(%\0f,6F6j a{~QE<J*49>rdBkR#euڿpc*.˾؂`X){%w>c`W Ь'T(/@H@ $!?ㅖӗ]ob=?6`cĿ 9q8c޹1U慔+$(\&IԴ%c?*Jo*|“l{'{pTR$SzLda{_ [|pK`AL~5^oҢR>Q]䪬F-+ 3㥛"rfbĵD,j8&CpE'z8 3d+t!YwJ@aJ^9B`:DE2?#MX%.cޝ豎3:WCGk %oKBEzx˘o VN{8o h)N'7}䢑i}>-)W7 vh&}Uu^=;HH :kCՊhb%,$=NXò_TTUfM;STz:lX%58ܵ#Nܦzg-nd MP%Dm3>*CtAsowRB -  Ooc{~2CPY؏H4!1#1%i6Nl1BPA3MH-t!" NC^ۃx[g:2,YKAg]0yiXk~AhpF6U׷i¨Xy}ZTQ3{nL#:Ndu lnQ_aV(sDda\_ ٔ)"'dFW>ymXIl0!xۇVnI٠`dKp@@ lx%x$g@n'B. yf59#B7V jrk" 4׌$x>#㇄"8 ~M8T|~hdmcXQ@ }'AXwI''Dc0ǺLMClPuaIb OS*|Hi+P2 \IBSiN6ow. %Uҝij2yOj+~J%yb@ tnbx5#~|7LFbތW􆝻v1) }غ%f^W/'S3Ob;]~O-l{W0LO9^jw0=HGq{Y޷dXHtI2W~}yyNݺ]o?z[gBp 75aWع(KA̸sKB0Th+/$11ڶ`YU+#5m&ܝR}/Z݇r171Jo R8` Ե 8NImm;:̀YYS:CMtê+zZDe%^G[~Vbap P~bh5uO9݆P<ϐGcU'RzXY(8Z:scTF6W4v2s>uj(>OK /KYӪ8:xk1[Ȉ*C ܶ)@V^r ?Y[B}>~j2d+g$/7RGrҹ9tgxFrOS)H_6oB~zG*+ ~QH +6> uxnn΄ 1.Jp)}n/tsLױr%Eʑ7[vBGֶ(H)`oy4tCFFʁ`,Z081)i}'DPfʊ#T?X=xk sr!}O(.ˌ5vnhW[aF0 afL`Qgv VL䉁#&a:*X,f{JA\]2؜3:2AE1%%32'&&[ C6naf#}l3&7"!dJ Et?ks, `A@iG}xz!jncqvPsDCчh38uj!`Ō( )YݶC[pX@,,+ZG:_#b~<1dL`VğErѰBsZ9£̛I`;صOϡP8wfl_E|9vXYdfUsTG0] 1 ̽$o7 : 9̈́3{Ƃ UլOE9@S.6t&&:~!Nf8oc0#5 fR!6`Rm=|:"s(Ar(F.˒ۥ\X=;J[lWA*A 2?yKI.x ]u*t`]ez?2F.vПcVaȩpW[J=l3 /FR! jhm_Xk`)? jDQRj2zS|dnW+p%H39;fVM+G ) Ek LDۋ-w]M^b3})+vҬlS< tӂؤ n{2ty }KO i=T' ` tv)`[gFXcק:@V#KprxԡXZx;QeϮYvm#ԮÀ ,|'XQB7iN ekDH_V3yCX/ӁEpzćpp;ަ2G3'Nax26xorj_\'nmko4Is!RBy20,Q@U4 vE $8.V rp !s_?P )D o i镋 i&CJo"YuneˠҐpUCnd F9xc˓Ѽ&3 q>&:f@޻_'7ӣ+sa7lo%nki+ݷ,ٞQݟLn 'jX4)f#S&  8%SL}ր܉mzr#tG/qˏ0kQ8"bhn:55D3 semV8sF2b5TF6+Ȅ& U>'hQS(p39p>63eYUHe7jWf,8(EixZna] 6%5܎9#DV-'R+Np@-V.N l;/B>S?!+񨕓Uo|xQS"vWB1&UdRSղ,RsѲdJ zs$< TM&я59y$S#m).0_/m89Sj΍#`tl4cP'(@P3~8#9 !CQU@GRKM= M4)pX3~g _`7 Gjg>6nk%޲(I1iSIqtE&}Ljgd ?{U#80/ sz8gc K [Aͷ?IĻam.Blh/u,B'-uhWV-flUvR<)GxKWBiVKٷ+f>9lgDv2Ex;KA6#A#г2hǩt,0uRx޻1IYRH!2)Qt4$J+؝_rщJ% duε۷>o^/P{w2b^ͳ'_8G6F7zǩĂՕ ěgZڐ ,z-Ox8p\yLk5lniZ&g$jCrunYPpStmp8DۢlMX֊4R`j5GPkZG$jrY[~:>"Th) &2ȓ$ڭe%Nk+[FSU& 9nBaG:N=b<өFK}}d+DؘC ͼ4FQC}mt@+9MnQSnHgbq2t4>H&^+OFP* 'ILoCP**GY4dH)b İ*>8o5OԹ>?Z«W2Mil$`+/ ,u $[19i FJx{2f INO7 ܷ<ʈ8 EqꐮW[Sn'C|gЊv8{ "Ke7ˈnu;tdwDx ͕(?VGԕe87Z\ 1 p7;}he_7^lh]<2|h= IH'ޙsFY).)%Xn 2abiǧ@@.n-!V4<,'i'h!0HAGm:tޥ,m JEdho\+Vg#o+j'cP"aV  ]9.DМGkظ5SWVK&W+kȂ|ܺn}f{ȢӁS9,$q{'GU@Ok_WRet03w@&pRӊ-ےLVS\R|iQ[k.fkrx7Z{^fBr1 z= Qߴrᐊ.P/$Ozԁ3śI#pz9t`c LnT`g4x2(p?K>^I7=̀lܢnK ujyֲ)uGm #~d؂ |0uc[(eh]F64'y8UFp'cC@Ն5-7ʷ;hRgੇCFB#g/,l}; z$ OVzDBl.26iOV=ZxY"$EU4FO bSGԣgZ9uK9IY{İگ"<#u#2PI["04Na~OhOMM0f?[7-!x+?D'k!Xne xN9)j͸_FN>Q #hhƃ=M(F*omB=;.]\»e+Ηl{a+6@Ǒ Wx؈0B,ȁH[c '%c–Y f(奬\ϴ.QSb;:PgtXd-C'ց )h>E؏0Q([x8|8H'IN{xQt[X0U eL>4©x-w6ջF$РԹieuT\yB4Ų{;yhxJf;@A |rH;A*ua5dtbI;uI?t\jZAF4hK;N]Y\4# {xm/c~#.]F#Z:$?Q-VkrƜb:Kt.;TȆܿR!ݗf-Ո% >p I!TVhJz)}A~;=p  ʰlVBVh-=M+y48Ez,Qn*NnЂwx;j̑4Ty '.P8*]If }]^&lZ fT%6W~A}y xk\dƾyQ31a ;#-Wqyg&E{ HD즖)WK/{V#WC:O:Цʭa; VeLbN'P-hƎnP> 9+94Su'EJ'rw*N}bspdl6"Q5Lf֔xHU@؈-{ u>Z0y#x&|8K=V 9>O-aH0D0dVvH1K#@AVIF@qA( [F`EciL 4PwTē(qwpopjlYf|sW[D1巰v 6D@rYC{Z%w Ǥ%OYd1r gf(!"*k%E3aM3TQ%db\w͘MwjX؇" S)w"Rmq5aI)?u>T-oj6bd`GoOFeXgLmt ndѠ%M ^3CfFrpˉx}bwyDDY,gsy^^쁹_oF 7HKi+D7_n6#u&iDF}kkGcӿf>IşXOθ(2?jCVjTH1=wm>QubV'2xL=CW0iIZ*[/^{.13Ebbȶ陦*Ƥ6E3ΣTȑrG ;aJozq 0eO؂l.= G5P/^j__đ]1 ٝ#O̅vpQ݇ gp# ("3@<@;WpQ9yji|`bXevs-;ĻPTh"p0?Eۓj5ՙ*AdA.{BYMȘ?aRSA-=駼O\.>SUYO.KDDT2qD|fe& X@#Fmz9[P/+l-:lӘ<<RW&E&JO+Åwl 4pMES.(T ptc.4j1]";'T.#lw2mpYhnvI: 6c:brpO`zLo{Q.1;m#h"myXRѵ6?R&.UnoNN?s0Xpݨ4Ƒ6mﷃK*kNkr`b*Z2LykB&P$/?([X3]Ó7h >Y% מK*BÁp+L]BFNBNRzmHeդEE7GaG޽˞kϳ+ƭz`j}%5`J)ApC:]!P.ȳJvh56o㳇#4;:5A+9NaO-M(ZGs I.; _&{A(j9}'a9=Ǵwh9)=\s}T哉Cګcpҵq0x:DPIfSb0<E.'ٸ=^}od#߮(,}+ awk!wY%X˴4`Lf= [r1A~>C[~g4k._ԅ!0ޥmr![7 ZL&'?R'AXa˅mR-,Ma,魴4Nr=nqbOJtE*WYAt^ *'gQ'AfĂ Ϝ/K9# DYI =ȫ:N}E5L OR"@J,[Mމ.Fc+1^16X.m&Xǥ)Mb}rwr#׾iC$\H™͛)Am@jo0dd4 u^>A(H&mTZYERk |YQh~]X)}4x?iE]TIׄl(9KmEyOF"q۵dfA1pQ݇h# LP;癡p-(d^i77I@ k)џZfͿPo wb d1e=;o1 ixP/Q#nyhz2bg Oe'B|*#h*/zE㌠!teְ]pyF6I^ }+g,ȡo*;A >ɢ;]`MI-*Gk"u۹ .KV_ (;g8%s+Ԃm(6Xm4=)ULn'i9"H m"}̽Nc<MVtQζU埶|M_)$OSsWOw)=κԣ2Aq8p#XWX 7O(uEN§r!EجP U;?4_K{nf/> ~@J:_E_Xt뷑۱"tv y~f{Lp^~fx˯=LնBW@`+D*_=F}|5gVT4:M^Vh5q۱X௵ `$nKg?܄4Xsnua/C# xM.X$lK=LF6{H7O04P*%tK?QP>ܾz >Bi#BgW㭅!1ˌsPAR@h;. {XMr;5 =Q-~u_l,sV`&1\#Tc貧AbvKˢlTү-,^[|Ϯ^2wd]ame, 6y]73-ii^+!ʘiD%X0(4:Q8v5q@ߋ'&fW?XΣF/"-rā~ܬ=-K Rs%0 /KbѓX3n-梒EN:†tRY=B zj' g I܋s9ض<(V0دX:[ЉO5t= 9"t]J]\.9-;Qx@ޜ߂g܊tL<1S="9^vŹh  Ȼ,HōbyT Z/̤L\f ;3|bl'-"}Mx=cS ke̺}U;k[EMEqVA٢M&Q_5\zC? l=`$>N7Jx[z#o]`‡f]35äY_'"t:u.l >IӃ=;5QMyCšįV dqSF3*F٧ ^2 1#7f&8~%9R131Bw\H7g'C|z,vb>N9j $:Efb2+اfcot(P5utg̷"b &Xl89`2.7\͊ <KG<>\7 ֬g'qbR0o7ٗCWMP$OM'$<.="?p$S ׇ\4YlzXug~ tr<%IؒVp=:AT+;rGLt`s0Cp&a?KZ1 |NˣNziYQǷx\S`!(9r[Ne) ;<|/bP*sDPk-`& ӟn+K%iy-2wU hDSJ uE„|$l [I9P_qT,"GZ`ma݌xn7iTP/0)Tbm_d65%w1J!wpp #kV yع m#k1qDt6 $ƴ@Uֈ_fM"둘fp ԒdR:PYX/T2Aent-b-ڭٕ';*8YVrUtق7M0H a>).YP-vK+r\DA-x~#=$v=גo,oMY(%щ[ƒ4A*⤞ YKG7=& EPn5 R迌e i{a݁iPaItI \bG1 #\ٹYR`Vv7i^a.U,k9. Unk?2`U&[$b1 ÑPEX"a$1!۴7cZS'?Mt_!rqnT `8TZ?H%Cگ_iw;iIQ!scψT$qR|s{SSBpـE|¹v=r4DI$a9TrYD#V845 fXQඥ."C*i_wrmP e/|L@DEH+{(DİIccB󉡂vy: `\:e5C;!aǍQcK'zGB,C:"9j$P=fZ0"&\u+bj,Jun,unUBCs ,)(?8kৣ\׏wgR'VӶwn;SˁulT0f8!/lBx4蟤-kbKvl Ʋ$jR,*=RB%:gɏrLB0.ӵ7 ?ySTy.D^[2̜2#R\>v O5~"ϥDAfG6#EEF6^**&ti(t Kq7x|T.k5+u~C7k"^s0̗Luޯ:IbyHH)Yb7M̐)v5]] )r|BZז N康Ź Z1SЕ?cbf!o[0cv&Fj&C'\6m>10cXO }OKdb24isz~kGC٧ #wCF#~X(]6G*nY{Q"hyM4"0}]ͨs|v~iVfr~9KQFjҧS:\nl$uEg9ѣz3\['WNMn_ݞ\0:^S ZmA%~hť}9e,YBѸCU-wps9HR} Qo*!jbR$ DR'.0Y"-s})~dVwM$T,*-(`eLjUp?N{G>u?0Rjg;~po\$TCw =[4%rU' T>m_!d9䈻^r*Os?hu]0GWTE,"+Zw ,!o 'gʿI! B% W rmQX,o h?)4rX`ZtkaxIfXR✣\u~O;Acӝ}uhU1գՂcG7SX% d9:k6nNUn8%(Lx{-E=$=aLYIM߃2F󣧛ͥx _QlHkib]A"Gf!B$k>$!Q69X׹~Hߞ(3\N ->c THMRU@q'jNmKMpz<< PL}i\ SH(EQ*Y;*Q-J\jдgW!{kّj~P=gĄQ/W" w6aGuL ޚz47ow;R"Bh*8VM T>#Cf/`rmO!sm8go*A.iA8Z*_^=[Qbj\xڏohTu PTg=9=فJhҁߢIcWM#QdޓMf{3+vщN8)Met3D]6㧞\lNUc Gm7z!ͲcfXkF13ͱq no\|@O^zV L<9B@v+Gi^8/s@MM92X܅oQv4΂ȿYC]mZVsHðs7o yxa*]Tz>DBI~DJhgP*`aܛ0wBV1+ 5$hr6LoONQ+L8-R!I@e)I}ib1R9I/KQuwy{֎BtŚ1` <&7a}M#z^߯tnE;*/jd GJ UVS݇pԦdX}Ĵvc:jJPεuAjWЖi/',ZyMlD*[rc8qZ.s>~EA~/&'XIq;sև͙a#8C<| _b̖űKg,\5ʍGX͜܁ֹL^'$H0\)^H(U2Ga)fB%b/2{$;ۺ4͆\`K iblئvV9"WlBx%9 xO]00J 6AF6|\ޅI[hnXzٲ#<[>\)BiKm/=jJF8#\0kF)D} ٴv/|hEYQ#vo+^d".n*0?\YCӏn|N6SL$. 1QJM$`ďpiӛI/6"!֖Y2 I1+rFȽ'?\@Av=z*d-nt4B28E#%V^Ft0q> 5`eэIKD_ =1lM'|ҼR۔Į%]6ww[AdmaB>] n`M%dʄ.4/jC偏TûPh[G bCpl!*RyrsmD>}=9HnD#1; ڛeh2i(kw',j(I|s oc|GjA-Z a1vWj풁Lj-@|R@P1d:d8!XݵZV&J_Ud--jFl94 eU9/erY/f=q7k?E/GK)BɄlw>v.\m =C5 䛨pV hRyWv@#LE`# E&sXYmcDIu %nY0&q rA{@3QPCUyla61(6zXA ( #fz,΢M1o_0/\Nrk4r0"Ƚ@}9C1;Lm񷓶kyma!{6tG_׈h)=^rqήFf`  `OF bg}OGMԪUe$` KG1};{E NA?uL(C~8 uDQ|\'.Жx #x9aꋱD},Y"Y 4)0T$%*A*NYhs qrb*vfl (4:]'7POCg$Q0Lr_$IDŽXfÔe |bkTo-H<&'oo=ӂ$Fk/CV} 7Ded2aL?ۑ*ivj~pX7ED#{3N~*j .kp}`n'AW8eh$ i5*Gtb6\BeoB{MD K~ *4L/Ay@Gd޿ VfSP'IK/Xz(2x㛏1@KTCZ}Тqc:wY:$nI UXxuzD{"}s=9y@ |F&,`Eod1XV -ZBJ<@نgFV2Fg Wƈe=,݅ ZBU+_1-t suPWAP'[{'_ji~};Z*1v$7.Id8*|=O4aL+Mɶ=coޡjJID=;J$rl躤@=˔?R-_ZO! JHzL(XmCdڶ;4beG6L"蚥E)X?zTIթ[&\!LdN/]N. ZnYZHQ1<GXzE82eb!ݶܛwqѸО; tin"/U%O]iIvuOK͡qS ~6Xo:Ya Ƶ{ =ԥfK}q-CNhR4BcX$arf0Z:x 0A`cexkE4lKw|Yɔ(kj I91h&暻{:19?FhG7/*1.2;l2QOe8yҧyDP(!b/T6fiEzAž=P.AiDej@7i`~ϊUTmd⺬~)ڜOPeb (ZZB hԱF-sC~@Rj,btHٛ-ɺ;]F2gBa?*;1#֪7bץ٢Ex|d$̭H"4!xl;@-DY!D?8q rbDzT JTR[#Y9%,E5>_;b_8)]Қh_[̪JI [;dc<%aTS:CTfea+MP׸yG;|δDS oQ$V:Capٖ@pPECzdr\=dxsP=8A\@y”1PpTyl@D4{VDbث}u4CeP*L4t+:vUs9zgs .%>p^X8}W|3at7/nN\iON(1K$j|Ay΂b1̽Ә< g R9c/ <ץN 0Lw&,)Cc[V\Su:7/oM%rn`^fF[%{#@_ܛn`| &ҳ|cZ%! P ЃyI:xHI9تVezLFjn~sOOkTx@ub 39G ZpK3V4stexoW@]jfIU+L/Ah,\{1Z4TC2?4qBI;j%{1š6 V#IO1BT2j_w;J_2x~#4`q"@@䦰D:q4+,0uePذ=aoQߵwA'rFր_dvs3c)ƈi&NUpٟ'iS4f#\W{zas3Hy7D.~M5}3(Bi/Dg/j;OڕI軍鴖]F‡AK͂K]Ds!a"<- | `A^p*Mq;*')! ҉PMs Kj"Aן&@>9DGfwQlbWvBjv#1KeF;^x`lԮ@=17zFϑ(kW32%jʃ0 2 M:DRy x7+ tY{6-U)_pOT^:[P3M;NR_V9b-Po'd)M8NAu١zeG{5͜YYp5*FO)O^5>qh彊GvʓCT_3ű\oyNl}]ek/DrؖƐQ;#3D!fDEg}!muINYm N/j =ĺ:u Ӭ#`Ke{WI/,agă[mw .MJ/HVĒ&;զ5ƾC#Pp]o#x*$Kbr^2UYNN; xL{k0tqtK.o(©ot[g<L\9y8Ѝ{ x|g7h\ƫRIq޻';teQ^eIǝ{q+it6)I x=ZC&#Sz[lQfIkޟ}XLS^PHjc(a$\Y IڋW^KJwUKrupFO02Dҋxg g{h("&=5C[4b1)qAK򕕸PsWXׁ&*G]ܑ˼, ?sun3*6B7XZ(j`Iu9mVmSY{ ۾𠢘>-`~۬a3HRhD7`7Bޫ8M}Pb䮗r V4n v\#8`Lr!Hڱxj%+$ _,!tӂ#gA]Uʾ>U*} mX6?gM†:ݯۨeol'hDg+A/p_JX!YE jH׀Ȑk*<2h4|êէϚJCsYzh{=+JA,W!(Ao7<Ǻ~)UϨezN}k"Vl:X3:N"Z,>i{xnŧ1v 7#R!YGy*^ 15R'[ 9PnYAIRQwjNĖ=9]j~KlלlV$Z`[q9tgu/\|@vpƴ9𪡸Q!3^g4>U9]*~(\TfvLb w`'Lk"F'\S]IkKtu}͉)#F a a>Y5Q[\,]M-nBkb!W?L6laxW4`0,"t~GE%05+-hӄrYJtÕQ^YǃKNj^rhAMUt̝$<`9ɏ {[\`YIX9Eکn:ʶMɩeL1ۺm]:M xqmL#%AXH`M(_WGDEZ)WFI 6Q?@]L5U'? 3q9Xi#={ܰ5Kי jg'I:6Dd9!` o8KˑuK |ru7FINb]-?}:wl!}?ʱ ?I5Л b\L &jFFՄv˭}"݀_~-Sګ> bP/垀4a WOr- +l(.&wi#2rvuOش+fU@_bC`6y@!ݪmؓTy0]lUc,LIBm!@*9$MQF 䇓褕0yau &Nd󮋩gdU 4 f(@fZĜl `!>IKۻ@; E9*CWδ+`aGptKtٳIw>]l$W9]:)ŽK+gv1s$x EwBzvrTga~]T3RP雖^PQŕ}{j[ [Yo>'Pc}[$hQFt~p7] J92YYq)Ժi"0Niz/<4JQ|x2ԟS9: PZB'mD 3RC^͐c%k8}pI|ROqy 8N3ʯE 72]x繙ݬ1;(ōsp@ubbZwc8c64BW('c`ԣi²UY@_i˃O}֊httՐql“6g$ IJYp*uJ/o=4VY6X8⒝|NmywQ(g@ Z.7? aa~[#nДa'e9u'մxءE#*߹Ű[&xC Y,%Y)C&z1iPPZW RMQJ5ڄhVJ!@ J״yp|+!cs (ps|a$=P6TwEF _%wvyoITJLxsc]pE~ LEJUO7]t zYӤ  }| 3 U 5p8FXMO>"1m%U(2.a&٘Ol.XlY%񟑾!Hp2Up({Eϱ s/:-* 8 P_ 6gWIpgz"iv%|.u>3Х.sDdžН R d=kr{dJJMKk"9T:.h_US[K-1߬.(L[c:#A`q.f (Hs*vgNfS2_[wB_*c1xg4F?g3딑8pY`*~XaFR1PݸH^u2[/d-^aM~e%1x7Wd2PVl})o'P۔ ;K%v=Y g﯊_N Q lFڡЊCmXқ2?T,uei9 (UfS~jATCGxcO{ݚ)FxUVL 9Lfчh1hXm@'eڦ:"'vjhxji3Ge8Q=E{wĹ,rVI>\P 8p*VP?(< xhXd CNǟ@J' ĹYقeM^c݁bSZ" KhLpdTIiv8>i^EꎑxґVu2GEOa5L/H]p@0oA.Ɛmmb^I}(k@qs]ft:>1(hR d?ٔ8ue} h`)*/,_QV)t!3%+6 ;k0դy5JS a[rXQz@`K kHM-~[2NE._~D8+cG ɈmABN~\t90E([2̠TaW5RU i 1qյvoxϨ c#@,=0Vk$bzǹ8p_@]=w+4ϊ(:n2]hI(R"&:ڶ UPb-g4,bI)I /sW'5t7/%,|V2/yTV`>%qZDYyNxq+{|r$ TRi&VJ$qp+:TLJOeڑ #ʠ݃NN,Z z)Y ٵ%b>Sdw〫&[Ma| lNH x ذ7u\WMC]H2}cZᷖ[[BfD\=a|Jv 5s`0,otc2Coo|WEM*F*:L,AD9)fؠ!*|9Ľ ry, QaUCCd y'\L]đhm-{^ξ%c=OԊ?؞|ܺS}vuB63AM 퇰5ńn/^1w2qRR|곳uviJ%ȃbG)bmgl -#B)%Ɂ3gIPxe( 0vѱ@aGaN3fl]KH):"Hu>dz[Pvg,B a@wρ[ x@nJ0 +7ݽl¤),rtVm(NRT $Cg]f(n,^ 9ofۨa@'D!B<wUKr_\u k|ESH@k<\MchZT|QoRK'+{~g`,w$DH}!O42SՕdǜ+jYP}4._ 3@^LGS Ju@{A)~^G6i'(_"i%, y4leh4XBL+EtY rX!xyD nCt#V!nȧ"R }-D56$sz0\M7v^K( tT(Ba'iVgKBT,T!@Нh&3v׋S{BaQizQy#b\/݀g0oJSBIbՍԟH/|<*0xR~!:T`"8_v7 lyc{t'('s !/&kj[j3ZWJp,4+nu ފcwݗ:&_#!'# -!)iF{b o}c4Di}\\ajDΊvzs!y>CIWƈm$P|y$k(|}Ee6 U{RKBrA\4KP)v}XIՉ@'"%IyYwxZ5.Ueq;1'MAIddҘTxĈ2Pɖ)U wY*|3+o a$l'28HxSJLf{*pCČQj `l*[ (.zmIkteIrw1|=pydZR܍v5KU7\CwCoQ pV0(ʲ DqW篘z׀4͞jzޘ׊,QkhvKʹeP!'}, VcR![yL{mWQ7`+k -/M)bv؊E0b+Z3LCO*lUf8p~c( !8/Q2FR=5qr Yc j~WGy#2UMf#73JaݩU^[ns{3xm=5IЈ@65=AEa8?-cEk ը.oJcS>XH')ӊ=Cޡ{Mi>{]W0y4npYi*R9u.f*_Ud S F4@LtNύ=,d*M2Ŏ4 dBSfbPosҴZ<yby>jC̘Y-ݞ}Jr N = 7 ~\ D36 {X9(BZ1#9:C $#Ѱȣk>CDا}EPVUbXtf Kq|+9|\,\h5rGM&A+bxA⇽-&;wcbp%Z'X&"Bw즒R"snYv?Wqn&=@!EC_HSjϑf2C=N9k啾v`+C7A&$1QWNW҉ Tl2 [#=ȡb(!oÑpq|q[V}.ELv㑥٬o\i4(|HywE=ބZ/ɛ@ iOgQ6:& ;MYMDZAN%—6O%-sRp Li7QM \lyC;qG1RU־M n c\FCEm{8MG1;L 0GR\඙ؒuhrѕ(T4l)ʂ2a||{G6nĽZyxL_WbYi~o\wowHC-W`njz*u-`塪 C;T~%`!םĠJHqqX7.)1`v0ab͝ B&swVw_c[g;7շJ&U5VXkf0ǜy->>m7J)mRXFG}Q>Ӥ9 ;{OWNmYT59 bL .>>JTVJw4:Ncyڻo6^mQ)Un}-2돭~ϱ2cvN6{qン(BW'l2K;FY^UΗY$ta:$DT~l HIrXqH7: cVG#D-EcW7408*|Ӷ/dJuF+ H8o S)5QBW7QdBM %82&~60~<

t[_{@Yvlt녲yQ H+m\)dהڒ8vD0LXAG85CX@i>D@iDE'kz^77rȒ8{B ^=뀕azkWP8_dC4vKN&DR˨l-h]4~ur@5b:Z 0Y2}zE 5B^Iqt[fޕ/ºBeb}|ZĐiD)"%X|4Jh/ /7S,v-{7e}CwZ{M$3f9^3+cx;`e~ݠsPZ݈naSxL-ʆ6v̭m6<&xHi>ƽs!@jWB?{5"g'N\=f?Syb͘!%΅4k94h $&'yINeWeekڙn䩀jӛ틘ʠGk2Wr8= iV~ʆ'21/hmDAEӢܝW%B^yuh1Xk=bxoXݎ@B32#j`PUsV۱F_+b-9q_.':H+td#z$i&!(-Jҧtnɯ8:Mg,IhA5yӸ'H8#c|)ihRE)aLq"x%c|h8"]|>.:XNCYG62,Bѱݾ'mBF=F{A!?¢kA ^Rkd rxώ|k}@k VF6R s;R(}=Y:q`Thפ\Yox<^f6DcX6T~f bvx:輑e2;}=ZG:@;p~ v C"d]_U R*Ayi:-fOnm#[n@DAP$XXūp Tݾ0o6%e~ 5CJWψPd]Q!ST $O H,_0S-YU]/G $ 6gG"QSTP&~PbfQ V[ڃdAUE@CU,(-E/UfB'EGe;|nOiqOI)o#mA7bwXزPh.Vl¶Uɮ]T`"!ߌ=0*%@V0K+hZk#/t!rõwxq#;.ڝH'/WPK[ thgPBڡ#Rzfq7jeAp.1k7O_;QANG[ E+^eXyoUkͨ7hR: j#WQD3}\iJv+5nZ?6`AAj5bm=һ楱+3e_8+o},GWwQm I28"u{Wz뭨1G<ŪYdYCʿayQʖ| k3Iʵ<V01tvn] KZpT2 5ITݍbbq䓓)ؠTR|ʽM(70bx22pI܃x='x/l^󱰝2F;M7 ÷ɰH#«*؄?5$֥D N ]YqfH9yRcdBgFD[3No,p4]Y-iG>ʨW ωo<4Ϟ" U'"w ?@8)%oɼ6wR0XwaԀƩ! ͭhЉnʥBEYJٷ̎WaSΙqEzC9Ӏ<#[х?3Ժ=Jr/6uy5zJM&)t]3WGeG]jI2rE]aJ֍!5axW¦t{1!:U o͆_pl][ 뱉JZ{\EiCg#Hԡߢح8Kͤ,n2g6ʿ:9CŇcu54&P3bwak$6 qe<} h{}AD>./뎍c=$k%cYYDzj\zDm'}Y\ CVh0=>pS*Sgv*B`g4nj (Oх*bwT;XHީQt0#qgڈzYp5]5"Ȍ8ĊBbY27x_VoеFv DQq.@;]$Fa=Y'"[1$|+ݦ|A8Kl*yH(91[ GB+;od;kֿk#b)(Yյ\bgoAЁ"^zqJEȏa#,jHs!CYJWcjUbHb6>w ,L"`"짅x"̲I n? H[{ M qXfҤS4ڜ*TV b᦭U?ئ #nm3m1_\VG!) &biT&$b}\FzBIl|Șa01: -tTz'}e=k 97YC1 m~Y{[[Ջ ,{d4rӾe,|o]ۚ=8Pg eAv_U|\KMf's- h{١M})2{sn!ObΡL]5Bjpa:*RǗD`\vb\ah;kUz3Àʩn%"cghL؁$xj 1f֥HcML.9<[lއ#8az)k,ZΕ MϬD0U/kXğiw5[Gʤ]!Eml 5tka]is!\`2J}2c^} }#y[kOs݇ܤ/Qlhv37yyΤ|aU`s@ [ޑ1w.VNm Y*]{ En Ըۘk3˫KWVBX>qܾ+5t& $@ (-vvp/?`7%?\x*eԪ umѕ^NM+,SݢGxw>mu|ḍV"m5qV }`aMMțQQ-GvjWl~AOR&:eEypEVNl2xX>^,vħ:cR)DR2 7ܼ,fd R|72f+:YfeheCoB٤esk~̵uyܟ نV4eNGK=lnB@x: 0H`q{=s~|jpYVD=SdΧޛVGn-eBw7q*Nb(i J׻#͂j`3 RCM @X<88] 2qGgx r'x-L}F`ћ?&*2qD_[%hF,).H6}HUykQ۸DA C\VÙ}̢./ \՛%: td!g 7Lf1+Ϡf+U6[[ݲf7-c7E\, no9ʟ_o#Y°$( fOxng\%gT36~ <4!Z MܲI3K0NQې9 Zzzw|j 75g7]vՄ"ʅkX1[\XM_meʄU:V\ B$@`9vQ8vk`1(f8>ȀNUme6̊i[NNCOX+KH fW][Q8C5*r?`WGqqE;!N`wwꋭk?LͯX|x[1f:uR3qa|$$OBXE4S]dsmzdv2m9źuXUydQ0r{KRvH& <sɭ9y-Tl zkwΛݝpu`Ɇw.z0f3CI<1)Qwkj$Wg\М.0 w$[j@  91bT!x,jm~\˷ߕwcmæ" 8oT;>=L54#=s"ۉ>*L>\,t<Гé^  Ria^Q R֐dMY$c7 2M+`QͶ:06dӥ)u!7 "mz_6w:M6/9tsozÓ{/#OcU5x9@QJ0qGY]I ~lBcWHh\h&AZ%Z "C^@=U HU!qʻLQ^op4.Ge [pLCWZ=uܵS@(Y`lN8УLD0LĆ5/qp=_ ֫ϞXחZ2D+t )9'os^$nP31;p#K~D^nu.@)9US&Iå=QplkӉ72nQʊ1"++SmY|>Zbjڷ9*"FDC: Uvfh8]..`@)aq3*0?#..bj+#حc7?3!ReaP\ǸH1]Cv|T􌞿dp$M$t΁G3ƼmV|1]rgK, ׵6Î6_4g{|劽I+b-B ૰xv^߷|}HSD4,ާ}s6 a5ptJ}; ,D4rͻQGڛzxԔ*R q鹆yj)n_5Z9I3,$T1rԢ=?R*2fts-ފ!e6JUeلCH7% kOIf̔R|7s cՇG ͘x[EDTB]`gĘAfs=^揄 d:Ӈ)1z/l&ĉ0.ye!fJ9v6' $Qg#Ί DE۴|&/9)#ָ 0O:]LOi!m؉sFD*n`w8t Y=VY3\#B&ut=C|f^8ȸSj& UyCH;Czq.fgM=?!x)>Si|#> &67I]"@p;W;0ی9I0שvr|-^Jg'MRإh3;cǁ4ٚˏbz "(z D o2D`N#HYK̒o TP_X~tBP m/׵9ȑ vf]ݬF4OX<8Su ґC5I.j֏H&d!Z.Void̎p&{y )bhT )a--E$]l h/֣O2򶤓 ;uIk S_^&y8Ayʎu P5p,vu)LZktѴ-f͢nʒ7Y8PŹn~ؑ?5s[_bsJ0B V4&VqnnW`ܡ, A&*>$C ! 4:v=L^$UυI4e>#05oҤlZK!>i8H`<+b0-SI7v Sý_V]'LfHb|qIq~/x׌{O syIGY+pȜ1hgf9#);KQ<Q>6:d2|wx.R<hT߮Bڸ,HyxvKL*kB)Xc[\0P+כ~MoΡYom>{ޓGH7.^]cC,6j4=9s6e̾|ܾjjDq߻lcȕ ~,vJbX6^$ҋTԎʒFt=L EfO <śZ͓- m#;/ ZmbwS{^P3{Fw > ׮^RVBW io [o9aP(y#V~P9u!kzGKzк=Q 7M f7ʮH=/iz <XkC8x J:?]0p:H"U1ڿ5Eɼ f-DU|ړ/~Iwj3_ 핹uLT.߾j"h W`߳RBg\{^`T* %^^_NbYyN"]i䬨\{ iK ggv"{>o4@ +Ir&܀a+[4 d0L`?ɞ~c|CstϷB ,%: jo$ :i( 2d,>=>ߔ",RpItrZlͶ_kiŇ!ջ{^n#'x4*A|H ӿu-A96hQCHXSy@$8tkoO\KuQ[A;pS14/CFh8߹ǀcalf=t#^a4g䒢"u$s(N/LJ $`Q ZC(*~e"$$ g,؃sՀ(:j(v9G9oyӢ?THlᙍ[ gka2tUv)gÞDSbȐF!heG~M4fqߚ<_~.2sJ V8zV^ԟ6YV灴`[w㐭x-큫m #*ajT?0I I Z%xVbf<Ɓ pV]ob].":NBw"H҇aޭ ?dF9m@$43 wxrODrqs}V]٘P1h3TZ#v(TɘW·oFi@YvVf+ӃiiPDK*dzdl |v5|NVEN{UNK*DMXQoƼM'E.Kw_MM_kڃ@}|2iS6n;EC-=2 $MAQKWUߘHdd Go Rے^+`辂ݑxdg)w [i:VM\tw~nty;1Kڑ41HEԼmE$4Õ^Җ ZpCyFW.X2\`VΙ} z{JJB(~FIu} pYG/ ' @ӏ\j_oc+ġFP͟B,~9nd݇ ;dI]dD%qluPÒ,Q֛q8EaLYy!&2^#UۋoP`mS|t9.~<5TdIΗ淚yD (MN#W5'dw|{>S *2 vrbâJniX4e3zᓛOK4DcUeĈw8֗]6BJS7IN'鿇 ڦ@ &P"Q/>ARͨ.z5TStR/V7z=ecy(vZ{.wnaL,6ߎ/~#l-fte@kCߞ5|6-xԻW={nrR_zmWb.^QPyj'R -s9n?U.S;08j/}?~2Ms ͑Zu]TNpz = g j~eYS)u @308^K3ջ**ϭ(9ٖ;H۳k~,Q򃧋'6)R.c ,8PW!6vO2R\. A &8v_ոȂ#ej@Tw)=vgv:/hY o |^}SP"JFv՞q[MFyFE]VEFvWa?Eg"齔kXrD5bR/vRT?OHLAg,a['y>Zh]=ϋו$^u ADpbBR6o&7?܊\`2Z>6<8b:XXR7ii)kۆ5tA;#)L%`!2ɠHWo#10JT#37{ XgB,GLQ rC3 nnt̎ ~иtDsF{;#˥l:bcsp{fZmX-1z ~ӥ]Ւݼt´![eJbӳ;,Bò (czz IF?3!"4e}[\7Va$]Sgjq}^z"Ӕ Ҡ8d.Z˼V*Pu!AoC<}N\q{KŦ1Qp`;'7,.#J W|h"o@2x b=B_cʕ1~_Aӊ3r"xy%-@ENSM5AWO -7:K3Eź*+-c_kfZ3W;!IrPYc+^K6Mܚ |ZI0/n&PyW~f4zQU8# ՁʵA8k~y"AH@Թcjk2LFQ 02(]9E^4^Ję-:HPlF?Λ ˧^5n`>óT D'h2v*S@&BMFޙ|ӄË(v8>9"WOþ9Z]!/D_0VLg5ΦO>}k=E tp6MqED 3ou >Ri×ࡷmٯh1M5o#3^~8|Y /Rğ^T܆|G;i6LYpRHbM&$Σ6b+=! `6v N\4"0Ya[@3ꪒlg7) k|v tۺÇ/uܔgJ J2s{s&JC. VE_θ-hIByGliKFfJ*kHM*~*hQ{Ra;béml "STDZeOP/2 //Ɛh@j@'jL\1=H @~ֵ8Mw94x\^mZx&+PicK!2U,P:10L:?,<X|7:.q9!{SW+5\Wdup zj-3!]ݪRk܁/'˜poIw c:0ili<,A,["Ջe\ؐ4TXe37;X;4xpXHɸ0+mY.2rv/ }BSؒi>Vo0@:<\dj~6<ѯn3ծ('%♢@Aê%0[0쀐6O򒯔?[$"vrN>UªfQi3Y 1"!nx|/Z.󗦝V"Tw U=$pg&$4Jg]16Kuip &PfRO+R'g_/Tb= Ԩz7u07T!Xdg}vT*P!tF/sYFB!K;dh`@j^@9֚X5ѹF-N$jo=o`q\ojĥиWI`,OG7# DK"Nx9(^fm}Io}ifz:LO ͼCt %\VqJ^v#Sߩߝcl8pJP7twެܕ [+.feԠY}AZN A2CyTaO%Q ҾLuѐ少Gd]sd7ao݋#D C6~@.D>;3YX1Ǧ,s:ۣg,).DhKEpZ?#7!| \DF0mL1H=J^5=C/s֬"e@en{? y-[BD "5]:,v$! ^حDHKe1" @0fS[~drӅP/く= 6!fkF̝((ӄ1h , A=`6vΔyVWIRg"˧s&3 4 5ǘd 3P,ȿae Z <IU~av*-wFrr~ȡbd V\MAGg79<]ĩVMd@1}ppCȞ~H!۳Af_anUBb _=f~ j>(_!4J-o LzBpH~2OTi=kD ®xN]â4h {wFR_[_!g3dbkJVqf6`&u ^@h_Gt7 /KeB#LWcvtLz_flRXl^6Q8Ι.=~k" FZ9h^Y=7k" v{npF x7Oez"5~c9ʏ^nd+Uڷ"K߼~cV`'0/] g%%Jp~v Pǧp|]wND@ 'YϰUji ;ÕichzЀ+-xS/a^ l+%H%IL{u 8ܵ8]E ȺFM ˔ Z٦(31]TI٭huR{!h$jADXN#v\8^΅zpCʂ& [zMÅ䜯B'"@oMlkA}Dn8!-3spSIIMdؾݣ&gi,Bbr+ڶqp~P|zIαOMk+s[Y>oLɳfC Ta!aEs(hzƇ'$fg%e`̍g^]$l47fҌ $Rߊmxl VdZ-=='n38Aء0( ͦ/ _%ƀUo}e#V7o4P:~CRL.&I)쌣<4r嶀7qx*ْv'?pǂ2O޸Dj<ǔx",9KR&spr+"/~ {8BC󖼞d 6ug$}UF>ٹ4Ysf[[ r;R8_-t3t% t@.7H4 'o%B2>XSZT /&>?(1[M7c&0K,4T^w%(#"EA )j,ewn> 1dwJrݒi_T/.b`bp[R3DQ 3?M'4bNf^zCy"JSqxt6f٭s<$EQcxt97< @ϦqOPA:rKQz D!}rtp'c3bTO9i{ wVOUnJe3:kP*Y& 싐?е!RB-#LaGK%ɇUf)"BH9fa?R#_Tzt^b}.,;Dl,!~@kVPbFZ u.ΫFg(3u0zJIT8TĐ*AEjt,qjoч&$'VH4b:uD/ ^CDC$e%Up^Y۵u/jG5M\^UK:H5Tj /y;]"*|P)3gHdP|*{0m Cs0umMhzǧ!LcO1$"*)&_Z/Gr{LӁVqX{tʹ1TȤO e]d|tz.RU/p#0uwJvځ\58^aF upK@;2j7(QbW ?GN7J]cM8W!LZU<>Ʀ_#_[ ٓn{0Wr~E$eFhiT@L.3\Si\bJ^BQ(_9MOYl=_wj+ο.wTBqn=s>P5-q&BAӢhX[8ޠ-]Roz_AO(gHH$ݦHJ졌`sg8ޔvGĩ슺D} ‘lՒ}Sa6*¶&BG֏$.(Txm)S#Ff!?)I/'Npn2 o] ~$[ㄉF+":褢bV|{uo/(ncj3?n#!;Ώg^Q`9 #|囿^뛗o^KVt 㐞Vzt乬w+ڄ->* 5|?P鼹N9:5Rvv'ב(SQ"W'C>MwӺ#w%r]5,#q|[ N2_9|ἡ HX\z՛^gOw00A$ _m %.'T_. ~|Dm!Up%A($ 1.CJCEg~xM8> p3EjK)X?@LTJȓ)՛6bQ^(p+*&-.E@O am-˂1}MB>jG4i0qa9@+o `l΋BAlvNp.FJaVnc/M@5چ^W-'| ݶEKӮ^`lRLi 5٩`t0s0CaS~S8-)n$r[,Aap2ec/t}2x0{,$ Of ǶNG2"|qԯwi]'bQ xp57t:j4;*Ih(D9"PJte!@j4EihV;7Ax⇿Bu  m!޺0}1AKG%~廛nY"DPZ lvb[4!-lme+xm/:t>_TSZSIdYYc2*^R] 4݉(b"%pɂ2țRq[0h ͻהrC&mŒ #OdP^wt kay^$ ٺ4)nOݯ5Ak?5Zu|Ot4n Fn=_k-R糯$Ymin5pxH ړ0 %Gqv,as ^,|飇1,*M1Y:$&i?E'PDDQLz'Jb9;-@?>:Zg>Q8 l/E]'Ni 5hsG/??8ǿyXb6?q<ts3 v20'y،SW4?._\k'7qfOQKTI}2.BvO/O̩@O ۱q6vo 0i翿4,| Pꦱ}uϪ8JE+ b2K Fh0\T|5*2qc/ c}ھop_c.vI9]K4#UGS [Ebdt;!<%Iq/#bduJEd]'*~=6Qy+3ՠ/ٜ;c)mWnV*#}pɍ~.nx('+U.J7;W&يv(j \6aN|V?6y UͅoFDJhMg䵱E˵ 9كMH'B=4؟ד2hfi1UH|"Z͡$[wż9[z>1Y:Xٯs,IRYtMno=WO\TO?_]\(af 3+C)YMWjCߪQ0LX\SԬ~ow@aw~@L箯h;]?:`&DPnebJy;g 5YB]µ1󋋏wNE/w0.xZ/b:O c3ɶF%v& j?՟43hmȈ-u7\q+'3{A=/NxU.hNrfNmWחoAP-Kg#v揠y!ۄ/v