aboutsummaryrefslogtreecommitdiffstats
path: root/dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch
diff options
context:
space:
mode:
authorJohn Lo <loj@cisco.com>2016-03-08 22:15:20 -0500
committerGerrit Code Review <gerrit@fd.io>2016-03-10 16:41:33 +0000
commita6a8bfd48f394eeea159d0b6e165d947344f7438 (patch)
treeb487fd326aab357ae49e4376382524d702cec36a /dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch
parente389de77de7bc08761ad1f9e1c27ba54123e4faa (diff)
More updated match to ENIC PMD for DPDK 2.2.0 including rx path optimization.
Change-Id: I756940c9c1b2bb71d47caeb08ab34a2e954ddff6 Signed-off-by: John Lo <loj@cisco.com>
Diffstat (limited to 'dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch')
-rw-r--r--dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch33
1 files changed, 19 insertions, 14 deletions
diff --git a/dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch b/dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch
index d0f606806d1..9730adc487e 100644
--- a/dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch
+++ b/dpdk/dpdk-2.2.0_patches/0012-Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.patch
@@ -1,26 +1,31 @@
-From cbd799612eb1da02cefc6d43fe304e4434cdf8e5 Mon Sep 17 00:00:00 2001
+From 70725980c4d8f1e01cfa352a95341893aab00e7e Mon Sep 17 00:00:00 2001
From: John Lo <loj@cisco.com>
-Date: Fri, 26 Feb 2016 12:54:27 -0500
-Subject: [PATCH 2/2] Fix ENIC PMD problem with not sending the first packet on
- TX.
+Date: Mon, 7 Mar 2016 14:07:19 -0500
+Subject: [PATCH 1/2] Fix-ENIC-PMD-problem-with-not-sending-the-first-pack.
---
- drivers/net/enic/base/enic_vnic_wq.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ drivers/net/enic/base/enic_vnic_wq.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/enic/base/enic_vnic_wq.h b/drivers/net/enic/base/enic_vnic_wq.h
-index e3ea574..75fad22 100644
+index e3ea574..b019109 100644
--- a/drivers/net/enic/base/enic_vnic_wq.h
+++ b/drivers/net/enic/base/enic_vnic_wq.h
-@@ -48,7 +48,7 @@ static inline void enic_vnic_post_wq_index(struct vnic_wq *wq)
- * stale descriptor fields.
- */
- wmb();
-- iowrite32(buf->index, &wq->ctrl->posted_index);
-+ iowrite32(buf->next->index, &wq->ctrl->posted_index);
+@@ -69,11 +69,11 @@ static inline void enic_vnic_post_wq(struct vnic_wq *wq,
+ buf->wr_id = wrid;
+
+ buf = buf->next;
+- if (cq_entry)
+- enic_vnic_post_wq_index(wq);
++ wq->ring.desc_avail -= desc_skip_cnt;
+ wq->to_use = buf;
+
+- wq->ring.desc_avail -= desc_skip_cnt;
++ if (cq_entry)
++ enic_vnic_post_wq_index(wq);
}
- static inline void enic_vnic_post_wq(struct vnic_wq *wq,
+ #endif /* _ENIC_VNIC_WQ_H_ */
--
1.9.1