On Sun, Mar 4, 2012 at 2:19 PM, Matthew Wilcox <matthew@xxxxxx> wrote: > > To be fair, that wasn't the ARM core. That was the MEMC chip (roughly > equivalent to a northbridge). Also, there's no need for Linux to care > about that any more, since we removed the arm26 port in July 2007. As far > as I know, all arm32 cores have been coupled with memory controllers > that are functional. No, it wasn't just the memory controller. The ARM cores really did some crazy stuff. Loading an unaligned pointer resulted in loading the value from the aligned pointer, and then doing a byte rotate on the result. And it did so silently without a trap. So you didn't get the right value, *and* you didn't even get a trap to tell you that the CPU couldn't do it. That's just pure garbage. You can call it a "feature", but sane people call it a bug. The fact that it was *designed* to do that doesn't make it less buggy, it just makes it sad. Now, the modern "bigger" ARM cores don't have that problem, but the small cores still do, afaik. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html