dpdk-thunderx-19.11.4-150300.16.1<>,[lc$2p9|kCʂbE t* Һ2Fq~(4D7G.%k >B&B9+#`ZHK>jj!6NO sgޗӔ*L_ЧX3E#iLFQgõp ؚCj/  i7dF tO7 \/ [mX@@,6NzAR|S\ktr%a ZGY['TU+oijm\e7K4+Z+]mۑ>?@?0d $ \N du    " 8PnC CXC(8F9F:oFGHIXY\(]@^bc5defluvwxy0l,Cdpdk-thunderx19.11.4150300.16.1Set of libraries and drivers for fast packet processingThe Data Plane Development Kit is a set of libraries and drivers for fast packet processing in the user space.c$2ibs-centriq-5USUSE Linux Enterprise 15SUSE LLC BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/System/Librarieshttp://dpdk.orglinuxaarch64  8$ c$/pc$/pc$/qc$/pc$/pc$/p1791af237303f93e3788fd5f9241b1b0cbbeb9bc93eabdf84ec05168d4faf67679b2cac3431c56c6b91cc4be0a5bd7b1f19fedd650e60a86b9e3ff7cdd66439cdf34f3773a0fb13474c9953fa84929abf5ccab9339f6235ee75de4458b2e924b2624f96b5edb62a22f07e3ea02898498d4ab369f6ac02d7fe130c8f278c46c44fb09c3f8b0ba5c9866a2c48cd6c496a18f31f0b76e6c95176e1ef9e923883defdpdk-procinforootrootrootrootrootrootrootrootrootrootrootrootdpdk-thunderx-19.11.4-150300.16.1.src.rpmdpdk-anydpdk-thunderxdpdk-thunderx(aarch-64)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    libc.so.6()(64bit)libc.so.6(GLIBC_2.17)(64bit)libgcc_s.so.1()(64bit)libgcc_s.so.1(GCC_3.0)(64bit)libgcc_s.so.1(GCC_4.2.0)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.17)(64bit)librte_bbdev.so.0.200()(64bit)librte_bbdev.so.0.200(EXPERIMENTAL)(64bit)librte_bitratestats.so.20.0()(64bit)librte_bitratestats.so.20.0(DPDK_20.0)(64bit)librte_bpf.so.0.200()(64bit)librte_bpf.so.0.200(EXPERIMENTAL)(64bit)librte_bus_vdev.so.20.0()(64bit)librte_bus_vdev.so.20.0(DPDK_20.0)(64bit)librte_cmdline.so.20.0()(64bit)librte_cmdline.so.20.0(DPDK_20.0)(64bit)librte_cryptodev.so.20.0()(64bit)librte_cryptodev.so.20.0(DPDK_20.0)(64bit)librte_eal.so.20.0()(64bit)librte_eal.so.20.0(DPDK_20.0)(64bit)librte_eal.so.20.0(EXPERIMENTAL)(64bit)librte_ethdev.so.20.0()(64bit)librte_ethdev.so.20.0(DPDK_20.0)(64bit)librte_ethdev.so.20.0(EXPERIMENTAL)(64bit)librte_gro.so.20.0()(64bit)librte_gro.so.20.0(DPDK_20.0)(64bit)librte_gso.so.20.0()(64bit)librte_gso.so.20.0(DPDK_20.0)(64bit)librte_ipsec.so.0.200()(64bit)librte_ipsec.so.0.200(EXPERIMENTAL)(64bit)librte_kvargs.so.20.0()(64bit)librte_kvargs.so.20.0(DPDK_20.0)(64bit)librte_latencystats.so.20.0()(64bit)librte_latencystats.so.20.0(DPDK_20.0)(64bit)librte_mbuf.so.20.0()(64bit)librte_mbuf.so.20.0(DPDK_20.0)(64bit)librte_mbuf.so.20.0(EXPERIMENTAL)(64bit)librte_mempool.so.20.0()(64bit)librte_mempool.so.20.0(DPDK_20.0)(64bit)librte_metrics.so.20.0()(64bit)librte_metrics.so.20.0(DPDK_20.0)(64bit)librte_net.so.20.0()(64bit)librte_net.so.20.0(DPDK_20.0)(64bit)librte_net.so.20.0(EXPERIMENTAL)(64bit)librte_pdump.so.20.0()(64bit)librte_pdump.so.20.0(DPDK_20.0)(64bit)librte_pmd_bbdev_fpga_lte_fec.so.20.0()(64bit)librte_pmd_bbdev_fpga_lte_fec.so.20.0(EXPERIMENTAL)(64bit)librte_pmd_bnxt.so.20.0()(64bit)librte_pmd_bnxt.so.20.0(DPDK_20.0)(64bit)librte_pmd_bond.so.20.0()(64bit)librte_pmd_bond.so.20.0(DPDK_20.0)(64bit)librte_pmd_i40e.so.20.0()(64bit)librte_pmd_i40e.so.20.0(DPDK_20.0)(64bit)librte_pmd_ixgbe.so.20.0()(64bit)librte_pmd_ixgbe.so.20.0(DPDK_20.0)(64bit)librte_pmd_softnic.so.20.0()(64bit)librte_pmd_softnic.so.20.0(DPDK_20.0)(64bit)librte_ring.so.20.0()(64bit)librte_ring.so.20.0(DPDK_20.0)(64bit)librte_security.so.20.0()(64bit)librte_security.so.20.0(DPDK_20.0)(64bit)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-1dpdk-any4.14.3c@bk@bj_s!_i@_2@^@^l@^\@]@]@]\@\Y@\o@\I[Ѱ@[[['ZZ@ZZZH@Z\ZTZ@X6@W= SLES15 It needs rdma-core >= v16.- Removed 0002-kni-fix-build-on-SLE12-SP3.patch since no longer referenced in .spec files - Added 0002-dpdk-eal-ppc-rte_smp_mb.patch to fix an issue on ppc64le platforms with v18.02 - Updated to version 18.02; some of the changes include: * Added function to allow releasing internal EAL resources on exit * Added igb, ixgbe and i40e ethernet driver to support RSS with flow API * Updated i40e driver to support PPPoE/PPPoL2TP * Added MAC loopback support for i40e * Added support of run time determination of number of queues per i40e VF * Updated mlx5 driver * Updated mlx4 driver * Added NVGRE and UDP tunnels support in Solarflare network PMD * Added AVF (Adaptive Virtual Function) net PMD * Added feature supports for live migration from vhost-net to vhost-user * Updated the AESNI-MB PMD * Updated the DPAA_SEC crypto driver to support rte_security * Added Wireless Base Band Device (bbdev) abstraction * Added New eventdev Ordered Packet Distribution Library (OPDL) PMD * Added new pipeline use case for dpdk-test-eventdev application * Updated Eventdev sample application to support event devices based on capability * Added Rawdev, a generic device support library * Added new multi-process communication channel * Added GRO support for VxLAN-tunneled packets * Increased default Rx and Tx ring size in sample applications * Added new DPDK build system using the tools “meson” and “ninja” [EXPERIMENTAL]- The vm_power example does not work for ppc64le since it uses the IXGBE PMD driver which is not available for that platform(bsc#1082154): * Disable CONFIG_RTE_LIBRTE_POWER for the sample application; * Disable CONFIG_RTE_LIBRTE_IXGBE_PMD for the actual PMD driver;- Upgraded to latest stable release 17.11.1 (LTS): some of the fixes include: * location changes of the GPL and LGPL licenses; * net/mlx4: - fix drop flow resources leak * net/bnxt: - double increment of idx during Tx ring alloc - group info usage - check for ether type - size of Tx ring in HW - number of pools for RSS - return code in MAC address set - link speed setting with autoneg off * net/nfp: - MTU settings - jumbo settings - CRC strip check behaviour * net/sfc: - multicast address list copy memory leak - DMA memory leak after kvarg processing failure - fix label name to be consistent * net/i40e: - VLAN offload setting issue - FDIR input set conflict - FDIR rule confiliction issue - setting MAC address of VF - flow director Rx resource defect - warn when writing global registers - multiple driver support - interrupt conflict with multi-driver - Rx interrupt - check multi-driver option parsing - flow director filter * net/qede: - enable LRO over tunnels - reject config with no Rx queue - check tunnel L3 header - tunnel header size in Tx BD configuration - VF LRO tunnel configuration * net/mlx5: - Tx checksum offloads - un-supported RSS hash fields use - device operation type - pedantic compilation - fix pedantic compilation - flow item validation - flow RSS configuration - UAR remapping on non configured queues - secondary process verification - port stop by verify flows are still present - flow priority on queue action- Enable(disabled by default) MLX4 and MLX5 pmd(fate#322609)- Upgraded to latest major 17.11(fate#322609); some of the fixes include: * Extended port_id range from uint8_t to uint16_t * Added a new driver for Marvell Armada 7k/8k devices * Updated mlx4 driver * Updated mlx5 driver * Added SoftNIC PMD * Added support for NXP DPAA Devices * Updated support for Cavium OCTEONTX Device * Added PF support to the Netronome NFP PMD * Updated bnxt PMD * Added bus agnostic functions to cryptodev for PMD initialization * Updated QAT crypto PMD * Updated the AESNI MB PMD * Updated the OpenSSL PMD * Added NXP DPAA SEC crypto PMD * Add new benchmarking mode to dpdk-test-crypto-perf application * Added IOMMU support to libvhost-user * Added the Generic Segmentation Offload Library * Added the Flow Classification Library - Removed 0002-kni-fix-build-on-SLE12-SP3.patch since patch merged upstream and available in 17.11- Added missing supported broadcom chipset family Broadcom NetXtreme II BCM57810- Upgraded to latest stable 17.08.1; some of the fixes include: * net/qede: disable per-VF Tx switching feature * revert "net/virtio: flush Rx queues on start" * various fixes for mlx5 PMD drivers * various fixes for bnxt PMD drivers * various fixes for i40e PMD drivers * various fixes for crypto PMD drivers * testpmd: fix for non-consecutive ports * ethdev: fix ABI version- Add missing libelf-devel dependency- Updated to 17.08(bsc#1050250, bsc#1046598, fate#322913, fate#322608) Some of the new features are listed below: * Increase minimum x86 ISA version to SSE4.2 * Added Fail-Safe PMD * Added support for generic flow API (rte_flow) on igb NICs * Added support for generic flow API (rte_flow) on enic * Added support for Chelsio T6 family of adapters * Added latency and performance improvements for cxgbe * Updated mlx5 driver * Added NXP DPAA2 Eventdev PMD * Added dpdk-test-eventdev test application * from 17.05: * Added mbuf raw free API * Added free Tx mbuf on demand API * Added VFIO hotplug support * Added PowerPC support for i40e and its vector PMD * Added VF max bandwidth setting in i40e * Added LiquidIO network PMD * Added support for NXP DPAA2 Network PMD * Added support for NXP DPAA2 - FSLMC bus * Added support for the Wind River Systems AVP PMD * Added vmxnet3 version 3 support * Added MTU feature support to Virtio and Vhost * Added event driven programming model library (rte_eventdev) * Added Software Eventdev PMD * Added Cavium OCTEONTX Eventdev PMD * Added NXP DPAA2 SEC crypto PMD * from 17.02: * Added generic EAL API for I/O device memory read/write operations * Added VF Daemon (VFD) for i40e. - EXPERIMENTAL * Added generic flow API (rte_flow) * Added APIs for MACsec offload support to the ixgbe PMD * Added Solarflare libefx-based network PMD. * Added support for Mellanox ConnectX-5 adapters (mlx5) * Added ARMv8 crypto PMD * Added crypto performance test application * more details can be found in http://dpdk.org/doc/guides/rel_notes/release_17_08.html http://dpdk.org/doc/guides/rel_notes/release_17_05.html http://dpdk.org/doc/guides/rel_notes/release_17_02.html [-0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch - 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch - 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch - 0005-kni-fix-build-with-gcc-7.1.patch - 0006-kni-fix-ethtool-build-with-kernel-4.11.patch - 0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch] - Use updated patch to enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+ 0002-kni-fix-build-on-SLE12-SP3.patch]- Enabled CONFIG_RTE_MAJOR_ABI: libs SONAME equal the DPDK release version- Split libs into a subpackage to provide multiple installable versions on same sytem- Do not use obsolete pci_enable_msix for() kernel > 4.8 [+0006-kni-fix-ethtool-build-with-kernel-4.11.patch, +0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch]- Updated to 16.11.2 which provide bug fixes as below(fate#321541): * mbuf: fix missing includes in exported header * eal: fix debug macro redefinition * net/nfp: fix packet/data length conversion * net/i40e: fix setup when bulk is disabled * pci: fix device registration on FreeBSD * net/i40e: ensure vector mode is not used with QinQ * nic_uio: fix device binding at boot * net/bnx2x: fix transmit queue free threshold * net/vmxnet3: fix queue size changes * kni: fix build with kernel 4.11 * kni: fix possible memory leak * kni: fix crash caused by freeing mempool * net/i40e: fix allocation check * net/virtio: fix crash when closing twice * net/ixgbevf: set xstats id values * net/i40e: fix hash input set on X722 * eal/linux: fix build with glibc 2.25 * net/i40e: fix incorrect packet index reference * net/thunderx: fix 32-bit build * net/thunderx: fix build on FreeBSD * net/thunderx: fix deadlock in Rx path * net/ixgbe: fix setting MTU on stopped device * vfio: fix secondary process start * net/virtio-user: fix address on 32-bit system * net/virtio: fix MSI-X for modern devices * net/virtio: fix link status always down * net/ixgbe: fix multi-queue mode check in SRIOV mode * net/i40e/base: fix potential out of bound array access * vhost: fix false sharing * net/thunderx: fix stats access out of bounds * net/virtio: disable LSC interrupt if MSIX not enabled * net/i40e: fix mbuf alloc failed counter * net: fix stripped VLAN flag for offload emulation * vfio: fix disabling INTx * net/igb: fix VF MAC address setting * net/igb: fix VF MAC address setting * net/ixgbe: fix VF Rx mode for allmulticast disabled * net/bonding: fix updating slave link status * net/virtio-user: fix overflow * net/i40e: fix TC bitmap of VEB * net/ixgbe/base: fix build error * net/ixgbe: fix Rx queue blocking issue * net/ixgbe: fix all queues drop setting of DCB * net/ixgbe: fix TC bandwidth setting more details can be found in http://dpdk.org/ml/archives/stable/2017-May/001809.html [- 0005-kni-fix-build-with-kernel-4.11.patch] - use default gcc which is now gcc7 (bsc#1042372) [+0005-kni-fix-build-with-gcc-7.1.patch]- Add upstream patch to fix building against linux kernel 4.11 [+0005-kni-fix-build-with-kernel-4.11.patch]- sync mailbox definitions with Linux PF driver(bsc#1035993) [+0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch]- Enable HAVE_TRANS_START_HELPER for SLE12SP3(bsc#1031705). [+0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch]- Fix dpdk KMP build fails(bsc#1031750) - enable igb_uio kernel module(fate#322394) - update kernel version for SLES12SP3 4.4.59 for bsc#1031705 [*0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Enable HAVE_VF_VLAN_PROTO for SLE12SP3(bsc#1031705). [+0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch]- Disable dpdk-kmp package for ix86.- Upgrade to LTS release of 16.11 which contains fixes below(fate#321541): * app/test: fix symmetric session free in crypto perf tests * app/testpmd: fix check for invalid ports * app/testpmd: fix static build link ordering * crypto/aesni_gcm: fix IV size in capabilities * crypto/aesni_gcm: fix J0 padding bytes * crypto/aesni_mb: fix incorrect crypto session * crypto/openssl: fix extra bytes written at end of data * crypto/openssl: fix indentation in guide * crypto/qat: fix IV size in capabilities * crypto/qat: fix to avoid buffer overwrite in OOP case * cryptodev: fix crash on null dereference * cryptodev: fix loop in device query * devargs: reset driver name pointer on parsing failure * drivers/crypto: fix different auth/cipher keys * ethdev: check maximum number of queues for statistics * ethdev: fix extended statistics name index * ethdev: fix port data mismatched in multiple process model * ethdev: fix port lookup if none * ethdev: remove invalid function from version map * examples/ethtool: fix driver information * examples/ethtool: fix querying non-PCI devices * examples/ip_pipeline: fix coremask limitation * examples/ip_pipeline: fix parsing of pass-through pipeline * examples/l2fwd-crypto: fix overflow * examples/vhost: fix calculation of mbuf count * examples/vhost: fix lcore initialization * mempool: fix API documentation * mempool: fix stack handler dequeue * net/af_packet: fix fd use after free * net/bnx2x: fix Rx mode configuration * net/cxgbe/base: initialize variable before reading EEPROM * net/cxgbe: fix parenthesis on bitwise operation * net/ena: fix setting host attributes * net/enic: fix hardcoding of some flow director masks * net/enic: fix memory leak with oversized Tx packets * net/enic: remove unnecessary function parameter attributes * net/i40e: enable auto link update for 25G * net/i40e: fix Rx checksum flag * net/i40e: fix TC bandwidth definition * net/i40e: fix VF reset flow * net/i40e: fix checksum flag in x86 vector Rx * net/i40e: fix crash in close * net/i40e: fix deletion of all macvlan filters * net/i40e: fix ethertype filter on X722 * net/i40e: fix link update delay * net/i40e: fix logging for Tx free threshold check * net/i40e: fix segment number in reassemble process * net/i40e: fix wrong return value when handling PF message * net/i40e: fix xstats value mapping * net/i40evf: fix casting between structs * net/i40evf: fix reporting of imissed packets * net/ixgbe: fix blocked interrupts * net/ixgbe: fix received packets number for ARM * net/ixgbe: fix received packets number for ARM NEON * net/ixgbevf: fix max packet length * net/mlx5: fix RSS hash result for flows * net/mlx5: fix Rx packet validation and type * net/mlx5: fix Tx doorbell * net/mlx5: fix endianness in Tx completion queue * net/mlx5: fix inconsistent link status * net/mlx5: fix leak when starvation occurs * net/mlx5: fix link status query * net/mlx5: fix memory leak when parsing device params * net/mlx5: fix missing inline attributes * net/mlx5: fix updating total length of multi-packet send * net/mlx: fix IPv4 and IPv6 packet type * net/nfp: fix VLAN offload flags check * net/nfp: fix typo in Tx offload capabilities * net/pcap: fix timestamps in output pcap file * net/qede/base: fix FreeBSD build * net/qede: add vendor/device id info * net/qede: fix PF fastpath status block index * net/qede: fix filtering code * net/qede: fix function declaration * net/qede: fix per queue statisitics * net/qede: fix resource leak * net/vhost: fix socket file deleted on stop * net/vhost: fix unix socket not removed as closing * net/virtio-user: fix not properly reset device * net/virtio-user: fix wrongly get/set features * net/virtio: fix build without virtio-user * net/virtio: fix crash when number of virtio devices > 1 * net/virtio: fix multiple process support * net/virtio: fix performance regression due to TSO * net/virtio: fix rewriting LSC flag * net/virtio: fix wrong Rx/Tx method for secondary process * net/virtio: optimize header reset on any layout * net/virtio: store IO port info locally * net/virtio: store PCI operators pointer locally * net/vmxnet3: fix Rx deadlock * pci: fix check of mknod * pmdinfogen: fix endianness with cross-compilation * pmdinfogen: fix null dereference * sched: fix crash when freeing port * usertools: fix active interface detection when binding * vdev: fix detaching with alias * vfio: fix file descriptor leak in multi-process * vhost: allow many vhost-user ports * vhost: do not GSO when no header is present * vhost: fix dead loop in enqueue path * vhost: fix guest/host physical address mapping * vhost: fix long stall of negotiation * vhost: fix memory leak- Fix broken dpdk-pmd/* soft links(bsc#1026804).- Do not disable cryptodev as EXPREMENTAL tag has been removed. - Remove CONFIG_RTE_LIBRTE_MBUF_OFFLOAD as cryptodev is not depending on it anymore and its removed from the upstream.- Enable rte_kni kernel module for dpdk(fate#322394). [+preamble] - Build dpdk-thunderx only for aarch64- Update to version 16.11(fate#321541). Some of the new features are listed below: * Added software parser for packet type. * Improved offloads support in mbuf. * Added vhost-user dequeue zero copy support. * Added vhost-user indirect descriptors support. * Added vhost PMD xstats. * Added virtio NEON support for ARM. * Updated the ixgbe base driver. * Added APIs for VF management to the ixgbe PMD. * Updated the enic driver. * Added openssl PMD. * Added support for new gcc -march option. Detailed changes can be obtained from http://dpdk.org/doc/guides/rel_notes/release_16_11.html - Resolved fixes in the updated versions are : * enic: Fixed several flow director issues. * enic: Fixed inadvertent setting of L4 checksum ptype on ICMP packets. * enic: Fixed high driver overhead when servicing Rx queues beyond the first.- Added gcc-6 as default compiler for CRC/mtune & other optimizations. - Fix possible parallel installation of dpdk subpackages.- Add pre_checkin.sh to generate the dpdk-thunderx.spec file- Fixed paths using %{name} to have the dpdk.spec aligned with dpdk-thunderx.spec- Added back in all the architectures to keep .spec files aligned * Driving thunderx platform architectural dependency via the ExclusiveArch tag- Added support to build code for Thunderx platform(fate#321960). - Introduced new dpdk-thunderx.spec file: * Removed architectures not supporting Thunderx platform (e.g. x86) * Added dependency on gcc v5.0 for armv8a-crc- Update to version 16.07.2. Some of the fixes are listed below: * ethdev: prevent duplicate event callback * hash: fix bucket size usage * hash: fix unlimited cuckoo path * lpm: fix freeing memory * lpm: fix freeing unused sub-table on rule delete * mempool: fix leak if populate fails * mempool: fix search of maximum contiguous pages * pci: fix probing error if no driver found * net/bnx2x: fix maximum PF queues * net/bnxt: fix bit shift size * net/bnxt: fix crash when closing * net/enic: fix Rx queue index when not using Rx scatter * net/enic: fix crash on MTU update or Rx queue reconfigure * net/enic: fix crash with removed flow director filters * net/enic: fix max packet length check * net/enic: fix multi-queue Rx performance * net/enic: revert truncated packets counter fix * net/fm10k: fix VF Tx queue initialization * net/i40e: fix Rx hang when disable LLDP * net/ixgbe: fix VF registers * net/thunderx: fix Tx checksum handling * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#id2]- Update to version 16.07.1. Some of the fixes are listed below: * contigmem: zero all pages during mmap * crypto/null: fix key size increment value * hash: fix false zero signature key hit lookup * mem: fix crash on hugepage mapping error * mbuf: fix error handling on pool creation * net/e1000: fix returned number of available Rx descriptors * net/enic: fix freeing memory for descriptor ring * net/i40e: fix dropping packets with ethertype 0x88A8 * net/i40e: fix mbuf leak during Rx queue release * net/i40e: fix null pointer dereferences when using VMDq+RSS * net/ixgbe/base: fix possible corruption of shadow RAM * net/ixgbe: fix VF reset to apply to correct VF * net/virtio_user: fix error management during init * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides-16.07/rel_notes/release_16_07.html#fixes-in-16-07-01-stable-release]- Drop code for generating our own linker script. * Commit 948fd64befc3 (" mk: replace the combined library with a linker script") added upstream support for building and installing a linker script so we drop our code from the spec file which generated a much larger and possibly broken linker script resulting to linking issues (boo#1002534)- Update to version 16.07. Some of the new features are listed below: * Removed the mempool cache memory if caching is not being used. * Added mempool external cache for non-EAL thread. * Changed the memory allocation scheme in the mempool library. * Added a new driver for Broadcom NetXtreme-C devices. * Added a new driver for ThunderX nicvf devices. * Added mailbox interrupt support for ixgbe and igb VFs. * Updated the ixgbe base driver. * Updated the i40e base driver. * Updated the enic driver. * Updated the mlx5 driver. * Added support for virtio on IBM POWER8. * Added support for Virtio in containers. * Added vhost-user client mode. * Added NSH packet recognition in i40e. * Added AES-CTR support to AESNI MB PMD. * Added AES counter mode support for Intel QuickAssist devices. * Added KASUMI SW PMD. * Added multi-writer support for RTE Hash with Intel TSX. * Improved IP Pipeline Application. * Added keepalive enhancements. * Added packet capture framework. * Added floating VEB support for i40e PF driver. * Added support for live migration of a VM with SRIOV VF. * [The list of changes is rather long so please consult the following resources for the complete list of new features, bugfixes and other changes in this release: - http://dpdk.org/doc/guides/rel_notes/release_16_07.html - http://dpdk.org/browse/dpdk/tree/doc/guides/rel_notes/release_16_07.rst - Or the doc/guides/rel_notes/release_16_07.rst file in the released tarball.] - Removed patches that are already avilable in dpdk-16.07 [ -0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch - 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch - 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch - 0005-d293dac-vhost-claim-support-of-guest-announce.patch - 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch - 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch - 0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch - 0009-bonding-copy-entire-config-structure-in-mode-4.patch - 0010-bonding-fix-active-slaves-with-no-primary.patch - 0011-bonding-do-not-ignore-multicast-in-mode-4.patch - 0012-bonding-do-not-activate-slave-twice.patch - 0013-bonding-fix-crash-when-no-slave-device.patch - 0014-bonding-fix-detach-of-bonded-device.patch - 0015-bonding-fix-detach-of-slave-devices.patch - 0016-eal-linux-support-built-in-kernel-modules.patch - 0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch - 0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch - 0019-i40e-base-fix-driver-load-failure.patch - 0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch - 0021-i40e-fix-inverted-check-for-no-refcount.patch - 0022-i40e-fix-overflow.patch - 0023-i40e-fix-VLAN-filtering.patch - 0024-mempool-fix-leak-when-creation-fails.patch - 0025-pcap-fix-captured-frame-length.patch - 0026-port-fix-crash-for-ethdev-writer-nodrop.patch - 0027-port-fix-crash-for-ring-writer-nodrop.patch - 0028-tools-fix-unbinding-failure-handling.patch - 0029-tools-support-Python-3-in-bind-script.patch - 0030-tools-support-binding-to-built-in-kernel-modules.patch - 0031-vhost-fix-leak-of-fds-and-mmaps.patch - 0032-virtio-fix-crash-in-statistics-functions.patch - 0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch - 0034-virtio-fix-restart.patch - 0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch - 0036-examples-fix-build-dependencies.patch - 0037-examples-ethtool-fix-build.patch - 0099-mk-fix-gcc-5-version-on-suse.patch - 0100-kni-fix-build-with-gcc-6.patch - 0101-ixgbe-fix-uninitialized-warning.patch - 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch - 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch - 0104-igb-fix-constant-sign-in-left-shift-operator.patch - 0105-e1000-fix-missing-link-interrupt-check-brackets.patch - 0106-app-test-fix-missing-brackets.patch - 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch ] - Created soft link for dpdk_proc_info and dpdk_nic_bind(from dpdk-procinfo, dpdk-devbind) to keep compatibility. - Added a new binary dpdk-pdump dpdk-procinfo- Add _constraints file to force build dpdk with sse3 enabled x86 machine(bsc#993462). - Enable compilation for ppc64le with the help of Rüdiger(ro@suse.de). - Enable example package for aarch64 using Rüdiger(ro@suse.de) changes. - Do not enable PMD_RING on ppc64le (missing rte_eth_from_rings). - Disable examples that need LPM which is disabled on non-x86. [+0036-examples-fix-build-dependencies.patch, +0037-examples-ethtool-fix-build.patch, +_constraints]- Added support for aarch64 compilation. [+0035-PAGE_SIZE-constant-is-not-defined-on-ARM-since-multi.patch] - Disabled aarch64 dpdk-examples package for the time being as it contains lots of Intel specific code. - Added proper "Group" field for the subpackages .- Add upstream patches to fix building with gcc >= 6 * 0100-kni-fix-build-with-gcc-6.patch * 0101-ixgbe-fix-uninitialized-warning.patch * 0102-ixgbe-fix-constant-sign-in-left-shift-operator.patch * 0103-e1000-base-Add-missing-braces-to-the-if-statements.patch * 0104-igb-fix-constant-sign-in-left-shift-operator.patch * 0105-e1000-fix-missing-link-interrupt-check-brackets.patch * 0106-app-test-fix-missing-brackets.patch * 0107-examples-ip_pipeline-use-unsigned-constants-for-left.patch- Removed unwanted files(bsc#984437).- Added missing GPL-2.0 and LGPL-2.1 licenses.- Update tarball URL.- Applied all the fixes recommended by upstream for v2.2 stable release(bsc#981996). [+0008-app-testpmd-handle-SIGINT-and-SIGTERM.patch, +0009-bonding-copy-entire-config-structure-in-mode-4.patch, +0010-bonding-fix-active-slaves-with-no-primary.patch, +0011-bonding-do-not-ignore-multicast-in-mode-4.patch, +0012-bonding-do-not-activate-slave-twice.patch, +0013-bonding-fix-crash-when-no-slave-device.patch, +0014-bonding-fix-detach-of-bonded-device.patch, +0015-bonding-fix-detach-of-slave-devices.patch, +0016-eal-linux-support-built-in-kernel-modules.patch, +0017-examples-l3fwd-handle-SIGINT-and-SIGTERM.patch, +0018-fm10k-fix-VLAN-flag-in-scattered-Rx.patch, +0019-i40e-base-fix-driver-load-failure.patch, +0020-i40e-base-fix-missing-check-for-stopped-admin-queue.patch, +0021-i40e-fix-inverted-check-for-no-refcount.patch, +0022-i40e-fix-overflow.patch, +0023-i40e-fix-VLAN-filtering.patch, +0024-mempool-fix-leak-when-creation-fails.patch, +0025-pcap-fix-captured-frame-length.patch, +0026-port-fix-crash-for-ethdev-writer-nodrop.patch, +0027-port-fix-crash-for-ring-writer-nodrop.patch, +0028-tools-fix-unbinding-failure-handling.patch, +0029-tools-support-Python-3-in-bind-script.patch, +0030-tools-support-binding-to-built-in-kernel-modules.patch, +0031-vhost-fix-leak-of-fds-and-mmaps.patch, +0032-virtio-fix-crash-in-statistics-functions.patch, +0033-virtio-fix-descriptors-pointing-to-the-same-buffer.patch, +0034-virtio-fix-restart.patch]- Use fdupes to manage duplicate files- Create DPDK packages for 32 bit x86(bsc#977639).- Add upstream patch for the ixgbe driver * 0007-ixgbe-fix-VLAN-filter-missing-brackets.patch: Fix VLAN filtering logic by adding the missing brackets in the 'if' statement.- DPDK is most common vhost-user backend, Adding upstream patches to help qemu vm live migration with vhost-user (fate#320713). [+ 0004-54f9e32-vhost-handle-dirty-pages-logging-request.patch + 0005-d293dac-vhost-claim-support-of-guest-announce.patch + 0006-d639996-vhost-enable-log_shmfd-protocol-feature.patch]- Move the combined library back to the devel package (bsc#975123) Ever since we dropped the CONFIG_RTE_BUILD_COMBINE_LIBS=y option, the libdpdk.so is no longer a shared object but rather a linker script generated by the spec file. This means that it is only used during linking and the linker will add the individual DPDK libraries to the DT_NEEDED tag on the dependent binaries.- Fix shared linking against libdpdk.so (bsc#975123) * Restore the 0003-mk-fix-external-shared-library-dependencies-of-libraries.patch patch which sets the correct dependencies for the shared libraries. * Drop CONFIG_RTE_BUILD_COMBINE_LIBS since a custom linker script is used to create and install a more lightweight version of libdpdk.so. * Include the combined libdpdk.so library to the regular package since it is also necessary during runtime.- Removed unwnated patch and reformated patch file names(bsc#974903). [- dpdk-2.2-dtneeded.patch, - dpdk-2.2-examples.patch, - enic-pun-fix.patch, - dpdk-2.2-warningflags.patch, + 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch + 0002-examples-ip_pipeline-fix-implicit-declaration-of-fun.patch] - Added CONFIG_RTE_BUILD_COMBINE_LIBS flags to club all all *.so into one library- Intial version 2.2.0(fate#319169)19.11.419.11.4-150300.16.119.11.4-150300.16.1dpdk-pdumpdpdk-procinfodpdk_proc_infotestbbdevtestpmdtestsad/usr/bin/-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:25950/SUSE_SLE-15-SP3_Update/06e7d1a1371fa731af18a74b9731d929-dpdk.SUSE_SLE-15-SP3_Update:thunderxdrpmxz5aarch64-suse-linuxELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=8dd50574537aaf5b6c3374b686df72e352134cd4, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=4e9770b907c686e3c163768661a830d80aad8760, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=c7a55905350cb0964e8989f7b8512712aacc6f80, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=e679532585c90904684997a8a4fb4280aaf7089d, for GNU/Linux 3.7.0, strippedELF 64-bit LSB shared object, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, BuildID[sha1]=d6d60775b29ee6da0909ff6f785ecae374c349d6, for GNU/Linux 3.7.0, stripped$3a. RRRUmcw\Ui!kؙV01- ό dk5:o#kmgɷYcbhw2-&wK:s&EVq2VosXRްwo-2e _ >@k%)m #o0X6odW{:PHnCz\V2-9CDy;/GCw |Q3^8q. ȵfJ15. > }zb.θjHkCZ +DSݱ(J>{~1st98 =}?pDK@n oL}*z+nQMGc~Hyùtsg ^rB%y֚@ F׍x9yˋ}lK*Ddžݑ'=7dcRۃ7Zjw=!kA,!Y3vlDɯ_O yЌ?L f?Tcp֣N"ʴڋGX !&c͋'sCg [jZ4~m>CݤS_Je7wʂ&fs8ͪΪaw+A4zO ZD0*UvçzivKS1mJ\AH.zT]QP9c'OC'J vDMI)ISASM$x.8of<7:vT@3c/w]ᥔji2tSNt-ѿmdojуQL}pv :,,5~g=cgëp Rbk`\sNS3qE ` k$ܥ'yG^,uxJdzUnSgSϼ|0b:A ^|_ұĎM5mJm'ŤتW! hsp$Vdp!L|Wi,`aD\ .)5$FTQyܜĆ\bKM +'-!tB`J8؝xD8u"Crw\E{X\_\fY Yӳ,'0Gܥ([C, t ϝOay箝F=(TXYAdn}g^K$pZ1=nқ@sh$ݍw۔^i]:j=A泝s9:گ%P~YruXۜ^~$+:ON"CncBdN# "w%JS^cZL|)FDܗՁE2>Xz?Y&\nJ=t|tp}1['s@FZ(p >.6{?3à نPqgUb q;.gO _Kvswa|~E'^_}a@#!]G7,Bfx8Y.0PJ^/8>TH%zG=',QЫ?۳9*D-ǔ"|9PIO[^I%x0K0(Mr"B4|.mhb7hKJ\Qo6B\RAMї$\40E]{ {}>l nS bm#̈́:Jj=k?'62.y36.Œq&3-<Ov\X1_^^/`dg̏Sh )(;I1um||&bdy؃oAmu38̒2@p8WGrh{#}Iagz@v_m .r5# 'x^`mU~~{Y6O64;|cu&`|_ާR}ͦv-=V^DPCLv0OWT5`~RkX?`UWz rYj=eR]ڻLNSF6t\.# )x \U1-eY2Umb[.ezQ_Ց1j՝Rf R̬-*Zsjfhaɶra5 YJHꌥZILʦkMBlBs$tW(lw=xKy)Hjj WA7HKɽٺ@"K^J|,Ĺ/ɜ;:aM{Ê^ꗖz&s*ЎL[.탋ZGc=7F3Ʊx/&`3 4l?Sh y7ۃw16Pˀǔ\f}X= @?餗hD[r`Lg/%f31}qls5/݊L. Hp+Mddx[V7.?{If[yi\q2eLJ_MU[D3)R=CWb?Z?a9R*@:V\ROc z"VUےH=',ט:6k#zQ>"22@y.^TPkF죺P9l_I,~?31޶'kuK͞P.mQC|E,ilIHj#wb_PqI=rS/N \2'leSVtۨR"JknG?V@sڦ]`xf2%QgE&X{J 9o ȚQ)38$$* =Z"ӛk(QR Q_,&qEpCcե\ƵWVE3uu9f*h.|ޤ~B3 rNSgՃ^ ?a[t"#7dғVQq޷f@a 9"\|F@H8-qg _2+!=y=^Rƥw3ZEWoˍbw,vo&,OW#ޔtg]ͻ$b@Gz"4%M5yhE|rVHAsNԪ ?GYt28Jc"B"Ƶ|qH?fh"hď;V?Gsj |J6;fmx; tӗ+6x` 0=ϬI^uD4 &*#/W2j ՃA"O:|R*MѬmڦޗx]|dN̟t #L`F#E#sV3Nfc љħ >^eL̨.~`[)S?/xk[h%VlSlBWw2V)yvMwlv{Hm97jlv2c地h$,*zj(0u# 2"iALÔ4 W "QQ@zef/c|JJax u^Qߕ2Ƒ@uJJr*>p6gv\aD^WF(GOJ6mukK%ͪ Az/n]0MN: `t#̓Y΢c !~<en G̣k[@H4o`fEyj45r3(INCquVfAWq(7{V{pp[)K2)i [%)wUk5G{L~ jC{b5a"WBujhs>&S99:g.ldG .egLo,]Wq(R7_8KeHKO%LhpoIa-&Ҩȅ;!WR[a0C^s)Y|Ⱖ,ZW+V,_^f㊓q g xT ۤ,r8-1̕Y 4Y>}ٖX,VI'bT Mgt"o)[S,%5zh ucF=X Q$WqA{S ®V=(Xp'kVq© >VhU1 Rg]hpۑ_P8xX5 c--[[KIv38nhqQ É+C몄^d#:~N)`sVj &ǠasG)rMQl2e_|jp#3y&R3;Cv ~yxUwNdS1^<ؓVT47inj 2 \sWypPe8hƸ. ~iag-1=}:RS2e:G} Pte)o1vdCs22-3ӑeGc{{'{2S3Chԯ=񡯉.&!n|/eJQQo`9>neVZ(j`:f%nfsĜ,d^_M籫{k64UW; U.U;ӪVPa'D$U}TT>L<~|{Eч0=J޽z ݭ͋%\п@N7+;סc<`^ʆ5ŏ߮+p€|rOvRj!j= 8n0"eOm4QL8 c)j?)-siF6쟐z2tL( B,K2aAC:z^ ;ZC˜~+/z=@us7j^.☥WZݲΘJ'^ ,l\q, ϑLJ='dfb?y^eey5w+&&d<ɃE@^8i2x>Zhj)ܨg&wO4CaֿFjPIE aSy4dXG[HK{_pe,Z;lӒ"qȽ᎐8wLUjH I'9EhI|RoZ)U`gP#7ir ٬ dC=#ުx0i_<կd[.H$xe ?zXT&3M ] 6g737c؂KߕrH4?FL]u 2M$~V \fM[M1g&@"Kl1')kպur@,}ӣI39ruOc5W Nɞ ?En]FʃU P< AfeM0b̃T &?tU'DP=ɶB'*=Fվ ӊ-EMxIpt Ppԉ\hǨf6ѷxjF7AGtV#,|&,p_[u"lQNkpCρة& bkDSKpd?;'=ʤWRN@&0f]}۬ר®Һֽ]*O9t^Q_4Â`p|BGQ m/XyVF._ }m+s {WE3>"T &'g4RC #טK$tˑj3Ge Dg{${{;Xod)wHQ ?Zh165[,2/p#yCԩ>$Kg/+ rTKޏGDIK4fԬhfk[;QmmsܦFP$LG)Hz 0*MDzRx.":zS;wt0IQO9Jze.OS:۪-\8ItA*[;8tm;* hl=/"4tPo<p{-pp`I/9t19ze,kG ̯G دB'Չt2o;"=3lݶfPcK6Gus(%;?J bW{Jx7|TA09Ў3P0zv,MlL ~&@dgκQigYURA H*m$)-{Wɗ$Hq:RV̱(:oI&CSiԋ4Sia Ke} "a 1ok}>F?:wc <Ղc+K>B R%~ jWz>\ i ًifM=d8 n<{}Jt$@%%h5 m,\ɫ +Eq<'ToLggy_9'80 Eɩ3^Q#dQdIG(KJ[hybi[ָmGyn Wb>aku&ҳrnX[40O8^2ا&(&b 0д*8'Ҿ'b k#ݺ(KưQdf Iq(#WeX΃'LuTv),6UG Î׃K'yIA WoQQ3ߋ:=̠pWί2q/ ˓JiZrᆙREݖLǁP夶k220]sC`D^g3a^8Y{5'Nd TɇՑ&"NW;M.rDo65߀x jm nq֮}ZKA.yݤlkh#3` DβXi?7DKv'U:oǗNہ||"ru?;(ŋ/LviGG 7הKE`{eo?k&z S.coi%0%J*5QQJo^q f-n[[>nZت>lp"#@@Dc+ {SuRy|KKglJ! $1`i4ņ<\V9RD͆q%<BZ76Jcپȅ/oO}Ș~leCg;*QgϷ <.,oIai$Bn9L`=&ps%W9  PW<#KDo >/:ki|p v ZX.@CKm5E"ӼUf&Ⱦ?Y {8CXT:VV*56ÀQodn3s/-;5 Xk T \z⹜uO; uvBjڵszzaq7p .)^ǟ#z#.o L܃S=:W#lFVŮvy)8{xogԄ4㹶&vp27QeB=gh \Tg<L{ ^{AfC"L[ItΜO)-zВX-3WlRzeJ,-l p߷ص]Y5FpTSj"C3!0:}jh>3h[ YxrE!2 'v~$ M A^ÛEnʂlD ?sL y+O,=|Eehm,`oP@RRtɓ쫔quL֝_z<&Vgq}rbhQIldҹ[n95ĥZ/͙LHMsyuxM  kV̺*YYkOZ rW|sEC\c=,L7XFݡlBХMs\(W;+*sǚmLff; &u(:KfA|KI^L(, yB>I1kEY5v":4-^ g; B3NMpTMsP8)|:\vN_j2M80#a0ziI j\} (C%T7~A{H:̧d2Uga:2AB 3s7,8kx`=Wu"pǑ Fo uαYK l;U9vg4|gd (yq!s{wOHnG!K Dʔ1|$zU# #iAAR4e2qp=5qTg^$W<7 LoZLs.YqbU؋džǬC*k&43]\rS{ٖSw ^}2Ky6I;S`PC G- o7&kTk/i8dNͼ5!Vew>J |1<u<]q.IxPм{@^ Njf2_G$e0n* /l M=eIX6o2A *j<iTK8_P*W`̨*o}tK+e0NoSjcWP=%B[*ЀpQJJ| yGO6픘ȭbxH[l}(_i`ƪ]frg4bHe$5U#Ky9d.nB0:8pDvm?s&>bkWAϗ Fβ8IЅbfPNHkci.1X,?1Z,rs'Pi %eV Ff)\- 5q?dBu{xWh+Dצ9 4;`:P\BR2)MSwDSظ>_CDb.ԛ"g!,^njUB) KmGgê0)O7ɹηHE@+ /Z!Wm~d$KQڝ` .0ɹRJ7~sȭΝGIC'w&/7=)̽:SXarZ@JV*= ;LKI?^1bNKlDz!{ߦp4zJU6fgYet#f-o/ݺf4= l񤪨S@z]2%Woh=d*/"Y9x[ ZX ;-.6^VRh &m' Z kbG\jXy_Nyp-ngC;3w -6Cf΢2 FQ$Ĵ:5Dj39K7sVӘ—U;%\Ʌ.mv3@^X:K46)΁N2al}VJ6l6wMv[Ywf''՛d|<1> v=K*ϰw lc TliU pƎ֟j[:Rsv@mS:FߵlAy8 ^ĔxH_yOZo(snlD~;G|TxN谆UZ%R#xclүA>Y1?tZk \:DH]9 N`%+Iwx?yֹ&,Q&K`x;w\ WFJe"Io0wO u;50znM4)FBA^cƤ#崐U9 yߟ2xb=n-Ȥ6hv|aW%883Tvۙ{6*6iojqcfsԔ -:vLMݦoM+>yI|xnͧ>Y5с&+VB٫)v/iK)7Di@ߡ5lr6k!PB>3zåURWU)ӆܕ85s` Z^cRVv4+5XNd!`\^ekE!vГDt#)̿?ǒ ISAɜ?6}N@wؚ:`R?#߆l~ࢂ Vbvz?xlP#j`E[e4k-̳,tZ&u$'=0jKr̢8@F_ Ɔ&$ 댇u2wN R96uֲrLaZ/.R׸Oc4Kk&SF,4x"av C^ٷ ck[: SRGDžd~>[SF0؅pȡ9Yw)0EבinxRD 8[MѧulVn髦eBx{], kW6 h*dl0*#]%W58?r.VB:"5 n>ѳd )kp o͇ RYݒ@3Ⱥ_n"e ʅ!s9#d^z w*rl`t &tWI܈k**C)9yÝSl3#' WC݉yOK[)-SP<0t%)zh.oPr;?TyKyBI_^PurL@LLAsflǒ!RMn9`pJ(E L5ܬU6Aƶflm%4 b13 xq\aӍf|Fiֱj&uւ 5%+I /er4 7@k (q^.ʚ/-lZM=]=kL8s%"AW6'{~( r/S$@Lmg3By" 'z/a}L-ij $wm$;Ľ'cZMUhZCSW+WxU#^7 nl{1n7!HXt''0ԠC aJc% iӎR{3m)_,h(,'S/zYlkc-vl84DЅFʊhR{wm18&N 'op9NFaQa7 ƦwZݗ'&gZ nRp}?ZD22+w j+.lȾ-AYʌ;2#PKRu'ޫ e1M%-R>c u&5!C&mJN,16q 1+c;3GXyI)y;bLk댡>(aؤ~M%G9fqBZi5,_wm=Qq6xq,AG4}-ywV-KM|7[f\".fv34 `Yxzڇ*XG^Ⳋ|S2. Pԝ)w<[(U:$f !yAy_WՕOe2O嚟o!h8.p<rNu¹ As^='Z>K8?7l=p>E p>zF0Kxjs>U.k2o W&s*c2"0s7.={Z#M?tq8jraVlt/T#FR1Ü ˅y/k+! $$ّ`!\3礃U9.3-Y?'Xz4vWA`MΈ?"$V4vH^4"C٦n>9\a_.@Ϗ >JiӾ'Fmy!"p'F~T>Wz(Oo]T> tVМi1 $tZELS+k=?AtQ W-3,H] Rso.oJ,Kx*򨳆]ҥ#=޿[)ř/qwWB<jSa~TepFIƒNO\&f?Csv+cYXǭ5FTSK(HcCWTS*ثomml,,,n)[ET(^޵1#40mF-\ v%v(y|,T.8n63ޱNjcˍ˷.}l$,$U+1  k@AdYgjÑPo&|\z!Gp+l!sĹ0tF^t&e>w6sL5TV\rҢPa빙! p_9^@Ce(QEЙiUsEEN=nfǶ2 gQoB5~[ Pu<3} $>>I=2xyϢFK8_֩_[{'kwĜ&u"h^* >e^T8 1B&0Ec<^ygD8Fs}PAўZӓKaH{$iJC1u.WvCc4$z@i,V7Hfc*X eb,;顙$w|Tcw)Ie_ {rR2nLȍ>'O\/ / S % f48*,R2ߣ>>bсl ͊:To23gjlZd(.s ܟ7](}T)hBdӘU͘s(lz)!@iyeySM1X+6i͜WDUzR-j-O{RkAZ.aw7Z7?ih_VB21Hha}ӄ[~M;pH u!؏$/̽l1 ЛPL-R)rFvOz1~΄o)A"ސ@HLT2PAP}1f+&ǀ#1;G=\V!P0+PTf+'d~pn6p:Y<t럎MEh-+2X )K x؉^XG+@o/%2@=߼A&­ j'n5 /wܧ , pScqI;Tʧ>2=zx/顐bRf6NWxzbI^d' R$3_0Ё[]׷э;uQsσdB:0L?,<0b':gl?6q O8˖~^@N-%{ 2 !Lhg査=*z*+mS1#PJf tR`N{xA^W7IԱ1˂U]b#v1Q1:d<F1?;)$en4\`\,$=܀ 3v/6% @\n:*bG(S^+G-h3 ]mpOԃ Q-OgFSIUT~8S 5>5dBZT,q.Uڊqp;F4< z Vs`upEqȶ :zg,6&s$8q]&{I< $$0 Od!SG}5@RDC6rk'G lHU ,5uf*o2|jٖAunpS@ 8Y 3W}71nnҘ{:Pq vns$t˼*jnzږdJ qi L7>T!=uduNQdjf7އiM.U^)qbH'PI_i Nқ|sQIS7SvNc7Fۤz6M=L hls}0"6,' TLOՖ|ưhb![v?q6P[/ܠNMsl Ҭq=H%II,i2 cy 80ŧ<\=eAMz[PSNa` t@ξ͈,-ohӅ chnI1%1IHeU rTClѺb\ J(,:ઃ; FJTǃ>:~mvVծUC\@D&/L|-\VDI=6N)yzaTayBž;0 wHװ+guHMuyR{}px=`;P/|FLF" <в{CPfD-/o#SR =8횟75&by.,$ w>8) 1{߲n>ӥ<@K?$;Ob[y&Z{I e&'E{}1Þ>,7x>=1dMv}`D Im彴gFk)_)NsΣaOpܗcZ|g$ԇH3 kRV+KLvv6Xu~K4ܕaEFIl0y Q+!4člmPxn֯Tʪ{j\p_]8J혿C8 qq1qL'K.Yd mf)Q,a; ^1(C)Qgn``Һ=4gtG{\nv3dIXVlvN®ҼAfD Y3'VfWۜXQJe+@%5'mPzK)IǩfV| 7^yߦ9DSUD4ٗ)4w8lX7 re7ySm%Rgn.A&C׺..T4J`P/fU`5ߣҌ)uZ:?kcaHGxW~/\' 2.`;u[_Ibwsc nXY_*'ǂҠnYY D`,#_d6|({gHE0G N1YtRFpxpaLn|UNPfv)5 JLi3{8}~z }Kns\O(T'$5TT##hCP/p{KwKt^1Q=I> N r0``S:`kJq<: +a~cN!kkj 7UxMMxg;N'MgH@a!N}_[]wj[J;dMFL4 y z T)-9+t)HQS:Fa~p !GJas%>bqDaJ ~9$1q$Mb_dOo2Hxd0:R2ktȡL-^RUmhO֮Pb.n ICXvZ+{S2ɵB4iT3x'=|SL$uO=vӇ'/Z^霖_d3QKNx| <Ǚl50:Hz,ج)SLjkC 0k^ ǗͲtMf N>My98R+%JPHj=7{zأyc/Iߠ=v püО( bNJӆ fd ђDxkğ/ #/eͩplݴw- E5#! @+H71^_2rH@Ib^lwrV~1mj*=(}Ⱥ)r)i|+!e _aݘbBŘHƗf{LIR P $>Qqybɸ#WI^+5y!W_Nn-WY_ Ib>}'rvytEg6NyCUSMצqUlg؎߇WM -(63>@@=VFA:xؗSlcA6֎"tѯ{S$TXrkz$u^$ͣ*4 n&]CwֳcoRY[%BfԏWɖ>yUU905 yfa/6E=pρ۴koX|K\6̫uV 4k =ݸ.WQZ$0^raJ[\$τ-2ZM@v_ 8:gZh1 @j>ū;>X܅ڜ~=.zZ>2Ϻvtz@ѵ؇[`x?;񵻝qq%ӯ#n 6Fnc^Eƞ@DP@+ط,9.~@t;-LwxqcxZI]?DG w3=}$ddуϡLWhx)g5}Wߩ[.0} oީN0o9fb}混5Af.['biWQl|cߣ=G/\s[mqTσ&S{4vVx0Lh|#%u;\אoVCҙw { wt3/d`{]+^rΒw /3-=[̖гѓt?gu /"7F5Pg76?Nͼ|uE^r)?;䎴Ho9MMCTDo\ΒNޮfc*`}Nj\)+PQu<۪c{s 3ѵ(1FhH8..sF.Rҹ1OAX^Q6"7 Kc8^0,ׅp&|x2D_#+zMiaDB:@= >_Rt>!lu%;aLD2m0(˞@?Xhk2Փ 0RbW מW >s)]K^]BvRtYӾ&{ԇ/f>bQ63߾΁7 uO U< ڄ1/I К꧈ FZ@}xHBThV|NefXׅ-sc" 5 {M8E