Re: [PATCH] USB: ehci: use packed,aligned(4) instead of removingthe packed attribute

From: Alan Stern
Date: Tue Jun 21 2011 - 11:06:43 EST


On Mon, 20 Jun 2011, Nicolas Pitre wrote:

> On Mon, 20 Jun 2011, Alan Stern wrote:
>
> > On Mon, 20 Jun 2011, Nicolas Pitre wrote:
> >
> > > > 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

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/