[PATCH] USB: ehci: use packed,aligned(4) instead of removing the packed attribute
From: stern@rowland.harvard.edu (Alan Stern)
Date: 2011-06-21 15:06:40
Also in:
lkml
From: stern@rowland.harvard.edu (Alan Stern)
Date: 2011-06-21 15:06:40
Also in:
lkml
On Mon, 20 Jun 2011, Nicolas Pitre wrote:
On Mon, 20 Jun 2011, Alan Stern wrote:quoted
On Mon, 20 Jun 2011, Nicolas Pitre wrote:quoted
quoted
As far as I can tell, the other structures in ehci.h have ((aligned(32)) simply in order to save space, since there can be large numbers of these structures allocated.How can increasing the alignment to 32 bytes save space?No, no -- the alignment is _decreased_ to 32 bits. Without the attribute the alignment would have been 64 bits.The aligned attribute requires a byte value not a bit value. Maybe what you meant is ((aligned(4)) ?
Ah, very good point! No, I meant ((aligned(32))). Do "grep aligned drivers/usb/host/ehci.h" and you'll see. So my understanding was wrong; these structure really are being forced to a strict alignment. And indeed, now that I go back and look at the EHCI spec, it turns out that this alignment is required by the hardware. Okay, so this digression was irrelevant to our discussion. Forget I mentioned it... Alan Stern