> > Subject: [PATCH v3] net/iavf: revert fix VLAN insertion > > > > The vector Tx path does not support VLAN insertion via the L2TAG2 > > field, but the scalar path supports. The previous commit was to force > > to select scalar path as soon as kernel driver requests to use L2TAG2. > > In which situation, that kernel driver will request to use L2TAG2?
According to my tests, this happens when the kernel driver version is newer than 1.8.9 > > > > That logic is incorrect. Because other case like VLAN offloading not > > required but scalar path selected would have a significant performance drop > > . > > Therefore the following commit needs to revert. > > What will happen, if kernel driver request to use L2TAG2, but still vector > path is > selected? > The VLAN tag will be inserted to wrong location (inner of QinQ), and this behavior is inconsistent with PF (outer). > > > > commit 0d58caa7d6d1 ("net/iavf: fix VLAN insertion") > > > > After this commit reverted, the user can select scalar path with the > > parameter '--force-max-simd-bitwidth' if necessary. > > > > Fixes: 0d58caa7d6d1 ("net/iavf: fix VLAN insertion") > > > > Signed-off-by: Yiding Zhou <yidingx.z...@intel.com> > > --- > > v3: rebase and change commit log > > --- > > drivers/net/iavf/iavf_rxtx_vec_common.h | 3 --- > > 1 file changed, 3 deletions(-) > > > > diff --git a/drivers/net/iavf/iavf_rxtx_vec_common.h > > b/drivers/net/iavf/iavf_rxtx_vec_common.h > > index 4ab22c6b2b..a59cb2ceee 100644 > > --- a/drivers/net/iavf/iavf_rxtx_vec_common.h > > +++ b/drivers/net/iavf/iavf_rxtx_vec_common.h > > @@ -253,9 +253,6 @@ iavf_tx_vec_queue_default(struct iavf_tx_queue *txq) > > if (txq->offloads & IAVF_TX_NO_VECTOR_FLAGS) > > return -1; > > > > - if (txq->vlan_flag == IAVF_TX_FLAGS_VLAN_TAG_LOC_L2TAG2) > > - return -1; > > - > > if (txq->offloads & IAVF_TX_VECTOR_OFFLOAD) > > return IAVF_VECTOR_OFFLOAD_PATH; > > > > -- > > 2.34.1