Re: Correct usage of dev_base_lock in 2020

Vladimir Oltean
2020-11-30T22:42:52Z

On Mon, Nov 30, 2020 at 11:20:23PM +0100, Eric Dumazet wrote:
> On Mon, Nov 30, 2020 at 10:53 PM Vladimir Oltean <olteanv@gmail.com> wrote:
> >
> > On Mon, Nov 30, 2020 at 10:46:00PM +0100, Eric Dumazet wrote:
> > > You can not use dev_base_lock() or RCU and call an ndo_get_stats64()
> > > that could sleep.
> > >
> > > You can not for example start changing bonding, since bond_get_stats()
> > > could be called from non-sleepable context (net/core/net-procfs.c)
> > >
> > > I am still referring to your patch adding :
> > >
> > > + if (!rtnl_locked)
> > > + rtnl_lock();
> > >
> > > This is all I said.
> >
> > Ah, ok, well I didn't show you all the patches, did I?
>
>
> Have you sent them during Thanksgiving perhaps ?
>
> I suggest you follow normal submission process, sending patch series
> rather than inlining multiple patches in one email, this is becoming
> hard to follow.

No, I did not post these at all formally for review, nor do I intend to.
I just wrote them "for fun" (if this could be called fun) to get an idea
of how much there is to change, in the "best case" where I do no rework
to the locking at all, just use what's currently available. And I can't
submit these patches as-is, because of lockdep warnings in bonding. I
will post patches formally for review when I have a clear migration
plan.