From: Nikolay Aleksandrov <nikolay@xxxxxxxxxxxxxxxxxxx> Hi, Patch 01 converts the vlgrp member to use rcu as it was already used in a similar way so better to make it official and use all the available RCU instrumentation. Patch 02 fixes a bug where the vlan_list can be traversed without rtnl or rcu held which could lead to using freed entries. Patch 03 removes some redundant code that isn't needed anymore. Patch 04 fixes a bug reported by Ido Schimmel about the vlan_flush order and switchdevs, it moves it back. v2: patch 03 and 04 are new, couldn't escape the second synchronize_rcu() since the rhtable destruction can sleep Thank you, Nik Nikolay Aleksandrov (4): bridge: vlan: use proper rcu for the vlgrp member bridge: vlan: use rcu for vlan_list traversal in br_fill_ifinfo bridge: vlan: drop unnecessary flush code bridge: vlan: move back vlan_flush net/bridge/br_device.c | 2 +- net/bridge/br_forward.c | 6 +-- net/bridge/br_if.c | 3 +- net/bridge/br_input.c | 4 +- net/bridge/br_netlink.c | 25 +++++---- net/bridge/br_private.h | 33 ++++++++++-- net/bridge/br_vlan.c | 133 ++++++++++++++++++++++++++++++------------------ 7 files changed, 135 insertions(+), 71 deletions(-) -- 2.4.3