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 at 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