From: James Hogan <james.hogan-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
To: Dan Carpenter <dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
Cc: devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b@public.gmane.org,
andreas.dilger-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
Chen Gang
<gang.chen.5i5j-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Greg KH
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
bergwolf-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
oleg.drokin-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
jacques-charles.lafoucriere-KCE40YydGKI@public.gmane.org,
jinshan.xiong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
linux-metag-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH] drivers: staging: lustre: lustre: include: add "__attribute__((packed))" for the related union
Date: Mon, 20 Jan 2014 13:38:57 +0000 [thread overview]
Message-ID: <52DD26F1.20104@imgtec.com> (raw)
In-Reply-To: <20140120130116.GW7444@mwanda>
On 20/01/14 13:01, Dan Carpenter wrote:
> It would be easy enough to make the compiler complain about any union
> which would normally have size which is not a multiple of 4.
>
> Warning: union will be padded with 2 bytes unless __attribute__((packed)).
>
> Otherwise you will be fighting this for ever.
A good idea, but the problem is that most of the time it just doesn't
matter since all users of the data structure do so with the same ABI. We
already expect the compiler to take some liberties with padding and
alignment since the C standard permits it, so it's only when the exact
layout really matters (data structures dealing with hardware, stored to
disk, or passed over networks) that it ever becomes a problem.
> Are you sure it's padding the unions, and not just treating the unions
> as structs?
Yes
> What is the size of this union?
>
> union a {
> int x;
> short y;
> };
4
Thanks
James
--
To unsubscribe from this list: send the line "unsubscribe linux-metag" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2014-01-20 13:38 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-18 9:50 [PATCH] drivers: staging: lustre: lustre: include: add "__attribute__((packed))" for the related union Chen Gang
2014-01-18 10:05 ` Dan Carpenter
2014-01-18 10:26 ` Chen Gang
2014-01-18 14:24 ` Dan Carpenter
2014-01-19 10:07 ` Chen Gang
[not found] ` <52DBA3D4.3090308-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-01-20 11:56 ` James Hogan
2014-01-20 12:30 ` Dan Carpenter
2014-01-20 12:37 ` James Hogan
2014-01-20 12:56 ` Dan Carpenter
2014-01-20 13:01 ` Dan Carpenter
2014-01-20 13:38 ` James Hogan [this message]
2014-01-20 21:13 ` Dan Carpenter
2014-01-21 10:36 ` James Hogan
2014-01-25 11:55 ` Chen Gang
2014-02-01 13:57 ` Chen Gang
2014-02-03 8:58 ` Dan Carpenter
2014-02-03 10:03 ` Chen Gang
[not found] ` <52EF6965.6040406-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-02-03 11:35 ` Chen Gang
2014-02-03 10:05 ` David Laight
2014-02-03 10:22 ` James Hogan
2014-02-03 10:30 ` Chen Gang
[not found] ` <52EF6DCC.6040807-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
2014-02-03 10:35 ` David Laight
2014-02-03 11:02 ` James Hogan
2014-02-03 11:54 ` David Laight
[not found] ` <063D6719AE5E284EB5DD2968C1650D6D0F6B772B-VkEWCZq2GCInGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2014-02-03 10:25 ` Chen Gang
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=52DD26F1.20104@imgtec.com \
--to=james.hogan-1axoqhu6uovqt0dzr+alfa@public.gmane.org \
--cc=andreas.dilger-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=bergwolf-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org \
--cc=devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b@public.gmane.org \
--cc=gang.chen.5i5j-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=jacques-charles.lafoucriere-KCE40YydGKI@public.gmane.org \
--cc=jinshan.xiong-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-metag-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=oleg.drokin-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
/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).