[PATCH 4/4] ARM: zImage: allow supplementing appended DTB with traditional ATAG data
David Brown
davidb at codeaurora.org
Tue Jun 21 19:13:35 EDT 2011
On Tue, Jun 21 2011, David Brown wrote:
> On Mon, Jun 20 2011, Nicolas Pitre wrote:
>
>> +void *memmove(void *__dest, __const void *__src, size_t __n)
>> +{
>> + unsigned char *d = __dest;
>> + const unsigned char *s = __src;
>> +
>> + if (__dest == __src)
>> + return __dest;
>> +
>> + if (__dest < __src)
>> + return memcpy(__dest, __src, __n);
>> +
>> + while (--__n >= 0)
>> + d[__n] = s[__n];
>> +
>> + return __dest;
>> +}
>
> Ahh, found it. size_t is unsigned, so the while loop never terminates.
> Something like:
>
> for (; __n; __n--)
> d[__n] = s[__n];
Ugh. How about if I don't replace a broken version with a different
broken version.
while (__n) {
__n--;
d[__n] = s[__n];
}
Now, I don't need any extra fields in my DTB, and it correctly inserts
the ATAG values.
David
--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.
More information about the linux-arm-kernel
mailing list