Accepting request 520811 from home:ndas:branches:network
- 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 OBS-URL: https://build.opensuse.org/request/show/520811 OBS-URL: https://build.opensuse.org/package/show/network/dpdk?expand=0&rev=58
This commit is contained in:
parent
f30006c414
commit
117750050d
@ -1,33 +0,0 @@
|
||||
From e6b63f9d941c8b27c4c1cbeab2c7cdbefb7747ba Mon Sep 17 00:00:00 2001
|
||||
From: Nirmoy Das <ndas@suse.de>
|
||||
Date: Fri, 31 Mar 2017 11:40:42 +0200
|
||||
Subject: [PATCH] kni: define HAVE_VF_VLAN_PROTO for SLES12SP3
|
||||
|
||||
Add support for SLES12SP3, which uses kernel 4.4,
|
||||
but backported features from newer kernels.
|
||||
|
||||
Signed-off-by: Nirmoy Das <ndas@suse.de>
|
||||
---
|
||||
lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 6 ++++--
|
||||
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
index 84826b26e..3d22d8e69 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
@@ -3929,8 +3929,10 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
|
||||
#define vlan_tx_tag_present skb_vlan_tag_present
|
||||
#endif
|
||||
|
||||
-#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) )
|
||||
+#if (( LINUX_VERSION_CODE >= KERNEL_VERSION(4,9,0) ) \
|
||||
+ || (defined(CONFIG_SUSE_KERNEL) && \
|
||||
+ (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,59))))
|
||||
#define HAVE_VF_VLAN_PROTO
|
||||
-#endif /* >= 4.9.0 */
|
||||
+#endif /* >= 4.9.0, >= SLES12SP3 */
|
||||
|
||||
#endif /* _KCOMPAT_H_ */
|
||||
--
|
||||
2.12.0
|
||||
|
71
0002-kni-fix-build-on-SLE12-SP3.patch
Normal file
71
0002-kni-fix-build-on-SLE12-SP3.patch
Normal file
@ -0,0 +1,71 @@
|
||||
From d2749a174306f7ddb4259bdeb561761ddff7ca7d Mon Sep 17 00:00:00 2001
|
||||
From: Nirmoy Das <ndas@suse.de>
|
||||
Date: Tue, 29 Aug 2017 16:48:35 +0200
|
||||
Subject: [PATCH v2] kni: fix build on SLE12 SP3
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
compilation error:
|
||||
build/lib/librte_eal/linuxapp/kni/kni_net.c:215:5: error:
|
||||
‘struct net_device’ has no member named ‘trans_start’
|
||||
dev->trans_start = jiffies;
|
||||
|
||||
Signed-off-by: Nirmoy Das <ndas@suse.de>
|
||||
---
|
||||
lib/librte_eal/linuxapp/kni/compat.h | 32 +++++++++++++++++++++++++++++++-
|
||||
1 file changed, 31 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/lib/librte_eal/linuxapp/kni/compat.h
|
||||
index 6a1587b4e..19f8e96ce 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/compat.h
|
||||
+++ b/lib/librte_eal/linuxapp/kni/compat.h
|
||||
@@ -8,6 +8,34 @@
|
||||
#define RHEL_RELEASE_VERSION(a, b) (((a) << 8) + (b))
|
||||
#endif
|
||||
|
||||
+/* SuSE version macro is the same as Linux kernel version */
|
||||
+#ifndef SLE_VERSION
|
||||
+#define SLE_VERSION(a, b, c) KERNEL_VERSION(a, b, c)
|
||||
+#endif
|
||||
+#ifdef CONFIG_SUSE_KERNEL
|
||||
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 57))
|
||||
+/* SLES12SP3 is at least 4.4.57+ based */
|
||||
+#define SLE_VERSION_CODE SLE_VERSION(12, 3, 0)
|
||||
+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 28))
|
||||
+/* SLES12 is at least 3.12.28+ based */
|
||||
+#define SLE_VERSION_CODE SLE_VERSION(12, 0, 0)
|
||||
+#elif ((LINUX_VERSION_CODE >= KERNEL_VERSION(3, 0, 61)) && \
|
||||
+ (LINUX_VERSION_CODE < KERNEL_VERSION(3, 1, 0)))
|
||||
+/* SLES11 SP3 is at least 3.0.61+ based */
|
||||
+#define SLE_VERSION_CODE SLE_VERSION(11, 3, 0)
|
||||
+#elif (LINUX_VERSION_CODE == KERNEL_VERSION(2, 6, 32))
|
||||
+/* SLES11 SP1 is 2.6.32 based */
|
||||
+#define SLE_VERSION_CODE SLE_VERSION(11, 1, 0)
|
||||
+#elif (LINUX_VERSION_CODE == KERNEL_VERSION(2, 6, 27))
|
||||
+/* SLES11 GA is 2.6.27 based */
|
||||
+#define SLE_VERSION_CODE SLE_VERSION(11, 0, 0)
|
||||
+#endif /* LINUX_VERSION_CODE == KERNEL_VERSION(x,y,z) */
|
||||
+#endif /* CONFIG_SUSE_KERNEL */
|
||||
+#ifndef SLE_VERSION_CODE
|
||||
+#define SLE_VERSION_CODE 0
|
||||
+#endif /* SLE_VERSION_CODE */
|
||||
+
|
||||
+
|
||||
#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39) && \
|
||||
(!(defined(RHEL_RELEASE_CODE) && \
|
||||
RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(6, 4)))
|
||||
@@ -55,7 +83,9 @@
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) || \
|
||||
(defined(RHEL_RELEASE_CODE) && \
|
||||
- RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7, 4))
|
||||
+ RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(7, 4)) || \
|
||||
+ (defined(SLE_VERSION_CODE) && \
|
||||
+ SLE_VERSION_CODE == SLE_VERSION(12, 3, 0))
|
||||
#define HAVE_TRANS_START_HELPER
|
||||
#endif
|
||||
|
||||
--
|
||||
2.13.3
|
||||
|
@ -1,31 +0,0 @@
|
||||
From c284b14663fcaa2ab492496921a1fcb691abe764 Mon Sep 17 00:00:00 2001
|
||||
From: Nirmoy Das <ndas@suse.de>
|
||||
Date: Tue, 18 Apr 2017 11:20:48 +0200
|
||||
Subject: [PATCH] kni: define HAVE_TRANS_START_HELPER for SLES12SP3
|
||||
|
||||
Add support for SLES12SP3, which uses kernel 4.4,
|
||||
but backported features from newer kernels.
|
||||
|
||||
Signed-off-by: Nirmoy Das <ndas@suse.de>
|
||||
---
|
||||
lib/librte_eal/linuxapp/kni/compat.h | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/compat.h b/lib/librte_eal/linuxapp/kni/compat.h
|
||||
index 78da08e..f781fd0 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/compat.h
|
||||
+++ b/lib/librte_eal/linuxapp/kni/compat.h
|
||||
@@ -51,7 +51,9 @@
|
||||
#define HAVE_SK_ALLOC_KERN_PARAM
|
||||
#endif
|
||||
|
||||
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0)
|
||||
+#if ( LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) \
|
||||
+ || (defined(CONFIG_SUSE_KERNEL) && \
|
||||
+ (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,59))))
|
||||
#define HAVE_TRANS_START_HELPER
|
||||
#endif
|
||||
|
||||
--
|
||||
2.12.2
|
||||
|
@ -1,81 +0,0 @@
|
||||
From 2d5a4b62ff2d7b79ca937a5c88654deecf4aa986 Mon Sep 17 00:00:00 2001
|
||||
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
|
||||
Date: Mon, 20 Mar 2017 19:40:40 +0530
|
||||
Subject: [PATCH] net/thunderx: sync mailbox definitions with Linux PF driver
|
||||
|
||||
- bgx_link_status mbox definition was changed in Linux
|
||||
commit 1cc702591bae ("net: thunderx: Add ethtool support")
|
||||
- NIC_MBOX_MSG_RES_BIT related changes were never part of Linux PF driver
|
||||
|
||||
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
|
||||
---
|
||||
drivers/net/thunderx/base/nicvf_mbox.c | 7 ++-----
|
||||
drivers/net/thunderx/base/nicvf_mbox.h | 11 +++--------
|
||||
2 files changed, 5 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/thunderx/base/nicvf_mbox.c b/drivers/net/thunderx/base/nicvf_mbox.c
|
||||
index 3b7b8a518..8b3477d5f 100644
|
||||
--- a/drivers/net/thunderx/base/nicvf_mbox.c
|
||||
+++ b/drivers/net/thunderx/base/nicvf_mbox.c
|
||||
@@ -62,9 +62,6 @@ static const char *mbox_message[NIC_MBOX_MSG_MAX] = {
|
||||
[NIC_MBOX_MSG_RESET_STAT_COUNTER] = "NIC_MBOX_MSG_RESET_STAT_COUNTER",
|
||||
[NIC_MBOX_MSG_CFG_DONE] = "NIC_MBOX_MSG_CFG_DONE",
|
||||
[NIC_MBOX_MSG_SHUTDOWN] = "NIC_MBOX_MSG_SHUTDOWN",
|
||||
- [NIC_MBOX_MSG_RES_BIT] = "NIC_MBOX_MSG_RES_BIT",
|
||||
- [NIC_MBOX_MSG_RSS_SIZE_RES_BIT] = "NIC_MBOX_MSG_RSS_SIZE",
|
||||
- [NIC_MBOX_MSG_ALLOC_SQS_RES_BIT] = "NIC_MBOX_MSG_ALLOC_SQS",
|
||||
};
|
||||
|
||||
static inline const char * __attribute__((unused))
|
||||
@@ -176,7 +173,7 @@ nicvf_handle_mbx_intr(struct nicvf *nic)
|
||||
case NIC_MBOX_MSG_NACK:
|
||||
nic->pf_nacked = true;
|
||||
break;
|
||||
- case NIC_MBOX_MSG_RSS_SIZE_RES_BIT:
|
||||
+ case NIC_MBOX_MSG_RSS_SIZE:
|
||||
nic->rss_info.rss_size = mbx.rss_size.ind_tbl_size;
|
||||
nic->pf_acked = true;
|
||||
break;
|
||||
@@ -186,7 +183,7 @@ nicvf_handle_mbx_intr(struct nicvf *nic)
|
||||
nic->speed = mbx.link_status.speed;
|
||||
nic->pf_acked = true;
|
||||
break;
|
||||
- case NIC_MBOX_MSG_ALLOC_SQS_RES_BIT:
|
||||
+ case NIC_MBOX_MSG_ALLOC_SQS:
|
||||
assert_primary(nic);
|
||||
if (mbx.sqs_alloc.qs_count != nic->sqs_count) {
|
||||
nicvf_log_error("Received %" PRIu8 "/%" PRIu8
|
||||
diff --git a/drivers/net/thunderx/base/nicvf_mbox.h b/drivers/net/thunderx/base/nicvf_mbox.h
|
||||
index 084f3a769..8675fe8fb 100644
|
||||
--- a/drivers/net/thunderx/base/nicvf_mbox.h
|
||||
+++ b/drivers/net/thunderx/base/nicvf_mbox.h
|
||||
@@ -68,16 +68,10 @@
|
||||
#define NIC_MBOX_MSG_ALLOC_SQS 0x12 /* Allocate secondary Qset */
|
||||
#define NIC_MBOX_MSG_LOOPBACK 0x16 /* Set interface in loopback */
|
||||
#define NIC_MBOX_MSG_RESET_STAT_COUNTER 0x17 /* Reset statistics counters */
|
||||
-#define NIC_MBOX_MSG_CFG_DONE 0x7E /* VF configuration done */
|
||||
-#define NIC_MBOX_MSG_SHUTDOWN 0x7F /* VF is being shutdown */
|
||||
-#define NIC_MBOX_MSG_RES_BIT 0x80 /* Reset bit from PF */
|
||||
+#define NIC_MBOX_MSG_CFG_DONE 0xF0 /* VF configuration done */
|
||||
+#define NIC_MBOX_MSG_SHUTDOWN 0xF1 /* VF is being shutdown */
|
||||
#define NIC_MBOX_MSG_MAX 0x100 /* Maximum number of messages */
|
||||
|
||||
-#define NIC_MBOX_MSG_RSS_SIZE_RES_BIT \
|
||||
- (NIC_MBOX_MSG_RSS_SIZE | NIC_MBOX_MSG_RES_BIT)
|
||||
-#define NIC_MBOX_MSG_ALLOC_SQS_RES_BIT \
|
||||
- (NIC_MBOX_MSG_ALLOC_SQS | NIC_MBOX_MSG_RES_BIT)
|
||||
-
|
||||
/* Get vNIC VF configuration */
|
||||
struct nic_cfg_msg {
|
||||
uint8_t msg;
|
||||
@@ -157,6 +151,7 @@ struct rss_cfg_msg {
|
||||
/* Physical interface link status */
|
||||
struct bgx_link_status {
|
||||
uint8_t msg;
|
||||
+ uint8_t mac_type;
|
||||
uint8_t link_up;
|
||||
uint8_t duplex;
|
||||
uint32_t speed;
|
||||
--
|
||||
2.12.2
|
||||
|
@ -1,13 +0,0 @@
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
|
||||
index d077b49e9..8667f29ca 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
|
||||
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb.h
|
||||
@@ -607,7 +607,7 @@ struct igb_adapter {
|
||||
int int_mode;
|
||||
u32 rss_queues;
|
||||
u32 vmdq_pools;
|
||||
- char fw_version[32];
|
||||
+ char fw_version[43];
|
||||
u32 wvbr;
|
||||
struct igb_mac_addr *mac_table;
|
||||
#ifdef CONFIG_IGB_VMDQ_NETDEV
|
@ -1,66 +0,0 @@
|
||||
From 9fb3cd2c041eeca30b6c46e5d555d857d6096ae7 Mon Sep 17 00:00:00 2001
|
||||
From: Ferruh Yigit <ferruh.yigit@intel.com>
|
||||
Date: Wed, 3 May 2017 17:00:16 +0100
|
||||
Subject: [PATCH] kni: fix ethtool build with kernel 4.11
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
build error:
|
||||
.../lib/librte_eal/linuxapp/kni/igb_main.c:1034:10:
|
||||
error: implicit declaration of function ‘pci_enable_msix’
|
||||
err = pci_enable_msix(pdev,
|
||||
^~~~~~~~~~~~~~~
|
||||
|
||||
This build error observed when CONFIG_RTE_KNI_KMOD_ETHTOOL config option
|
||||
enabled.
|
||||
|
||||
Following Linux commit removes the pci_enable_msix()
|
||||
Linux: 4244de1c64de ("PCI: remove pci_enable_msix")
|
||||
|
||||
Switch to pci_enable_msix_range() for kernel > 4.8 since current Linux
|
||||
igb driver uses this function.
|
||||
|
||||
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
|
||||
Acked-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
|
||||
---
|
||||
lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c | 7 +++++++
|
||||
lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h | 4 ++++
|
||||
2 files changed, 11 insertions(+)
|
||||
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
|
||||
index c0d52db33..5f1f3a6b5 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
|
||||
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/igb_main.c
|
||||
@@ -1031,8 +1031,15 @@ static void igb_set_interrupt_capability(struct igb_adapter *adapter, bool msix)
|
||||
for (i = 0; i < numvecs; i++)
|
||||
adapter->msix_entries[i].entry = i;
|
||||
|
||||
+#ifdef HAVE_PCI_ENABLE_MSIX
|
||||
err = pci_enable_msix(pdev,
|
||||
adapter->msix_entries, numvecs);
|
||||
+#else
|
||||
+ err = pci_enable_msix_range(pdev,
|
||||
+ adapter->msix_entries,
|
||||
+ numvecs,
|
||||
+ numvecs);
|
||||
+#endif
|
||||
if (err == 0)
|
||||
break;
|
||||
}
|
||||
diff --git a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
index 4abab4aa3..4c52da3c1 100644
|
||||
--- a/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
+++ b/lib/librte_eal/linuxapp/kni/ethtool/igb/kcompat.h
|
||||
@@ -3937,4 +3937,8 @@ skb_set_hash(struct sk_buff *skb, __u32 hash, __always_unused int type)
|
||||
#define HAVE_VF_VLAN_PROTO
|
||||
#endif /* >= 4.9.0, >= SLES12SP3 */
|
||||
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0)
|
||||
+#define HAVE_PCI_ENABLE_MSIX
|
||||
+#endif
|
||||
+
|
||||
#endif /* _KCOMPAT_H_ */
|
||||
--
|
||||
2.13.2
|
||||
|
@ -1,78 +0,0 @@
|
||||
From 99bb58f3adc73046b538874a0944578146ee1189 Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Dichtel <nicolas.dichtel@6wind.com>
|
||||
Date: Thu, 20 Apr 2017 15:11:23 +0200
|
||||
Subject: [PATCH] igb_uio: switch to new irq function for MSI-X
|
||||
|
||||
pci_enable_msix() will be removed in kernel 4.12.
|
||||
The new API pci_alloc_irq_vectors() is available
|
||||
since linux 4.8, thus let's use it.
|
||||
|
||||
Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=aff171641d18
|
||||
Link: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git/commit/?id=4244de1c64de
|
||||
|
||||
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
|
||||
Reviewed-by: David Marchand <david.marchand@6wind.com>
|
||||
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
|
||||
|
||||
From 62d37a57656607a622a546c88cca5d78b23c4730 Mon Sep 17 00:00:00 2001
|
||||
From: Nirmoy Das <ndas@suse.de>
|
||||
Date: Tue, 18 Jul 2017 13:36:25 +0200
|
||||
Subject: [PATCH] backport upstream patch
|
||||
|
||||
---
|
||||
lib/librte_eal/linuxapp/igb_uio/compat.h | 4 ++++
|
||||
lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 11 +++++++++++
|
||||
2 files changed, 15 insertions(+)
|
||||
|
||||
diff --git a/lib/librte_eal/linuxapp/igb_uio/compat.h b/lib/librte_eal/linuxapp/igb_uio/compat.h
|
||||
index 0d781e4..b800a53 100644
|
||||
--- a/lib/librte_eal/linuxapp/igb_uio/compat.h
|
||||
+++ b/lib/librte_eal/linuxapp/igb_uio/compat.h
|
||||
@@ -123,3 +123,7 @@ static bool pci_check_and_mask_intx(struct pci_dev *pdev)
|
||||
}
|
||||
|
||||
#endif /* < 3.3.0 */
|
||||
+
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 8, 0)
|
||||
+#define HAVE_PCI_ENABLE_MSIX
|
||||
+#endif
|
||||
diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
|
||||
index df41e45..683cd8c 100644
|
||||
--- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
|
||||
+++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c
|
||||
@@ -325,7 +325,9 @@ static int
|
||||
igbuio_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
|
||||
{
|
||||
struct rte_uio_pci_dev *udev;
|
||||
+#ifdef HAVE_PCI_ENABLE_MSIX
|
||||
struct msix_entry msix_entry;
|
||||
+#endif
|
||||
int err;
|
||||
|
||||
udev = kzalloc(sizeof(struct rte_uio_pci_dev), GFP_KERNEL);
|
||||
@@ -379,6 +381,7 @@ igbuio_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
|
||||
switch (igbuio_intr_mode_preferred) {
|
||||
case RTE_INTR_MODE_MSIX:
|
||||
/* Only 1 msi-x vector needed */
|
||||
+#ifdef HAVE_PCI_ENABLE_MSIX
|
||||
msix_entry.entry = 0;
|
||||
if (pci_enable_msix(dev, &msix_entry, 1) == 0) {
|
||||
dev_dbg(&dev->dev, "using MSI-X");
|
||||
@@ -386,6 +389,14 @@ igbuio_pci_probe(struct pci_dev *dev, const struct pci_device_id *id)
|
||||
udev->mode = RTE_INTR_MODE_MSIX;
|
||||
break;
|
||||
}
|
||||
+#else
|
||||
+ if (pci_alloc_irq_vectors(dev, 1, 1, PCI_IRQ_MSIX) == 1) {
|
||||
+ dev_dbg(&dev->dev, "using MSI-X");
|
||||
+ udev->info.irq = pci_irq_vector(dev, 0);
|
||||
+ udev->mode = RTE_INTR_MODE_MSIX;
|
||||
+ break;
|
||||
+ }
|
||||
+#endif
|
||||
/* fall back to INTX */
|
||||
case RTE_INTR_MODE_LEGACY:
|
||||
if (pci_intx_mask_supported(dev)) {
|
||||
--
|
||||
2.13.2
|
||||
|
@ -11,6 +11,7 @@
|
||||
<flag>sse</flag>
|
||||
<flag>sse2</flag>
|
||||
<flag>sse3</flag>
|
||||
<!-- TODO add SSE4.2 before that need to fix obs, patch on the way -->
|
||||
</cpu>
|
||||
</hardware>
|
||||
</overwrite>
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c8d99a1a074072a6087c3fc2fafa6baf2e64bed08b83935e75e5cf003cefd861
|
||||
size 9056664
|
3
dpdk-17.08.tar.xz
Normal file
3
dpdk-17.08.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4bd77822ef6fe7a39ab8b11b36b86ba511282ac5ffdb81459eebb42bec5b7ef8
|
||||
size 10156500
|
@ -1,3 +1,55 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Sep 4 11:18:19 CEST 2017 - ndas@suse.de
|
||||
|
||||
- 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]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 25 12:09:57 UTC 2017 - marco.varlese@suse.com
|
||||
|
||||
|
@ -41,12 +41,12 @@
|
||||
# Add option to build without tools
|
||||
%bcond_without tools
|
||||
|
||||
%define lname libdpdk-16_11-2
|
||||
%define lname libdpdk-17_08-0
|
||||
|
||||
# Do NOT edit this auto generated file! Edit dpdk.spec instead
|
||||
# and run 'pre_checkin.sh' before committing
|
||||
Name: dpdk-thunderx
|
||||
Version: 16.11.2
|
||||
Version: 17.08
|
||||
Release: 0
|
||||
Summary: Set of libraries and drivers for fast packet processing (thunderx)
|
||||
License: BSD-3-Clause and GPL-2.0 and LGPL-2.1
|
||||
@ -61,14 +61,8 @@ Source1: preamble
|
||||
# However, the problem still exists and the fix has to find its way to the
|
||||
# upstream code.
|
||||
Patch1: 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch
|
||||
Patch2: 0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch
|
||||
Patch3: 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch
|
||||
Patch4: 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch
|
||||
#PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-gcc-7.1.patch bsc#1042372
|
||||
Patch5: 0005-kni-fix-build-with-gcc-7.1.patch
|
||||
#PATCH-FIX-UPSTREAM 0006-kni-fix-ethtool-build-with-kernel-4.11.patch
|
||||
Patch6: 0006-kni-fix-ethtool-build-with-kernel-4.11.patch
|
||||
Patch7: 0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch
|
||||
# PATCH-FIX-UPSTREAM 0002-kni-fix-build-on-SLE12-SP3.patch bsc#1031705
|
||||
Patch2: 0002-kni-fix-build-on-SLE12-SP3.patch
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: libnuma-devel
|
||||
@ -161,14 +155,9 @@ The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the
|
||||
|
||||
%prep
|
||||
# can't use %{name} because of dpdk-thunderx
|
||||
%setup -q -n dpdk-stable-%{version}
|
||||
%setup -q -n dpdk-%{version}
|
||||
%patch1 -p1 -z .enic
|
||||
%patch2 -p1 -z .kni1
|
||||
%patch3 -p1 -z .kni2
|
||||
%patch4 -p1 -z .thunderx
|
||||
%patch5 -p1 -z .kni3
|
||||
%patch6 -p1 -z .kni4
|
||||
%patch7 -p1 -z .igb1
|
||||
%patch2 -p1 -z .kni
|
||||
|
||||
# This fixes CROSS compilation (broken) in the mk file for ThunderX
|
||||
sed -i '/^CROSS /s/^/#/' mk/machine/thunderx/rte.vars.mk
|
||||
@ -277,10 +266,10 @@ unset RTE_SDK RTE_INCLUDE RTE_TARGET
|
||||
%make_install O=%{target} prefix=%{_usr} libdir=%{_libdir}
|
||||
|
||||
%if ! %{with tools}
|
||||
rm -rf %{buildroot}%{sdkdir}/tools
|
||||
rm -rf %{buildroot}%{sdkdir}/usertools/
|
||||
rm -rf %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%endif
|
||||
rm -f %{buildroot}%{sdkdir}/tools/setup.sh
|
||||
rm -f %{buildroot}%{sdkdir}/usertools/setup.sh
|
||||
#TODO pip elftools has issues to fix
|
||||
rm -rf %{buildroot}%{_bindir}/dpdk-pmdinfo
|
||||
|
||||
@ -298,6 +287,13 @@ for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
|
||||
bn=$(basename ${f})
|
||||
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
|
||||
done
|
||||
#mempool is a driver now from 16.07
|
||||
mkdir -p %{buildroot}/%{pmddir}
|
||||
for f in %{buildroot}/%{_libdir}/*_mempool_*.so.*; do
|
||||
bn=$(basename ${f})
|
||||
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
|
||||
done
|
||||
|
||||
# Setup RTE_SDK environment as expected by apps etc
|
||||
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
|
||||
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh
|
||||
@ -363,7 +359,7 @@ ln -s %{_sbindir}/dpdk-devbind %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%{incdir}/
|
||||
%{sdkdir}
|
||||
%if %{with tools}
|
||||
%exclude %{sdkdir}/tools/
|
||||
%exclude %{sdkdir}/usertools/
|
||||
%endif
|
||||
%if %{with examples}
|
||||
%exclude %{sdkdir}/examples/
|
||||
@ -378,9 +374,11 @@ ln -s %{_sbindir}/dpdk-devbind %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%if %{with tools}
|
||||
%files tools
|
||||
%defattr(-,root,root)
|
||||
%{sdkdir}/tools/
|
||||
%{sdkdir}/usertools/
|
||||
%{_sbindir}/dpdk-devbind
|
||||
%{_sbindir}/dpdk_nic_bind
|
||||
%{_bindir}/dpdk-test-eventdev
|
||||
%{_bindir}/dpdk-test-crypto-perf
|
||||
%endif
|
||||
|
||||
%if %{with examples}
|
||||
|
52
dpdk.changes
52
dpdk.changes
@ -1,3 +1,55 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Sep 4 11:18:19 CEST 2017 - ndas@suse.de
|
||||
|
||||
- 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]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Aug 25 12:09:57 UTC 2017 - marco.varlese@suse.com
|
||||
|
||||
|
40
dpdk.spec
40
dpdk.spec
@ -41,10 +41,10 @@
|
||||
# Add option to build without tools
|
||||
%bcond_without tools
|
||||
|
||||
%define lname libdpdk-16_11-2
|
||||
%define lname libdpdk-17_08-0
|
||||
|
||||
Name: dpdk
|
||||
Version: 16.11.2
|
||||
Version: 17.08
|
||||
Release: 0
|
||||
Summary: Set of libraries and drivers for fast packet processing
|
||||
License: BSD-3-Clause and GPL-2.0 and LGPL-2.1
|
||||
@ -59,14 +59,8 @@ Source1: preamble
|
||||
# However, the problem still exists and the fix has to find its way to the
|
||||
# upstream code.
|
||||
Patch1: 0001-enic-fix-Type-punning-and-strict-aliasing-warning.patch
|
||||
Patch2: 0002-kni-define-HAVE_VF_VLAN_PROTO-for-SLES12SP3.patch
|
||||
Patch3: 0003-kni-define-HAVE_TRANS_START_HELPER-for-SLES12SP3.patch
|
||||
Patch4: 0004-net-thunderx-sync-mailbox-definitions-with-Linux-PF-.patch
|
||||
#PATCH-FIX-UPSTREAM 0005-kni-fix-build-with-gcc-7.1.patch bsc#1042372
|
||||
Patch5: 0005-kni-fix-build-with-gcc-7.1.patch
|
||||
#PATCH-FIX-UPSTREAM 0006-kni-fix-ethtool-build-with-kernel-4.11.patch
|
||||
Patch6: 0006-kni-fix-ethtool-build-with-kernel-4.11.patch
|
||||
Patch7: 0007-igb_uio-switch-to-new-irq-function-for-MSI-X.patch
|
||||
# PATCH-FIX-UPSTREAM 0002-kni-fix-build-on-SLE12-SP3.patch bsc#1031705
|
||||
Patch2: 0002-kni-fix-build-on-SLE12-SP3.patch
|
||||
BuildRequires: doxygen
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: libnuma-devel
|
||||
@ -159,14 +153,9 @@ The DPDK Kernel NIC Interface (KNI) allows userspace applications access to the
|
||||
|
||||
%prep
|
||||
# can't use %{name} because of dpdk-thunderx
|
||||
%setup -q -n dpdk-stable-%{version}
|
||||
%setup -q -n dpdk-%{version}
|
||||
%patch1 -p1 -z .enic
|
||||
%patch2 -p1 -z .kni1
|
||||
%patch3 -p1 -z .kni2
|
||||
%patch4 -p1 -z .thunderx
|
||||
%patch5 -p1 -z .kni3
|
||||
%patch6 -p1 -z .kni4
|
||||
%patch7 -p1 -z .igb1
|
||||
%patch2 -p1 -z .kni
|
||||
|
||||
# This fixes CROSS compilation (broken) in the mk file for ThunderX
|
||||
sed -i '/^CROSS /s/^/#/' mk/machine/thunderx/rte.vars.mk
|
||||
@ -275,10 +264,10 @@ unset RTE_SDK RTE_INCLUDE RTE_TARGET
|
||||
%make_install O=%{target} prefix=%{_usr} libdir=%{_libdir}
|
||||
|
||||
%if ! %{with tools}
|
||||
rm -rf %{buildroot}%{sdkdir}/tools
|
||||
rm -rf %{buildroot}%{sdkdir}/usertools/
|
||||
rm -rf %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%endif
|
||||
rm -f %{buildroot}%{sdkdir}/tools/setup.sh
|
||||
rm -f %{buildroot}%{sdkdir}/usertools/setup.sh
|
||||
#TODO pip elftools has issues to fix
|
||||
rm -rf %{buildroot}%{_bindir}/dpdk-pmdinfo
|
||||
|
||||
@ -296,6 +285,13 @@ for f in %{buildroot}/%{_libdir}/*_pmd_*.so.*; do
|
||||
bn=$(basename ${f})
|
||||
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
|
||||
done
|
||||
#mempool is a driver now from 16.07
|
||||
mkdir -p %{buildroot}/%{pmddir}
|
||||
for f in %{buildroot}/%{_libdir}/*_mempool_*.so.*; do
|
||||
bn=$(basename ${f})
|
||||
ln -s ../${bn} %{buildroot}%{pmddir}/${bn}
|
||||
done
|
||||
|
||||
# Setup RTE_SDK environment as expected by apps etc
|
||||
mkdir -p %{buildroot}/%{_sysconfdir}/profile.d
|
||||
cat << EOF > %{buildroot}/%{_sysconfdir}/profile.d/dpdk-sdk-%{_arch}.sh
|
||||
@ -361,7 +357,7 @@ ln -s %{_sbindir}/dpdk-devbind %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%{incdir}/
|
||||
%{sdkdir}
|
||||
%if %{with tools}
|
||||
%exclude %{sdkdir}/tools/
|
||||
%exclude %{sdkdir}/usertools/
|
||||
%endif
|
||||
%if %{with examples}
|
||||
%exclude %{sdkdir}/examples/
|
||||
@ -376,9 +372,11 @@ ln -s %{_sbindir}/dpdk-devbind %{buildroot}%{_sbindir}/dpdk_nic_bind
|
||||
%if %{with tools}
|
||||
%files tools
|
||||
%defattr(-,root,root)
|
||||
%{sdkdir}/tools/
|
||||
%{sdkdir}/usertools/
|
||||
%{_sbindir}/dpdk-devbind
|
||||
%{_sbindir}/dpdk_nic_bind
|
||||
%{_bindir}/dpdk-test-eventdev
|
||||
%{_bindir}/dpdk-test-crypto-perf
|
||||
%endif
|
||||
|
||||
%if %{with examples}
|
||||
|
Loading…
Reference in New Issue
Block a user