[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJ3xEMje5d_Ffn05jDfY--jwNb9QZn8yS8MJcmy8zdxWzyc=FQ@mail.gmail.com>
Date: Mon, 6 Jul 2020 09:13:06 +0300
From: Or Gerlitz <gerlitz.or@...il.com>
To: Eli Cohen <eli@...lanox.com>
Cc: Saeed Mahameed <saeedm@...lanox.com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Linux Netdev List <netdev@...r.kernel.org>,
Vlad Buslov <vladbu@...lanox.com>
Subject: Re: [net 05/11] net/mlx5e: Hold reference on mirred devices while
accessing them
On Sun, Jul 5, 2020 at 10:19 AM Eli Cohen <eli@...lanox.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 <saeedm@...lanox.com> wrote:
> > > From: Eli Cohen <eli@...lanox.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
Powered by blists - more mailing lists