On Fri, 11 Aug 2017 14:07:14 +0200 Peter Zijlstra <pet...@infradead.org> wrote:
> It goes like: > > CPU0 CPU1 > > unhook page > cli > traverse page tables > TLB invalidate ---> <IF clear, therefore CPU0 waits> > sti > <IPI> > TLB invalidate > <------ complete I guess the important part here is the above "complete". CPU0 doesn't proceed until its receives it. Thus it does act like cli~rcu_read_lock(), sti~rcu_read_unlock(), and "TLB invalidate" is equivalent to synchronize_rcu(). [ this response is for clarification for the casual observer of this thread ;-) ] -- Steve > </IPI> > free page > > So the CPU1 page-table walker gets an existence guarantee of the > page-tables by clearing IF. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel