]> git.baikalelectronics.ru Git - kernel.git/commit
net: aquantia: fix vlans not working over bridged network
authorDmitry Bogdanov <dmitry.bogdanov@aquantia.com>
Sat, 22 Jun 2019 08:46:37 +0000 (08:46 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 26 Jun 2019 20:16:45 +0000 (13:16 -0700)
commit470119e92b79d696d68cc7693c6fee5780a17bb2
treead66e3687715511d84a27ba4c88be8f8ad8bb325
parent04d4f9397ba3aca823e716c0596775d3891f1584
net: aquantia: fix vlans not working over bridged network

In configuration of vlan over bridge over aquantia device
it was found that vlan tagged traffic is dropped on chip.

The reason is that bridge device enables promisc mode,
but in atlantic chip vlan filters will still apply.
So we have to corellate promisc settings with vlan configuration.

The solution is to track in a separate state variable the
need of vlan forced promisc. And also consider generic
promisc configuration when doing vlan filter config.

Fixes: 7f33a1ab29d2 ("net: aquantia: add support of rx-vlan-filter offload")
Signed-off-by: Dmitry Bogdanov <dmitry.bogdanov@aquantia.com>
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/aquantia/atlantic/aq_filters.c
drivers/net/ethernet/aquantia/atlantic/aq_nic.c
drivers/net/ethernet/aquantia/atlantic/aq_nic.h
drivers/net/ethernet/aquantia/atlantic/hw_atl/hw_atl_b0.c