Re: [PATCH v8 net-next 1/1] hv_sock: introduce Hyper-V Sockets
From: David Miller
Date: Wed Apr 13 2016 - 22:30:37 EST
From: Dexuan Cui <decui@xxxxxxxxxxxxx>
Date: Thu, 7 Apr 2016 18:36:51 -0700
> +struct vmpipe_proto_header {
> + u32 pkt_type;
> + u32 data_size;
> +} __packed;
There is no reason to specify __packed here.
The types are strongly sized to word aligned quantities.
No holes are possible in this structure, nor is any padding
possible either.
Do not ever slap __packed onto protocol or HW defined structures,
simply just define them properly with proper types and explicit
padding when necessary.
> + struct {
> + struct vmpipe_proto_header hdr;
> + char buf[HVSOCK_SND_BUF_SZ];
> + } __packed send;
And so on, and so forth..
I'm really disappointed that I couldn't even get one hunk into this
patch submission without finding a major problem.
I expect this patch to take several more iterations before I can even
come close to applying it. So please set your expectations properly,
and also it seems like nobody else wants to even review this stuff
either. It is you who needs to find a way to change all of this, not
me.