[U-Boot] [PATCH v2] display_buffer: fix misaligned buffer

Reinhard Meyer u-boot at emk-elektronik.de
Wed Sep 8 10:04:37 CEST 2010


On 08.09.2010 09:48, Wolfgang Denk wrote:
> Dear Reinhard Meyer,
>
> In message<4C87065A.5050904 at emk-elektronik.de>  you wrote:
>> Dear Wolfgang Denk,
>>>> +	/* linebuf as a union causes proper alignment */
>>>> +	union linebuf {
>>>> +		uint32_t ui[MAX_LINE_LENGTH_BYTES/4 + 1];
>>>> +		uint16_t us[MAX_LINE_LENGTH_BYTES/2 + 1];
>>>> +		uint8_t  uc[MAX_LINE_LENGTH_BYTES/1 + 1];
>>>
>>> Please replace the magic numbers 4, 2 and 1 by respective sizeof().
>>
>>
>> AND
>>
>>
>>   >  Please let's use the attribute version.
>>
>> Which shall it be now???
>
> Well, my personal preference would be to use "attribute", but after
> the long discussion it seems the general preference is the version
> above so I will not block this.  I just ask to change the "magic
> numbers" 1, 2 and 4 into sizeof() so it's obvious where these are
> coming from.

OK, I will change that, even add the {} at the for() loop.

I am working with too many (non-gnu) C compilers and have seen too many
ways for "attribute", "#pragma", etc. So I prefer to do things
within the standard "C" language ;)

Reinhard


More information about the U-Boot mailing list