Re: [PATCH net-next v2] block/drbd: use nla_put_u64_64bit()

From: Nicolas Dichtel
Date: Tue May 03 2016 - 08:07:17 EST


Le 03/05/2016 12:06, Lars Ellenberg a écrit :
> On Tue, May 03, 2016 at 11:39:18AM +0200, Nicolas Dichtel wrote:
>> Two new handlers have been defined in genl_magic_ headers:
>> - __field2: the corresponding nla_put() function (nla_put_flag()) takes
>> only two args
>> - __field4: the corresponding nla_put() function (nla_put_u64_64bit())
>> takes four args
>>
>> __field2 allows us to define __unspec_field for padding attribute.
>> __field4 allows us to update the definition of __u64_field: the pad
>> attribute should now be specified.
>
> Please just NOT use an additional "field",
> but always use 0 to pad.
>
> Patch is much shorter as well, see below.
I don't think that the goal is to make the shortest patch...
But frankly, I don't care. The goal was to use the new interface in a proper
way, like every other subsystem.

>
> Attribute type "0" is not used,
> and will never be of semantic value,
> but always be ignored in the DRBD netlink family.
>
> Whereas using some arbitrary value will be wrong,
> and will needlessly break userland.
An application should always ignore unknown attribute, this is a golden rule.
Now if you know that this patch will break applications (which one exactly?), we
can use your proposal.


Regards,
Nicolas