On Fri, 02 Oct 2020 17:13:28 +0200 Johannes Berg wrote:
> On Fri, 2020-10-02 at 08:09 -0700, Jakub Kicinski wrote:
> > On Fri, 02 Oct 2020 17:04:11 +0200 Johannes Berg wrote:  
> > > > > Yeah, that'd work. I'd probably wonder if we shouldn't do
> > > > > 
> > > > > [OP_POLICY]
> > > > >   [OP] -> (u32, u32)
> > > > > 
> > > > > in a struct with two u32's, since that's quite a bit more compact.    
> > > > 
> > > > What do we do if the op doesn't have a dump or do callback?
> > > > 0 is a valid policy ID, sadly :(    
> > > 
> > > Hm, good point. We could do -1 since that can't ever be reached though.
> > > 
> > > But compactness isn't really that necessary here anyway, so ...  
> > 
> > Cool, sounds like a plan.
> > 
> > This series should be good to merge, then.  
> 
> I suppose, I thought you wanted to change it to have separate dump/do
> policies? Whatever you like there, I don't really care much :)

I just want to make the uAPI future-proof for now.

At a quick look ethtool doesn't really accept any attributes but
headers for GET requests. DO and DUMP are the same there so it's 
not a priority for me.

> But I can also change my patches later to separately advertise dump/do
> policies, and simply always use the same one for now.

Right that was what I was thinking. Basically:

        if ((op.doit && nla_put_u32(skb, CTRL_whatever_DO, idx)) ||
            (op.dumpit && nla_put_u32(skb, CTRL_whatever_DUMP, idx)))
                goto nla_put_failure;

> But this series does conflict with the little bugfix I also sent, could
> you please take a look?
> 
> https://lore.kernel.org/netdev/20201002094604.480c760e3c47.I7811da1539351a26cd0e5a10b98a8842cfbc1b55@changeid/
> 
> I'm not really sure how to handle.

Yeah, just noticed that one now :S

Dave, are you planning a PR to Linus soon by any chance? The conflict
between this series and Johannes's fix would be logically simple to
resolve but not trivial :(

Reply via email to