DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout
@ 2018-05-23 18:48 Rasesh Mody
  2018-05-24 17:22 ` Ferruh Yigit
  0 siblings, 1 reply; 4+ messages in thread
From: Rasesh Mody @ 2018-05-23 18:48 UTC (permalink / raw)
  To: dev; +Cc: Shahed Shaikh, ferruh.yigit, Dept-EngDPDKDev, stable

From: Shahed Shaikh <shahed.shaikh@cavium.com>

In 100G mode, we poll firmware slow path completion for every 1 second,
which is not enough and may result in completion timeout if
driver misses that window.

Patch "eal: set affinity for control threads" exposed this issue since
alarm callback runs in control thread context.

Fix this issue by update polling period to 100ms.

Fixes: d651ee4919cd ("eal: set affinity for control threads")
Fixes: 2af14ca79c0a ("net/qede: support 100G")
Cc: stable@dpdk.org

Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
---
 drivers/net/qede/qede_ethdev.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c
index 30b6519..338ddc1 100644
--- a/drivers/net/qede/qede_ethdev.c
+++ b/drivers/net/qede/qede_ethdev.c
@@ -16,7 +16,7 @@
 int qede_logtype_driver;
 
 static const struct qed_eth_ops *qed_ops;
-static int64_t timer_period = 1;
+#define QEDE_SP_TIMER_PERIOD	10000 /* 100ms */
 
 /* VXLAN tunnel classification mapping */
 const struct _qede_udp_tunn_types {
@@ -1698,7 +1698,7 @@ static void qede_poll_sp_sb_cb(void *param)
 	qede_interrupt_action(ECORE_LEADING_HWFN(edev));
 	qede_interrupt_action(&edev->hwfns[1]);
 
-	rc = rte_eal_alarm_set(timer_period * US_PER_S,
+	rc = rte_eal_alarm_set(QEDE_SP_TIMER_PERIOD,
 			       qede_poll_sp_sb_cb,
 			       (void *)eth_dev);
 	if (rc != 0) {
@@ -3093,7 +3093,7 @@ static int qede_common_dev_init(struct rte_eth_dev *eth_dev, bool is_vf)
 	 * interrupt vector but we need one for each engine.
 	 */
 	if (ECORE_IS_CMT(edev) && IS_PF(edev)) {
-		rc = rte_eal_alarm_set(timer_period * US_PER_S,
+		rc = rte_eal_alarm_set(QEDE_SP_TIMER_PERIOD,
 				       qede_poll_sp_sb_cb,
 				       (void *)eth_dev);
 		if (rc != 0) {
-- 
1.7.10.3

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout
  2018-05-23 18:48 [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout Rasesh Mody
@ 2018-05-24 17:22 ` Ferruh Yigit
  2018-05-24 18:02   ` Mody, Rasesh
  0 siblings, 1 reply; 4+ messages in thread
From: Ferruh Yigit @ 2018-05-24 17:22 UTC (permalink / raw)
  To: Rasesh Mody, dev; +Cc: Shahed Shaikh, Dept-EngDPDKDev, stable

On 5/23/2018 7:48 PM, Rasesh Mody wrote:
> From: Shahed Shaikh <shahed.shaikh@cavium.com>
> 
> In 100G mode, we poll firmware slow path completion for every 1 second,
> which is not enough and may result in completion timeout if
> driver misses that window.
> 
> Patch "eal: set affinity for control threads" exposed this issue since
> alarm callback runs in control thread context.
> 
> Fix this issue by update polling period to 100ms.
> 
> Fixes: d651ee4919cd ("eal: set affinity for control threads")
> Fixes: 2af14ca79c0a ("net/qede: support 100G")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>

Hi Rasesh,

I can see it fixes an issue introduced because of a change in this release,
what is the priority of the defect?

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout
  2018-05-24 17:22 ` Ferruh Yigit
@ 2018-05-24 18:02   ` Mody, Rasesh
  2018-05-25  9:35     ` Ferruh Yigit
  0 siblings, 1 reply; 4+ messages in thread
From: Mody, Rasesh @ 2018-05-24 18:02 UTC (permalink / raw)
  To: Ferruh Yigit, dev; +Cc: Shaikh, Shahed, Dept-Eng DPDK Dev, stable

Hi Ferruh,

> From: Ferruh Yigit [mailto:ferruh.yigit@intel.com]
> Sent: Thursday, May 24, 2018 10:22 AM
> 
> On 5/23/2018 7:48 PM, Rasesh Mody wrote:
> > From: Shahed Shaikh <shahed.shaikh@cavium.com>
> >
> > In 100G mode, we poll firmware slow path completion for every 1
> > second, which is not enough and may result in completion timeout if
> > driver misses that window.
> >
> > Patch "eal: set affinity for control threads" exposed this issue since
> > alarm callback runs in control thread context.
> >
> > Fix this issue by update polling period to 100ms.
> >
> > Fixes: d651ee4919cd ("eal: set affinity for control threads")
> > Fixes: 2af14ca79c0a ("net/qede: support 100G")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
> 
> Hi Rasesh,
> 
> I can see it fixes an issue introduced because of a change in this release, what
> is the priority of the defect?

This is important for us to get this change in as it fixes slow path completion timeout for our 100G adapters leading to PMD load failure. Please apply to 18.05.

Thanks!
-Rasesh

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout
  2018-05-24 18:02   ` Mody, Rasesh
@ 2018-05-25  9:35     ` Ferruh Yigit
  0 siblings, 0 replies; 4+ messages in thread
From: Ferruh Yigit @ 2018-05-25  9:35 UTC (permalink / raw)
  To: Mody, Rasesh, dev; +Cc: Shaikh, Shahed, Dept-Eng DPDK Dev, stable

On 5/24/2018 7:02 PM, Mody, Rasesh wrote:
> Hi Ferruh,
> 
>> From: Ferruh Yigit [mailto:ferruh.yigit@intel.com]
>> Sent: Thursday, May 24, 2018 10:22 AM
>>
>> On 5/23/2018 7:48 PM, Rasesh Mody wrote:
>>> From: Shahed Shaikh <shahed.shaikh@cavium.com>
>>>
>>> In 100G mode, we poll firmware slow path completion for every 1
>>> second, which is not enough and may result in completion timeout if
>>> driver misses that window.
>>>
>>> Patch "eal: set affinity for control threads" exposed this issue since
>>> alarm callback runs in control thread context.
>>>
>>> Fix this issue by update polling period to 100ms.
>>>
>>> Fixes: d651ee4919cd ("eal: set affinity for control threads")
>>> Fixes: 2af14ca79c0a ("net/qede: support 100G")
>>> Cc: stable@dpdk.org
>>>
>>> Signed-off-by: Shahed Shaikh <shahed.shaikh@cavium.com>
>>
>> Hi Rasesh,
>>
>> I can see it fixes an issue introduced because of a change in this release, what
>> is the priority of the defect?
> 
> This is important for us to get this change in as it fixes slow path completion timeout for our 100G adapters leading to PMD load failure. Please apply to 18.05.

Applied to dpdk-next-net/master, thanks.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-05-25  9:35 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-23 18:48 [dpdk-dev] [PATCH] net/qede: fix slow path completion timeout Rasesh Mody
2018-05-24 17:22 ` Ferruh Yigit
2018-05-24 18:02   ` Mody, Rasesh
2018-05-25  9:35     ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).