[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160815.102349.379302333828628901.davem@davemloft.net>
Date: Mon, 15 Aug 2016 10:23:49 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: David.Laight@...LAB.COM
Cc: stefanha@...hat.com, ggarcia@...a.uab.cat, netdev@...r.kernel.org,
jhansen@...are.com, mst@...hat.com
Subject: Re: [PATCH 2/3] vsockmon: Add vsockmon device.
From: David Laight <David.Laight@...LAB.COM>
Date: Mon, 15 Aug 2016 16:38:36 +0000
> From: Stefan Hajnoczi
>> Sent: 10 August 2016 12:52
>> On Mon, Aug 08, 2016 at 06:14:41PM +0200, ggarcia@...a.uab.cat wrote:
>> > diff --git a/include/uapi/linux/vsockmon.h b/include/uapi/linux/vsockmon.h
>> > new file mode 100644
>> > index 0000000..739b4bf
>> > --- /dev/null
>> > +++ b/include/uapi/linux/vsockmon.h
>> > @@ -0,0 +1,35 @@
>> > +#ifndef _UAPI_VSOCKMON_H
>> > +#define _UAPI_VSOCKMON_H
>> > +
>> > +#include <linux/virtio_vsock.h>
>> > +
>> > +/* Structure of packets received trought the vsockmon device. */
>> > +
>> > +struct af_vsockmon_hdr {
>> > + __le64 src_cid;
>> > + __le64 dst_cid;
>> > + __le32 src_port;
>> > + __le32 dst_port;
>> > + __le16 op; /* enum af_vsockmon_op */
>> > + __le16 t; /* enum af_vosckmon_t */
>> > + __le16 len; /* sizeof(t_hdr) */
>> > + union {
>> > + struct virtio_vsock_hdr virtio_hdr;
>> > + } t_hdr;
>> > +} __attribute__((packed));
> ...
>
> Gah, another 'packed' structure.
> Have you looked at the amount of code the sparc64 compiler generates
> to access the structure members??
>
> You really want to add another 16bit field and enforce 64bit alignment
> on the header and all data blocks.
Indeed, avoid the packed attribute at all costs.
Powered by blists - more mailing lists