dpdk-19.11.4-150300.16.1<>,Bxc$)p9|P(<6;<$)%b}i?)3qLQ9ch!j>VhCLjz j7ʊI!ɛ~{_2_!XzMMP/>/*5_lYmJ9X7gCZG/ >Fz_h 4ãBاw&]!Nbd\ C\ܱ_[@iZ&`4_9X(w@dmy}rx:L6 .z0dT-6꟡puE{v/ oT;>??d  S> Teu{     (@^|HHH8<E(F8PF9hF:FG8HPIhXpY|\]^bcd8e=f@lBuTvlwdx|yxtx~Cdpdk19.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$)sheep74SUSE Linux Enterprise 15SUSE LLC BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-onlyhttps://www.suse.com/System/Librarieshttp://dpdk.orglinuxx86_64[h HpZPc$(c$(c$(c$(c$(c$(f13368ab054c857946d8a90eb2ee63fe50ade2fd239a45022a11b74d97a8ceca8337273d5fc79246554e5a4d64f1668eff12638324aa8afdc571c3adff19d143347b3dcb941fc963a8c92807dfda293a83ab532f4c8b5adb7041547f381d58b36107c6c24f39a2e24ee023397cda46a28069ab3561453ee347a96df8ae22c5e8e4f2e46943c2c2570ebaeb7553733f3ffe9f5e168d2469e966b943ec6e067ab5dpdk-procinforootrootrootrootrootrootrootrootrootrootrootrootdpdk-19.11.4-150300.16.1.src.rpmdpdkdpdk(x86-64)dpdk-any@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@    ld-linux-x86-64.so.2()(64bit)ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)libc.so.6()(64bit)libc.so.6(GLIBC_2.14)(64bit)libc.so.6(GLIBC_2.17)(64bit)libc.so.6(GLIBC_2.2.5)(64bit)libc.so.6(GLIBC_2.3)(64bit)libc.so.6(GLIBC_2.7)(64bit)libm.so.6()(64bit)libm.so.6(GLIBC_2.2.5)(64bit)libpthread.so.0()(64bit)libpthread.so.0(GLIBC_2.2.5)(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.4-150300.16.119.11.4-150300.16.119.11.4dpdk-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_Updatedrpmxz5x86_64-suse-linuxELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=b6a9430c2cba414af431b69d0a51efabd5d2cdd6, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=4d68805dc4bc74ae1325083270d8265b635a8be4, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=16fb0fee748819a13e5cac3643c879ae92585b65, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=4609d398243ad39ad635e562975a76745ba89438, for GNU/Linux 3.2.0, strippedELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=60d5105126a51084d408a5246ec50350995bf87c, for GNU/Linux 3.2.0, stripped&;n3 RAR%RR)R,R3RR RRR2R$R(RR+R@RR RRRCRARR,R RR.RRR-RRRBR+R@RR RR)R5R,RRR R RRRRRR4R(R R+RRR RRRRR.R?RR3RR!R1R0RR R9R7R;R*R)RRRRR=R,RARRR'RRR8RR2R-RR&RRR R(R/RR+R@RRR RRRRR R#RR"RR RRutf-86dd88d359cdc7a329eefabbc408ed53c817adaffa318d5670ba240d9f1abdd8e?7zXZ !t/_KI]"k%w w=+}NEjQ'oc-(zYG@x⵻9?\~)H oMzg*`j'@3]i [gKX͒@lK[#"o]/YP!Uo{Za#,23U`"jw)\p0x@|'^7dV vB{7>c5v@zk-%%)}r@*.N~cr'.Fn$T$@^g";ZISöۑ򠴆ṋ^gŶL9oOݚf+:GmvdJKR5fZdiaലLR_1hٷI3( EBes/x>ZMXbdwt5)ua*A7|50*U`7.¼;5iG;cF#[7ЧH<&)sgV0:ׇn0Oנ^ RUd0cfOD(ӗY%$ĸOofq.[^ELA0{lJj_(M{6u!M Kz@hqJz"p%BA2V@0H+ EG&:HLs* B7}aj-I:`.OXSL*W4XNg{}"éP4}bp~ I ~:>Q( Lϩ+.)^<Υ/39Z)fvP 8V,:Mvp|\Tw7C<7#ݷִL72f|?tBؕ 6 6r^/ M_f5GDj4eYR¯'.4F>^^3RԊ'y?} '4lY1J~9Md*\6:&-R "~-g圑RxQš%h l6a+^= T/GI7͂tJ BfZ~tٓU k/]埌(3vW fZL[2Y/Ӻ5XGH3HiN[o]I#IՏ (?&w`fk}I\㷳QrXgLtOԠ1 Oוɱ)?[hq> @Z85l̎eRI鈾0#II4̆ 90T^F3<)o#L]ֆMy$@dYI^=A&ܜ[sF$Ä (68#J8vjH I1ꖃ޺>8!W=jp5sKi(l zC";K,nO<[KDgkL)AcR4Dwq'Lxa$j1+I; G^mJm!M 5cpwxڑ?ruN, hf !Eo%+OZ^;c~!9\{?/{o^t Ptmli5p"F^tUtKz!;) &j!'~אDFB$YOO׬.QÑx8[o.:n}kXnuC87 71nj$FQz“S$\D "@@OW66]0;РI`e{!We~pLjװ4t89eayű 0PHK M+E}wl# B[a!Q{9쨢U{o8  E]9q0K2D]eoç,WZFPeӻM3U麝HkQV.Ѡ+1]fǼz{{ GB Y`t x!mrJ,5e1[qP,թZ)=_wyWOd2-}M7L(OyوDg E*O+^`. xd #xjƨQOn P!TF*X7Z^%rnMa?Ͽ|Ec&m7Z,2t갰dhbåIsao'EHhw1hA VB!VN"58[4 yemi Emr@wpn' }.4Dڇf`߇8]'Rn2wO©q,|~=O_qmK'v4HPof' JPB/]# ;@ ~Ugy_[7Pr'pXۅC-SSkg+THINvVJ`XGro'Ye(9e-ϗ/7zy$ͰuV~u~OTVKS{ɚ v>y@ss]*~?L@:| KuʹA'.w'Xd)8Kf| >Iko2Vx0z{M迷{=LQK{4*8U\K17R|5ƙښ k]L)r+9 '8n4QsqΡp&=I[0ڸ-stp%f%n~<3 pNgX~W8c5ݓN\4xFRҋOu6y7)G"IюκX/bQj%[KCZ{7̜40q 1oO) R LRwQ(Y/~a--*xjl7Hҹ#?WQ% l}jj8Y8YO|;!N\R'띪=/@B dɂ̣=,u,;&޴R١iP\nƲ,X*tPb p?DLދìik<ƪkMÒA=.s:MpoJ5{` c:%I2nOkЀ䚇CЗ;#7ǧ`b.msOǣ`R[_u T Ѭ7f! I^$̊g1BZ1ԺU6=v&H)_Ɨg mpПNl B`n,@'ǁ턜+sDJ(;>*.F3Z ɰw~=ш"(<<9%y_QdWoիbǵ3lan7#I̲CCyT7j!5iF}ht6éYnҽ.2>get Vnx(_) M(NA| $ƚJpHMnj#ay&sę.X\9GFu$ &f~JA.HNa<>\BƺZ*kXW ?)7ͥufiWĈ04!ә48A-05ϣ S5XA#%tB0X_C X C@/6a#)EY^@)5}l-ي]$*NA4 -ޗfǽW/eIܠ8ʉ<ذ׀5B3`"y2:ְZ+YuR#dC]PRxsh?DgD| ;9g}O{ Wou~y7$ L\ۄ_:wߘV*OO^z*+ (#f <+|^Zs7/1v^KZĊ@$p[1|1&` ϾLk1"cLnQ*'/zp6H.) 7H3fʏW:LL\3)`t 2y']蟶 ,\\VSsz;5 =y+IޞRi<ϦCGb_G ],NLbOE4ƿ3eqVb~HTZu .M?hamӅraSV HYʕe&SWrb7:7nцfɒ‰֬us(2FP4 U=S5YyuNЈ|(% r;EibV>1sS SgUu)&I?Еu<͔. dj3Bl F[pȧ'R/jf';)@fx]`7wㆴ ߈5:|u ++WThktbegUGFX沊8ʬ \kC˷Bf?SϬy C|_2 푙/hY8%jrpe\K.}TiiG&_$|>$pF#&"2i0I F@Z` YyU!P EjBS ' 9w2]0ka_n (  V?8 *o ?ǥˈ w=>]"=42n+<l}e08&>/긠x rS-^KQch?F6bTD噚`K}8-958}YfʬNKN$!yg87\,x9Ubw JLFe2XxA:pZ9_Rx,ZF*b&f*ǿO Ҟ |= tAdʮ}exjHsRڊu/؊"T,0Gw 8. I$im <։Uo$u1phPSh ]'};vaXɵ}Oy``8(KHNsXIu&zX hS!Y`;4Xԝʈ+fP^ d[$ ]BȘb{N7Q;sֻp59*0il,Q/(7tDF[?|dn[ eIfCtz8KW nme/R.~ ~ 1LЌ7 I_ S]VqMkBQ_!A$>wlT;ҸuM*rb$)B*F.W9n7~Qf=!Q$q4EZX'K"b)8Z6>]k[(ffZt!r&ʵ\VP!Czh9-} JpX/J.GcSXeZUe~ApZK3OԶ@7QkGT1 8cꐉxk4jΥκ7UY(c1;C=156S E :' Y١[o9=O%|ij8:`x@yLT%orИ<6,mރWxRk5bZvWrS'XpҮ{XJf^rU]b P>jkn"3z )S8+=DS@YsCu BZ 5ˌO 711X Y9%I귯_fs:b0:]tb*PE(UdVZNar-e(XYiA0uG֧85aCk (\)H)zyޮluvd,ڍ;(L}U Hs<.Jʏ6Ɖ<0]:( leòa0Jg'X4>H.[$>"k] BHE`T ȈL.a`ᾼ4ێ+N>!t.*H:dJRyqlQA ~b)"MG +4M -rR蝾7:?v]g΋K!/dV`DJ)fQ1[mgo! $rMA mIjk^R @}\pA~&??֓n9TD7[e:]6t?ȌA8+.j4@k; M~iUGV_P2 -WLhb K8"$rpUu2n].w/#9WNHl0&{YU4FH$X7g zpHTA&Xl[=25O,4h9m8+q>T`/࿝C DU}_;J6Evȟ k4#kfUYuH|txSq2p#CPl -}ҀsHtP5=[̀&ypuxs+)Ұ}sVd-{~z wN\AɐزqElo9 s*F)3 ܢ c y( Fр6A*{, &w~BUX~N-d8-GLIp7i'FO_b"x4ZK'V $Ԏ=',!qlIv\, ~=4uLU 18R *m( JHT$G^b8$Hh@-eI$0 8)7gF^g0se4͍$OwiQ:wՄ; cR6ny@_h8w+u=HSMEtatұMNGUN ++< T _!D>Hz9& ,7:6DEZcyo@4cy`<ރX3WBg0 װU3,u̒?o1RK7Aϓ 6g|Y zo8@$?{LލX1]_uiv00=zxEw#Ʉt9^v~?_(,1*ۭ莚Hu- wk9H"$G;6ȶ'UKi/צDV&;Ċ%;ǍvEx"cڈR1ޭ 9Ģ vk]W+Y4nApmL`b݇ec]97b=y$//hX;PYw zӲ䉼 Qe+Qd|D*2{1@mC/L=M,5Q$8t%:r%۠+DpIA.wnP00ewrFc/G̍ZjCꑔx~Y~.2)k# f~pk۵Sg32_)7i+&~/h"1,$o@0 CiݨZI yOӥF@vD8[q)"XUFp%M+1hxlj/Q +k 11 PŵxPS׸C}cy)) &#6xt| ]OЪ[w/(%_-K_F.?k2`yUNk8a7&g谇u7l`ms !=*G'j'ߊpPۧIQ ! ZlAB2:Ay3Rt2c`y`5WlOrZመͽFt4pml8׀jcp{phDJ%FwW`fY]%a_-v>^Xmh,QK U'i4I)U:U/rc)r pکKjFѝD<>ÿgKF܃S[1xM~?g⦆3k K/@;KM`"RD#Gҡbǻ,n2:Al[$*9r[m#( V\%` nI%ogŧljS!HW"YΉ;C4F%xia#fn#F>*װzJ.7Rœnm"G4ԐwDJ3&dS@o C{:jWx*Xi\f!(^s<7\&?gpB#ȷ Q((}{+&H'=oٲM /VW{8< ()&Xf= ?&8ٱ\^ik,/7֭8!+1|fBL[x7(Hr1|R } JVẺ@VCC5Қ#W,F0LMW=id yDlNraPx+×aPɆl#'UjU(9%<#/Ɍ2`" Jj=o, BsB\_ 2Fp"gu{oVWE ?XS zvf-7X|MR%#7.߃czP5UV*Y|Y  7^ǩμaŋrXQ9B*/dIj9{KST,$y uOVѪN 5{%7^5!:-!?/{4*Xm]BaFusT(H^W˜47k8G^>jm;Q/]3W%\~=#bu/5NLg:7v.diĊ[tt2諣 OKóҁtT˷>^Ѝ彷\jpw< L?D'~?ҵ|' Rnɨ]6 Lr74rs}PdocC6|-9r)ytQ^p&a.;+cs3_^L@meǙuw\wr+e(Q;Xˣ pQ\WM9l9әutK޿R iW?PcA~!%fU%ֲZUpɔ_& 9_׷t&M`n!Ze^ћq~h!m%`<Ɔjϗ*j?-Wc!F D,cُ@ـRTK,iȽ ?Ux6`ኅae5<.O~M#) Br̔S% vGlL$=Ut^-'C;!=\Bׅ;]SMsg)ˉK]"ǎ Ύa@ ۞Jg7۝2F٣Ϙt6͌Y{'=XK6W"_d\%l,R 5н1{_*S5n 5zojK6Hƺ9? gdu8."TovؼTA8[e,4%,beY̱{8AVp#1ش2ADz+r%U4]?M0oQ}-c.%k%br_pAj: uHMUl(AęݿG?X!C,c7qd #ݺ1 ybGх AH~Q0TF,Θ^*RJԘe1*9͹U]jm|N/E\Wv82ؑ#t!| Xrah!X:du X `jaFtJĜHzBkB{Ly=@I}J팳",7ItQQdžiO3C(Cr!WK߇E+繧XT*NB~,yd|\U߇u,hɦB?C̓,$_pZ( i7[Ab sʯLF*dHb%ROYCjj53m{2_IP=C =w1E}`Rhc:&8>{]InK(9 ǻ(uC^}׿$RP*hĵܧA=*;fn|r>5-ǖfוFm A">0ɚB 屌@w[tkHE?fl߉ԬU^ ygj.5_2E.6˴!cf\eJԱ3ftk*+$Քb"sbxYUR $axl TvVӕX\1) լ>& zvg69 ^Uo@k{ǥsEy ˸ k{dEwZ[͸0`L) -mKw[H6eTkYsfK*}[` P7M؟A'3XIoxʁT͈{xs v&hԶCjYLfck _ȨbZF<{$[[Ť`G458nػgB`;}R >ϨMso*dd-@-c1+}ܩH$`ףVeHo6ytWfPbYtKxNPI+K`LUnlIk=XHWG):y'̒Q@DAkC~j+>i|Gc>:n4ϳxy1AaYj\6\VjUQ8& S}*נ>9\Q'kr ! Rd-M 7 ʕC< i` b) 2$?99nW~\y8dos0`8F!b$ 4Zm}/C!6 TTk? rϛe __Y5WĤ C_-\dLcsaduS݆D ǡ槺| -do[UUqqQO|LL t*ڑF'1eBnYQ\m@ oB)yBsnuSt@8~g;ٸf,Q/׼4 7qBz]H6Q!°yk&t[cR**< @S| JM)nR犪uyPKV$:2 :  mqgԋ\p'; 6s+ '.ᭌ~~THi5F܌,Dk=d,Lt|1p]Oj*U#I +<[ȇ1kX@i.]fUY@$F@5RMƹv=;ryF<Qil-K[µRjyf":\uQ5 8_~KM4D AL$疌C?J^[F {0Ǯ:}K̵\i-Λ60a{Aim&&LC.3ۙ=*,;dM`D%$7 ƦBT>i08"r.k|ĵwl :cůV"K`/?tWF`+ #GqlWHq/v㼡\1!eoG/CRquNڕ0w4 Hgre6Q[,(KESfCćq}MzRتvVUC)`gQ/f7NALEazD]W\> FḼFԚN8\ EiձM"P@|vs~襊j!&u{an]F$Ê5N̳O|O>Sv<Wbn`~L9ٓ.$ADbg22UrJM`M! r.yYPA_H&-CC;09+ӣq1)U&enNzL:v<#uϗ.\ +m\мB`9J~d#KgWy든J/r~9?4*0.1ɨL-b\rWC, mB~E[܅^Hcp Bh&\ z].!mN|%{ש= u1 tɅlT54^v*nI@P^ވԷD1d8ͨK2׼,z 3NieWEʉG>-j-*Sx P]4X1:0 ?[Q;Q=Q[N˥L߅8q].5kG/'#(U3q%F yF*B,YJ8N 5Q9wЋ/6j3fmRDR=/;1!hʦchc΄f! 2n ݪt͈;sWVzKU ߙ!o!}IerKgQ]R{{7QNn,3獼'{CWKoS9Ut2qLЎ)K ,טFO 0mVd>cvV gǙ?P~ ͲE/щaA_t>[-65^W&i:B>S 9_/öDMTo= '@(ܮ5XzD ωzڙˌ)絭6]sH`cE$"j~TPqMpb"w+' 6mo'fuǐ&ƩL G0̋j< @>86Bp5%]f\Ą_ŚtF|y!!x0Ä$FNi׫d#mSغ&fEGviP8b&rî/!. p4xFqk'FF^攉2?b;ecN@~21<GH*t.%<^hlAkL?]-x` mF?&OlCмb8In@/TCڣWq[d?сQ!.gWu -{/;65_"P|n"m֞j%l'mP~Ȧ?e>+>hۇ""qSG]Ҩ`KWY # b^.t+idU@=<^.0TX_Э1<]g9g Gi-D?<[Ӄ&9!@j2˚sLj4T㑫v&ա@ƗUȳ92̮cf]34Ƣշf7a3;vq6*ÏZ3z4/+L\ZiJ=-*|[|LTUAt_ݬ)dY(È><ˠ[,hl7['ٚa[t`}a&ރg 3U>"8OH >gdO 8E'uKڗuU )&_8eǾT T>h|И?4K [x;:r,XcD{Rir&b[ #ߟA -@Xܺ.rA7 *βPfp?}~+g?3> @1daTfUA+YD{a `q[572\?ۥp=a ZDdN]1 <3yLߗZ[ۍ rS)zb`Nmsdf?Ѱ8+n+IқObj`}-EÅUc ۶p('&4kMP;,־xȲ^<"VԿZ;viRTQʳ #;CtWw؈ uS^k?A=쳕tDo6m:fEǦ4F9}k44 \RRF8~ڥ)H[0M~u}9jL<.ߧ1W# \jBmT>,HéܧE{!Fabszd?&9U08 pZ%A/k4S:]C4Ϊg$ `Ǘ/y2Agy4a!d[18Jiˈw&4 _걦85I+]g(3)R ۔KcCw^y`+{[5zh<\G%iW,FX ?hKj8,\z7 l%L&iD A΄. ~O: jxts:\B\`w p[ 0oͬ:fqK[}>b(AM'ʱ5$$ h<5TksT՚g$-4Td˳H^'*'+ߙB+-S,'2dkcF )^Q|@,x+%l:RO@su90 +p=sgGTP)n%B9'<ߊ4DAߚKNhENЇ-L䑑cϢzJ1 .4bZ _cw7!Ud:H\U4` xPA.!]~sHɝ}v ݳt 4sPMYx"|_djG;ℼs: B^3Wq0VH~YŋTt Lq<r+ocgǗ"HQxHJlHY8R9Jl}-7wK6p6G}?tbnFOFZ"6!h*K$f/^}n{jZ,'y^YCs\ȃրK(Hyb ӡD1 Va}j:bDH鶱\T7@HL&c&rL5q=I"j\xvM8wîbXBfD JL w٥wRPl3{Qt/d`b^IUg)\]5Փ2N%R)gi_~ v)4k(Po{P#oG@W,vX7]⿮Z YZ