Re: What protects cpu_tlbstate?

From: Jeremy Fitzhardinge
Date: Thu Apr 05 2007 - 17:01:17 EST


Andi Kleen wrote:
> The interrupts can only happen when the other CPU is already lazy
> and enter_lazy_tlb would be a nop then. The flushers itself are
> synchronized by the page_table_lock or the mm semaphore.
>
> Against switch_mm it tries to protect with ordering.
>
> wmb()s are not needed on x86 (ok minus errata on ppro and
> VIA magic mode but which is UP only). That would leave some rmb()s,
> but I don't see any place they would be needed.
>

Hm, I was more wondering about simple compiler reordering. Does the
relative order of setting and reading cpu_tlbstate.state, active_mm and
the mm->cpu_vm_mask matter?

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