Re: [PATCH net-next v2] block/drbd: use nla_put_u64_64bit()
From: Lars Ellenberg
Date: Wed May 04 2016 - 05:05:45 EST
On Tue, May 03, 2016 at 12:05:56PM -0400, David Miller wrote:
> From: Lars Ellenberg <lars.ellenberg@xxxxxxxxxx>
> Date: Tue, 3 May 2016 12:06:44 +0200
>
> > Please just NOT use an additional "field",
> > but always use 0 to pad.
>
> You can't, it doesn't work.
I did, and it *did* work.
At least, it appeared to.
I'm not talking about every user of netlink out there.
That I don't know. But specifically for DRBD netlink,
from what my experiments tell me, it works just fine.
> We are adding a new field to every netlink protocol family that has
> this alignment problem.
We don't have an "alignment problem" there, btw.
Last time I checked, we did work fine without this alignment magic,
we already take care of that, yes, even on affected architectures.
On Tue, May 03, 2016 at 12:06:52PM -0400, David Miller wrote:
> From: Lars Ellenberg <lars.ellenberg@xxxxxxxxxx>
> Date: Tue, 3 May 2016 12:06:44 +0200
>
> > Whereas using some arbitrary value will be wrong,
> > and will needlessly break userland.
>
> It cannot break userland.
It can, if those tags have been used already.
There is DRBD out-of-tree as well,
it usually is ahead of in-tree DRBD.
But yes, I could obviously check and assign and reserve some
not-yet-used tag to all of them.
I don't see why, though, given that 0 (appearently) works fine.
Can you elaborate why and how that does not work?
Lars