From: Yotam Gigi <yot...@mellanox.com> Date: Tue, 31 Jan 2017 15:14:29 +0200
> In the current version, the matchall internal state is split into two > structs: cls_matchall_head and cls_matchall_filter. This makes little > sense, as matchall instance supports only one filter, and there is no > situation where one exists and the other does not. In addition, that led > to some races when filter was deleted while packet was processed. > > Unify that two structs into one, thus simplifying the process of matchall > creation and deletion. As a result, the new, delete and get callbacks have > a dummy implementation where all the work is done in destroy and change > callbacks, as was done in cls_cgroup. > > Fixes: bf3994d2ed31 ("net/sched: introduce Match-all classifier") > Reported-by: Daniel Borkmann <dan...@iogearbox.net> > Signed-off-by: Yotam Gigi <yot...@mellanox.com> > Acked-by: Jiri Pirko <j...@mellanox.com> Applied and queued up for -stable, thanks.