netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nicolas Dichtel <nicolas.dichtel@6wind.com>
To: davem@davemloft.net, netdev@vger.kernel.org,
	philipp.reisner@linbit.com, drbd-dev@lists.linbit.com,
	linux-kernel@vger.kernel.org
Subject: Re: [Drbd-dev] [PATCH net-next v3] block/drbd: align properly u64 in nl messages
Date: Tue, 10 May 2016 12:06:40 +0200	[thread overview]
Message-ID: <5731B2B0.3000400@6wind.com> (raw)
In-Reply-To: <20160510094023.GC16459@soda.linbit>

Le 10/05/2016 11:40, Lars Ellenberg a écrit :
> On Tue, May 10, 2016 at 11:09:53AM +0200, Nicolas Dichtel wrote:
>> Le 09/05/2016 15:15, Lars Ellenberg a écrit :
>>> On Mon, May 09, 2016 at 11:40:20AM +0200, Nicolas Dichtel wrote:
>> [snip]
>>>> Maybe prefixing genl_magic_func.h and genl_magic_struct.h by 'drbd_'
>>>> could be interesting so that new module won't use it. What is your
>>>> opinion?
>>>
>>> This was supposed to not be DRBD specific.  But it might even still
>>> need some massaging before it was truly generic. And obviously,
>>> it does not meet the taste of genetlink folks, to say the least :(
>> Yes, this file is not generic and netlink APIs are never defined like this.
>> These tons of macro complexifies the code too much. It's overengineering for
>> what purpose?
> 
> If we introduce a new config option,
> we have to add it to the config scanner (one line),
> define min, max, default and scale (four short defines),
> and add it to the netlink definition here (one line).
> Done, rest of the code is generated,
> both on the kernel side,
> and on the drbd-utils side used to talk to the kernel.
> We found that to be very convenient.
Ok.

> 
>> Small examples:
>>  - the drbd netlink API is not exported via uapi (I wonder how apps using this
>>    API get it)
> 
> There used to be a time where there was no "uapi".
> (I wonder how apps ever worked back then).
At that time, include/linux/ was exported ;-)

> 
>>  - v2 of the patch is nacked because adding a new attribute may break existing
> 
> No.
> 
> But because the "new" attributes you chose have not been new,
> but already used (though not yet merged back into mainline yet).
> (Which you did not realize, and had no obvious way of knowing.
>  Could have been fixed.).
Ok.

> 
> And because your patch introduced useless new members to the structs.
> (Could also have been fixed).
> 
> And because I did not see any use defining that many new "padding attributes"
> for no reason, where the obvious (to me) choice was to use 0, and you
> did not even try to explain why that would have been a bad choice.
Because some nl APIs were wrongly use 0 as a valid attribute we make the choice
of always adding a new attribute for padding to be sure to not break existing API.
And yes, in drdb it does not seem to be the case.

> Is this going somewhere?
I'm just trying to understand things.


Regards,
Nicolas

  reply	other threads:[~2016-05-10 10:06 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-26  8:06 [PATCH net-next 0/8] netlink: align attributes when needed (patchset #3) Nicolas Dichtel
2016-04-26  8:06 ` [PATCH net-next 5/8] ovs: align nlattr properly when needed Nicolas Dichtel
2016-04-26  8:06 ` [PATCH net-next 6/8] rtnl: " Nicolas Dichtel
     [not found] ` <1461657978-13360-1-git-send-email-nicolas.dichtel-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-04-26  8:06   ` [PATCH net-next 1/8] macsec: use nla_put_u64_64bit() Nicolas Dichtel
2016-04-26  8:06   ` [PATCH net-next 2/8] drivers/wireless: " Nicolas Dichtel
2016-04-26  8:06   ` [PATCH net-next 3/8] fs/quota: " Nicolas Dichtel
     [not found]     ` <1461657978-13360-4-git-send-email-nicolas.dichtel-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-04-26 11:08       ` Jan Kara
     [not found]         ` <20160426110848.GD27612-4I4JzKEfoa/jFM9bn6wA6Q@public.gmane.org>
2016-04-26 12:31           ` Nicolas Dichtel
     [not found]             ` <571F5FBE.8050900-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-04-26 12:37               ` Jan Kara
2016-04-26 16:24         ` David Miller
2016-04-26  8:06   ` [PATCH net-next 4/8] sock_diag: align nlattr properly when needed Nicolas Dichtel
2016-04-26  8:06   ` [PATCH net-next 7/8] neigh: " Nicolas Dichtel
2016-04-26  8:06   ` [PATCH net-next 8/8] sched: " Nicolas Dichtel
2016-04-26 11:54   ` [PATCH net-next 0/8] netlink: align attributes when needed (patchset #3) Lars Ellenberg
     [not found]     ` <20160426115427.GB20950-w1SgEEioFePxa46PmUWvFg@public.gmane.org>
2016-04-26 12:18       ` Lars Ellenberg
2016-05-03  8:50         ` [PATCH net-next] block/drbd: use nla_put_u64_64bit() Nicolas Dichtel
2016-05-03  9:28           ` Nicolas Dichtel
2016-05-03  9:39             ` [PATCH net-next v2] " Nicolas Dichtel
     [not found]               ` <1462268358-19044-1-git-send-email-nicolas.dichtel-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-05-03 10:06                 ` Lars Ellenberg
2016-05-03 12:07                   ` Nicolas Dichtel
2016-05-03 16:05                   ` David Miller
     [not found]                     ` <20160503.120556.1317913903199470646.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2016-05-04  9:05                       ` Lars Ellenberg
2016-05-04 12:49                         ` Nicolas Dichtel
     [not found]                           ` <5729EFBC.7040002-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-05-04 12:52                             ` Lars Ellenberg
2016-05-04 14:27                           ` Eric Dumazet
2016-05-04 16:50                             ` David Miller
2016-05-04 17:13                               ` Eric Dumazet
2016-05-04 16:47                           ` David Miller
2016-05-03 16:06                   ` David Miller
2016-05-09  9:40                   ` [PATCH net-next v3] block/drbd: align properly u64 in nl messages Nicolas Dichtel
     [not found]                     ` <1462786820-15519-1-git-send-email-nicolas.dichtel-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-05-09 13:15                       ` Lars Ellenberg
     [not found]                         ` <20160509131547.GX16459-w1SgEEioFePxa46PmUWvFg@public.gmane.org>
2016-05-10  9:09                           ` Nicolas Dichtel
     [not found]                             ` <5731A561.6090509-pdR9zngts4EAvxtiuMwx3w@public.gmane.org>
2016-05-10  9:40                               ` Lars Ellenberg
2016-05-10 10:06                                 ` Nicolas Dichtel [this message]
2016-05-10 15:39                                 ` [Drbd-dev] " David Miller
     [not found]                                   ` <20160510.113949.2077250222547175741.davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
2016-05-10 19:09                                     ` Lars Ellenberg
2016-05-10 19:26                                       ` [Drbd-dev] " David Miller
2016-04-26 16:25       ` [PATCH net-next 0/8] netlink: align attributes when needed (patchset #3) David Miller
2016-04-26 16:02   ` David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5731B2B0.3000400@6wind.com \
    --to=nicolas.dichtel@6wind.com \
    --cc=davem@davemloft.net \
    --cc=drbd-dev@lists.linbit.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=philipp.reisner@linbit.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).