Re: [PATCH 00/14] Modify action API for implementing lockless actions

Jamal Hadi Salim
2018-05-14T18:03:25Z

On 14/05/18 10:27 AM, Vlad Buslov wrote:
> Currently, all netlink protocol handlers for updating rules, actions and
> qdiscs are protected with single global rtnl lock which removes any
> possibility for parallelism. This patch set is a first step to remove
> rtnl lock dependency from TC rules update path. It updates act API to
> use atomic operations, rcu and spinlocks for fine-grained locking. It
> also extend API with functions that are needed to update existing
> actions for parallel execution.
>
> Outline of changes:
> - Change tc action to use atomic reference and bind counters, rcu
> mechanism for cookie update.
> - Extend action ops API with 'delete' function and 'unlocked' flag.
> - Change action API to work with actions in lockless manner based on
> primitives implemented in previous patches.
> - Extend action API with new functions necessary to implement unlocked
> actions.

Please run all the tdc tests with these changes. This area has almost
good test coverage at this point. If you need help just ping me.

cheers,
jamal