Re: [PATCH 06/25] xen: Core Xen implementation

From: Keir Fraser
Date: Fri Apr 27 2007 - 03:56:24 EST


On 27/4/07 08:08, "Jeremy Fitzhardinge" <jeremy@xxxxxxxx> wrote:

>> Don't you need a rmb() here then? The CPU could speculate reads
>> (more occurrences)
>>
>
> Is rmb() sufficient? It will stop a speculative read on the pending
> flag, but will it make sure the write has happened by then? Ie, is it a
> write-vs-read barrier, or just a read-vs-read?
> Documentation/memory-barriers.txt suggests not.

The barrier() is sufficient. We are racing against Xen checking
evtchn_upcall_mask *on the local cpu*. Which means an interrupt has to
occur, which squashes speculative stuff.

Yeah, I know, it needs a better comment. :-)

-- Keir


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