Message ID | YzOie0dkiQ43EPnu@makrotopia.org (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | net: ethernet: mtk_eth_soc: fix state in __mtk_foe_entry_clear | expand |
> Setting ib1 state to MTK_FOE_STATE_UNBIND in __mtk_foe_entry_clear > routine as done by commit 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: > fix typo in __mtk_foe_entry_clear") breaks flow offloading, at least > on older MTK_NETSYS_V1 SoCs; OpenWrt users have confirmed the bug on > MT7622 and MT7621 systems. > Felix Fietkau suggested to use MTK_FOE_STATE_INVALID instead which > works well on both, MTK_NETSYS_V1 and MTK_NETSYS_V2. > > Tested on MT7622 (Linksys E8450) and MT7986 (BananaPi BPI-R3). > > Suggested-by: Felix Fietkau <nbd@nbd.name> > Fixes: 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear") > Fixes: 33fc42de33278 ("net: ethernet: mtk_eth_soc: support creating mac address based offload entries") > Signed-off-by: Daniel Golle <daniel@makrotopia.org> Acked-by: Lorenzo Bianconi <lorenzo@kernel.org> > --- > drivers/net/ethernet/mediatek/mtk_ppe.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/mediatek/mtk_ppe.c b/drivers/net/ethernet/mediatek/mtk_ppe.c > index 887f430734f747..ae00e572390d7b 100644 > --- a/drivers/net/ethernet/mediatek/mtk_ppe.c > +++ b/drivers/net/ethernet/mediatek/mtk_ppe.c > @@ -442,7 +442,7 @@ __mtk_foe_entry_clear(struct mtk_ppe *ppe, struct mtk_flow_entry *entry) > struct mtk_foe_entry *hwe = mtk_foe_get_entry(ppe, entry->hash); > > hwe->ib1 &= ~MTK_FOE_IB1_STATE; > - hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_UNBIND); > + hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID); > dma_wmb(); > } > entry->hash = 0xffff; > -- > 2.37.3 >
On Wed, 28 Sep 2022 02:25:15 +0100 Daniel Golle wrote: > Setting ib1 state to MTK_FOE_STATE_UNBIND in __mtk_foe_entry_clear > routine as done by commit 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: > fix typo in __mtk_foe_entry_clear") breaks flow offloading, at least > on older MTK_NETSYS_V1 SoCs; OpenWrt users have confirmed the bug on > MT7622 and MT7621 systems. > Felix Fietkau suggested to use MTK_FOE_STATE_INVALID instead which > works well on both, MTK_NETSYS_V1 and MTK_NETSYS_V2. > > Tested on MT7622 (Linksys E8450) and MT7986 (BananaPi BPI-R3). > > Suggested-by: Felix Fietkau <nbd@nbd.name> > Fixes: 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear") > Fixes: 33fc42de33278 ("net: ethernet: mtk_eth_soc: support creating mac address based offload entries") > Signed-off-by: Daniel Golle <daniel@makrotopia.org> Looks like this patch is generated on top of net-next while it fixes a bug in net (judging by mention of 0e80707d94e4c8). Please rebase on top of net and resent, we'll deal with the conflict.
diff --git a/drivers/net/ethernet/mediatek/mtk_ppe.c b/drivers/net/ethernet/mediatek/mtk_ppe.c index 887f430734f747..ae00e572390d7b 100644 --- a/drivers/net/ethernet/mediatek/mtk_ppe.c +++ b/drivers/net/ethernet/mediatek/mtk_ppe.c @@ -442,7 +442,7 @@ __mtk_foe_entry_clear(struct mtk_ppe *ppe, struct mtk_flow_entry *entry) struct mtk_foe_entry *hwe = mtk_foe_get_entry(ppe, entry->hash); hwe->ib1 &= ~MTK_FOE_IB1_STATE; - hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_UNBIND); + hwe->ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, MTK_FOE_STATE_INVALID); dma_wmb(); } entry->hash = 0xffff;
Setting ib1 state to MTK_FOE_STATE_UNBIND in __mtk_foe_entry_clear routine as done by commit 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear") breaks flow offloading, at least on older MTK_NETSYS_V1 SoCs; OpenWrt users have confirmed the bug on MT7622 and MT7621 systems. Felix Fietkau suggested to use MTK_FOE_STATE_INVALID instead which works well on both, MTK_NETSYS_V1 and MTK_NETSYS_V2. Tested on MT7622 (Linksys E8450) and MT7986 (BananaPi BPI-R3). Suggested-by: Felix Fietkau <nbd@nbd.name> Fixes: 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear") Fixes: 33fc42de33278 ("net: ethernet: mtk_eth_soc: support creating mac address based offload entries") Signed-off-by: Daniel Golle <daniel@makrotopia.org> --- drivers/net/ethernet/mediatek/mtk_ppe.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)