Mon, Feb 04, 2019 at 01:32:51PM CET, [email protected] wrote: >Extend tcf_chain with new filter_chain_lock mutex. Always lock the chain >when accessing filter_chain list, instead of relying on rtnl lock. >Dereference filter_chain with tcf_chain_dereference() lockdep macro to >verify that all users of chain_list have the lock taken. > >Rearrange tp insert/remove code in tc_new_tfilter/tc_del_tfilter to execute >all necessary code while holding chain lock in order to prevent >invalidation of chain_info structure by potential concurrent change. This >also serializes calls to tcf_chain0_head_change(), which allows head change >callbacks to rely on filter_chain_lock for synchronization instead of rtnl >mutex. > >Signed-off-by: Vlad Buslov <[email protected]>
Acked-by: Jiri Pirko <[email protected]>
