Re: [PATCH 11 of 11] x86: defer cr3 reload when doing pud_clear()
From: H. Peter Anvin
Date: Fri Jan 25 2008 - 16:42:21 EST
Jeremy Fitzhardinge wrote:
PAE mode requires that we reload cr3 in order to guarantee that
changes to the pgd will be noticed by the processor. This means that
in principle pud_clear needs to reload cr3 every time. However,
because reloading cr3 implies a tlb flush, we want to avoid it where
possible.
It only matters (for a processor which supports PGE) if we actually use
the namespace in between.
In huge_pmd_unshare, it is followed by flush_tlb_range, which always
results in a full cr3-reload tlb flush.
This one makes me nervous, as it feels like a side effect of
implementation, and not a guarantee by design.
-hpa
--
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/