[alsa-devel] [PATCH 4/8] firmware: Sigma: Mark firmware strutcs packed

Lars-Peter Clausen lars at metafoo.de
Fri Nov 25 11:48:20 CET 2011


On 11/24/2011 06:19 PM, Mike Frysinger wrote:
> On Thursday 24 November 2011 07:48:23 Lars-Peter Clausen wrote:
>> Mark structs which are embedded into the firmware as packed to avoid
>> alignment issues.
> 
> while in general this makes sense, i designed the struct layout specifically to 
> work on any sane system.  that means 8bits align on 8bits, 16bits align on 
> 16bits, and 32bits align on 32bits.
> 
> do you see any place where this is not the case ?  otherwise, using __packed 
> by itself doesn't make much sense unless you also change all the loads from 
> the struct to the get_unaligned variety which would add useless overhead to 
> many embedded parts.
> 
> all in all, i'd omit the __packed markings since they're unnecessary.
> -mike

While you are right I think it's generally a good idea to mark anything as
packed, where we don't have direct influence on the alignment, to avoid
unpleasant suppresses. The compiler will usually take of performing proper
unaligned reads. I've though about adding a __aligned__(2) to the struct,
but since the majority of the data is 8bit data the overhead should be
negligible.

- Lars


More information about the Alsa-devel mailing list