Re: [announce] new tree: "fix all build warnings, on all configs"
From: H. Peter Anvin
Date: Mon Oct 20 2008 - 12:51:20 EST
Linus Torvalds wrote:
The old code was correct. Your code is shit. And you didn't fix
_anything_.
case 5:
*(int *)to = *(int *)from;
- *((short *)to + 3) = *((short *)from + 3);
+ *((char *)(to + 3)) = *((char *)(from + 3));
return to;
Are you just making changes by randomly inserting and deleting characters
until you don't see warnings? Or what?
That thing is supposed to be a 5-byte memcpy. Not a "take a random byte
from a random location and move it to another random location". That would
be "randcpy()", not "memcpy()".
That is not a 5-byte memcopy. In *either* version!
In the "before" case, it copies bytes 0, 1, 2, 3, 6 and 7.
In the "after" case, it copies bytes 0, 1 and 2.
Presumably it *should* be:
*((char *)to + 4) = *((char *)from + 4);
-hpa
--
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/