[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <063D6719AE5E284EB5DD2968C1650D6D455E6C@AcuExch.aculab.com>
Date: Thu, 9 Jan 2014 09:07:39 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Fan Du' <fan.du@...driver.com>
CC: Steffen Klassert <steffen.klassert@...unet.com>,
"davem@...emloft.net" <davem@...emloft.net>,
"stephen@...workplumber.org" <stephen@...workplumber.org>,
"dev@...ts.strongswan.org" <dev@...ts.strongswan.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: RE: [PATCH net-next 0/2] Pack struct xfrm_usersa_info and struct
xfrm_userpolicy_info
> From: Fan Du
> > Packing the structures is definitely wrong. Some 32bit systems (IIRC sparc)
> > align 64bit items on 8 byte boundaries. Not to mention the expensive byte
> > by byte accesses this forces on some systems.
>
> I don't know much about sparc, if I read your message right, you mean 32bit sparc
> system also has padding even if pack attribute is supplied.
Without packing:
On 32bit x86 64bit integers are aligned on 4byte boundaries.
On 32bit sparc 64bit integers are aligned on 8byte boundaries.
If the structure is packed then, for sparc (etc), the compiler has
to generate code to read everything using byte accesses.
David
Powered by blists - more mailing lists