bridge: Use vlan_vid_[add/del] instead of direct ndo_vlan_rx_[add/kill]_vid calls
authorToshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Wed, 13 Nov 2013 08:26:12 +0000 (17:26 +0900)
committerDavid S. Miller <davem@davemloft.net>
Thu, 14 Nov 2013 21:16:34 +0000 (16:16 -0500)
commit192368372d3d29fe04f6ed2a5255ae2d1b58cf76
tree48be97a14f425801e553fcae59a1e645736ed3e3
parent0125737accc5aac532719aecd80615364caa9e0f
bridge: Use vlan_vid_[add/del] instead of direct ndo_vlan_rx_[add/kill]_vid calls

We should use wrapper functions vlan_vid_[add/del] instead of
ndo_vlan_rx_[add/kill]_vid. Otherwise, we might be not able to communicate
using vlan interface in a certain situation.

Example of problematic case:
  vconfig add eth0 10
  brctl addif br0 eth0
  bridge vlan add dev eth0 vid 10
  bridge vlan del dev eth0 vid 10
  brctl delif br0 eth0
In this case, we cannot communicate via eth0.10 because vlan 10 is
filtered by NIC that has the vlan filtering feature.

Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br_vlan.c