Re: Fix locking in input

From: Linus Torvalds
Date: Wed Dec 03 2003 - 20:32:48 EST




On Wed, 3 Dec 2003, Timothy Miller wrote:
>
> This is MOSTLY true, but not entirely. As I recall, Alpha has two
> addressing modes: Sparse and Dense.

Nope. Alpha only does "dense" addressing on a CPU level.

What the _system_ designers on most PCI systems did was to map the PCI
address space twice: once through a "dense" mapping and once through a
"sparse" mapping. In the sparse mapping the low address bits give byte
enable information, while in the dense mapping you can onyl do 32-bit and
64-bit aligned operations.

But the original alpha CPU couldn't do the sparse mapping - in particular
the above only worked with non-cached accesses.

So "real memory" was always dense, and could not atomically be accessed
with byte/word writes (you could use the atomic "load-locked" +
"store-conditional" to do them, but at a huge performance loss, and
obviously the compilers never did that).

Linus
-
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/