[dpdk-stable] patch 'examples/l3fwd-power: fix Rx interrupt disabling' has been queued to LTS release 17.11.10

luca.boccassi at gmail.com luca.boccassi at gmail.com
Thu Dec 19 15:34:01 CET 2019


Hi,

FYI, your patch has been queued to LTS release 17.11.10

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/21/19. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Thanks.

Luca Boccassi

---
>From 1fce227f6a11f1e9968ce93ebe6923f53d854469 Mon Sep 17 00:00:00 2001
From: Xiao Zhang <xiao.zhang at intel.com>
Date: Wed, 11 Sep 2019 00:10:14 +0800
Subject: [PATCH] examples/l3fwd-power: fix Rx interrupt disabling

[ upstream commit 0412cfeff907bb9102a2ca834e95ef8c6767f538 ]

Interrupt will not be received when disabling RX interrupt without
synchronization mechanism sometimes which leads to wake up issue.
Add spinlock to fix it.

Fixes: b736d64787 ("examples/l3fwd-power: disable Rx interrupt when waking up")

Signed-off-by: Xiao Zhang <xiao.zhang at intel.com>
Reviewed-by: Marvin Liu <yong.liu at intel.com>
Acked-by: David Hunt <david.hunt at intel.com>
---
 examples/l3fwd-power/main.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
index 50c3702f6c..c669f6a441 100644
--- a/examples/l3fwd-power/main.c
+++ b/examples/l3fwd-power/main.c
@@ -813,7 +813,9 @@ sleep_until_rx_interrupt(int num)
 		port_id = ((uintptr_t)data) >> CHAR_BIT;
 		queue_id = ((uintptr_t)data) &
 			RTE_LEN2MASK(CHAR_BIT, uint8_t);
+		rte_spinlock_lock(&(locks[port_id]));
 		rte_eth_dev_rx_intr_disable(port_id, queue_id);
+		rte_spinlock_unlock(&(locks[port_id]));
 		RTE_LOG(INFO, L3FWD_POWER,
 			"lcore %u is waked up from rx interrupt on"
 			" port %d queue %d\n",
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-12-19 14:32:30.082985348 +0000
+++ 0094-examples-l3fwd-power-fix-Rx-interrupt-disabling.patch	2019-12-19 14:32:26.221300126 +0000
@@ -1,14 +1,15 @@
-From 0412cfeff907bb9102a2ca834e95ef8c6767f538 Mon Sep 17 00:00:00 2001
+From 1fce227f6a11f1e9968ce93ebe6923f53d854469 Mon Sep 17 00:00:00 2001
 From: Xiao Zhang <xiao.zhang at intel.com>
 Date: Wed, 11 Sep 2019 00:10:14 +0800
 Subject: [PATCH] examples/l3fwd-power: fix Rx interrupt disabling
 
+[ upstream commit 0412cfeff907bb9102a2ca834e95ef8c6767f538 ]
+
 Interrupt will not be received when disabling RX interrupt without
 synchronization mechanism sometimes which leads to wake up issue.
 Add spinlock to fix it.
 
 Fixes: b736d64787 ("examples/l3fwd-power: disable Rx interrupt when waking up")
-Cc: stable at dpdk.org
 
 Signed-off-by: Xiao Zhang <xiao.zhang at intel.com>
 Reviewed-by: Marvin Liu <yong.liu at intel.com>
@@ -18,10 +19,10 @@
  1 file changed, 2 insertions(+)
 
 diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c
-index a03f64a1a3..d049d8a5dc 100644
+index 50c3702f6c..c669f6a441 100644
 --- a/examples/l3fwd-power/main.c
 +++ b/examples/l3fwd-power/main.c
-@@ -880,7 +880,9 @@ sleep_until_rx_interrupt(int num)
+@@ -813,7 +813,9 @@ sleep_until_rx_interrupt(int num)
  		port_id = ((uintptr_t)data) >> CHAR_BIT;
  		queue_id = ((uintptr_t)data) &
  			RTE_LEN2MASK(CHAR_BIT, uint8_t);


More information about the stable mailing list