On Sun, Jul 5, 2020 at 10:19 AM Eli Cohen <e...@mellanox.com> wrote: > > On Fri, Jul 03, 2020 at 12:33:58PM +0300, Or Gerlitz wrote: > > On Fri, Jul 3, 2020 at 1:24 AM Saeed Mahameed <sae...@mellanox.com> wrote: > > > From: Eli Cohen <e...@mellanox.com> > > > > > > Net devices might be removed. For example, a vxlan device could be > > > deleted and its ifnidex would become invalid. Use dev_get_by_index() > > > instead of __dev_get_by_index() to hold reference on the device while > > > accessing it and release after done. > > > > So if user space app installed a tc rule and then crashed or just > > exited without > > uninstalling the rule, the mirred (vxlan, vf rep, etc) device could > > never be removed? > > Why do you think so? I decrease ref count, unconditionally, right after > returning from mlx5e_attach_encap().
so what are we protecting here against? someone removing the device while the tc rule is being added? why do it in the driver and not higher in the tc stack? if I got you correctly, the same problem can happen for sw only (skip-hw) rules