Messages in this thread | | | From | Andi Kleen <> | Subject | Re: [PATCH] [1/1] CPA: Flush the caches when setting pages not present v2 | Date | Mon, 11 Feb 2008 18:36:03 +0100 |
| |
> This is suboptimal though, as it will trigger a wbinvd() everytime > when we hit a non present pte in a range, whether we did set the entry > in question to not present or not.
Do you think that's common? I considered this while writing the code, but figured it was just a oddball case not worth caring about.
DEBUG_PAGEALLOC does not call this normally anyways and people should not call this for unallocated mappings anyways.
> The gart code unmapping is a special case. This only happens during > boot, so adding a wbinvd() to the gart code is solving this issue > without imposing it on other use cases. > > Another solution for this would be to change the mapping to uncached > before unmapping, so we could avoid the wbinvd() completely.
That will work for pci-gart, but not for some future users of set_memory_np() I plan to submit (they run potentially with multiple CPUs online and doing callbacks there would be quite ugly). So I would prefer if you kept some variant of my original patch.
-Andi
| |