MMIO and gcc re-ordering issue

Linus Torvalds torvalds at linux-foundation.org
Wed Jun 4 00:47:26 EST 2008



On Tue, 3 Jun 2008, Nick Piggin wrote:
> 
> Linus: on x86, memory operations to wc and wc+ memory are not ordered
> with one another, or operations to other memory types (ie. load/load
> and store/store reordering is allowed). Also, as you know, store/load
> reordering is explicitly allowed as well, which covers all memory
> types. So perhaps it is not quite true to say readl/writel is strongly
> ordered by default even on x86. You would have to put in some
> mfence instructions in them to make it so.

Well, you have to ask for WC/WC+ anyway, so it's immaterial. A driver that 
does that needs to be aware of it. IOW, it's a non-issue, imnsho.

			Linus



More information about the Linuxppc-dev mailing list