Subject: Re: [RFC PATCH net] netns: fix GFP flags in rtnl_net_notifyid()

From: Guillaume Nault <[email-masked]>
Date: Sat, 19 Oct 2019 01:29:26 +0200

On Fri, Oct 18, 2019 at 01:55:46PM -0700, Pravin Shelar wrote:
> On Sun, Oct 13, 2019 at 3:22 PM Guillaume Nault <[email-masked]> wrote:
> > The point of my RFC is to know if it's possible to avoid all these
> > gfp_t flags, by allowing ovs_vport_cmd_fill_info() to sleep (at least
> > I'd like to figure out if it's worth spending time investigating this
> > path).
> >
> > To do so, we'd requires moving the ovs_vport_cmd_fill_info() call of
> > ovs_vport_cmd_{get,dump}() out of RCU critical section. Since we have
> > no reference counter, I believe we'd have to protect these calls with
> > ovs_lock() instead of RCU. Is that acceptable? If not, is there any
> > other way?
> 
> I do not see point of added complexity and serialized OVS flow dumps
> just to avoid GFP_ATOMIC allocations in some code path. What is issue
> passing the parameter as you have done in this patch?
> 
Adding the gfp_t parameter certainly isn't complex, but that's still
code churn for the affected functions. And since only very few call
paths actually needed GFP_ATOMIC, I wanted to investigate the
possibility of converting them.

But I'm fine with keeping the patch as is. I'll repost it formally.

Thanks for your review.

Guillaume