* [dpdk-dev] [PATCH] igb: change default RX wthresh back
@ 2016-03-31 6:18 Wenzhuo Lu
2016-03-31 7:29 ` Ananyev, Konstantin
0 siblings, 1 reply; 3+ messages in thread
From: Wenzhuo Lu @ 2016-03-31 6:18 UTC (permalink / raw)
To: dev; +Cc: Wenzhuo Lu
A problem is found on i350 VF. TX will happen once per 4
packets. If only 1~3 packets are received, they will not be
forwarded.
The reason is the default RX write-back threshold is changed
to 4. This patch changes the value back to 0, so every packet
can be handled immediately.
Fixes: 4a41c17dba18 (igb: set default thresholds based on MAC type)
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
---
drivers/net/e1000/igb_ethdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
index bd0ae26..34120ae 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -64,7 +64,7 @@
#define IGB_DEFAULT_RX_PTHRESH ((hw->mac.type == e1000_i354) ? 12 : 8)
#define IGB_DEFAULT_RX_HTHRESH 8
-#define IGB_DEFAULT_RX_WTHRESH ((hw->mac.type == e1000_82576) ? 1 : 4)
+#define IGB_DEFAULT_RX_WTHRESH 0
#define IGB_DEFAULT_TX_PTHRESH ((hw->mac.type == e1000_i354) ? 20 : 8)
#define IGB_DEFAULT_TX_HTHRESH 1
--
1.9.3
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [PATCH] igb: change default RX wthresh back
2016-03-31 6:18 [dpdk-dev] [PATCH] igb: change default RX wthresh back Wenzhuo Lu
@ 2016-03-31 7:29 ` Ananyev, Konstantin
2016-04-01 0:39 ` Lu, Wenzhuo
0 siblings, 1 reply; 3+ messages in thread
From: Ananyev, Konstantin @ 2016-03-31 7:29 UTC (permalink / raw)
To: Lu, Wenzhuo, dev; +Cc: Lu, Wenzhuo
Hi Wenzhuo,
>
> A problem is found on i350 VF. TX will happen once per 4
> packets. If only 1~3 packets are received, they will not be
> forwarded.
>
> The reason is the default RX write-back threshold is changed
> to 4. This patch changes the value back to 0, so every packet
> can be handled immediately.
>
> Fixes: 4a41c17dba18 (igb: set default thresholds based on MAC type)
> Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
> ---
> drivers/net/e1000/igb_ethdev.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
> index bd0ae26..34120ae 100644
> --- a/drivers/net/e1000/igb_ethdev.c
> +++ b/drivers/net/e1000/igb_ethdev.c
> @@ -64,7 +64,7 @@
>
> #define IGB_DEFAULT_RX_PTHRESH ((hw->mac.type == e1000_i354) ? 12 : 8)
> #define IGB_DEFAULT_RX_HTHRESH 8
> -#define IGB_DEFAULT_RX_WTHRESH ((hw->mac.type == e1000_82576) ? 1 : 4)
> +#define IGB_DEFAULT_RX_WTHRESH 0
But that still doesn't prevent user from setting wthresh to whatever he likes inside
rx_queue_setup(), so the problem persists right?
As a side notice, it seems really bad practice to use implicit variables inside macro definition.
Konstantin
>
> #define IGB_DEFAULT_TX_PTHRESH ((hw->mac.type == e1000_i354) ? 20 : 8)
> #define IGB_DEFAULT_TX_HTHRESH 1
> --
> 1.9.3
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [dpdk-dev] [PATCH] igb: change default RX wthresh back
2016-03-31 7:29 ` Ananyev, Konstantin
@ 2016-04-01 0:39 ` Lu, Wenzhuo
0 siblings, 0 replies; 3+ messages in thread
From: Lu, Wenzhuo @ 2016-04-01 0:39 UTC (permalink / raw)
To: Ananyev, Konstantin, dev
Hi Konstantin,
> -----Original Message-----
> From: Ananyev, Konstantin
> Sent: Thursday, March 31, 2016 3:30 PM
> To: Lu, Wenzhuo; dev@dpdk.org
> Cc: Lu, Wenzhuo
> Subject: RE: [dpdk-dev] [PATCH] igb: change default RX wthresh back
>
>
> Hi Wenzhuo,
> >
> > A problem is found on i350 VF. TX will happen once per 4 packets. If
> > only 1~3 packets are received, they will not be forwarded.
> >
> > The reason is the default RX write-back threshold is changed to 4.
> > This patch changes the value back to 0, so every packet can be handled
> > immediately.
> >
> > Fixes: 4a41c17dba18 (igb: set default thresholds based on MAC type)
> > Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
> > ---
> > drivers/net/e1000/igb_ethdev.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/e1000/igb_ethdev.c
> > b/drivers/net/e1000/igb_ethdev.c index bd0ae26..34120ae 100644
> > --- a/drivers/net/e1000/igb_ethdev.c
> > +++ b/drivers/net/e1000/igb_ethdev.c
> > @@ -64,7 +64,7 @@
> >
> > #define IGB_DEFAULT_RX_PTHRESH ((hw->mac.type == e1000_i354) ? 12 :
> 8)
> > #define IGB_DEFAULT_RX_HTHRESH 8
> > -#define IGB_DEFAULT_RX_WTHRESH ((hw->mac.type == e1000_82576) ?
> 1 : 4)
> > +#define IGB_DEFAULT_RX_WTHRESH 0
>
> But that still doesn't prevent user from setting wthresh to whatever he likes
> inside rx_queue_setup(), so the problem persists right?
> As a side notice, it seems really bad practice to use implicit variables inside
> macro definition.
> Konstantin
Yes, you're right. It doesn't prevent the user from changing the value to trigger the problem.
I'll withdraw this patch and create another one for this problem. Thanks.
>
> >
> > #define IGB_DEFAULT_TX_PTHRESH ((hw->mac.type == e1000_i354) ? 20 :
> 8)
> > #define IGB_DEFAULT_TX_HTHRESH 1
> > --
> > 1.9.3
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-04-01 0:39 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-31 6:18 [dpdk-dev] [PATCH] igb: change default RX wthresh back Wenzhuo Lu
2016-03-31 7:29 ` Ananyev, Konstantin
2016-04-01 0:39 ` Lu, Wenzhuo
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).