mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 18:51:56 -04:00
x86: cpa: move flush to cpa
The set_memory_* and set_pages_* family of API's currently requires the callers to do a global tlb flush after the function call; forgetting this is a very nasty deathtrap. This patch moves the global tlb flush into each of the callers Signed-off-by: Arjan van de Ven <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
This commit is contained in:
parent
d1028a154c
commit
d7c8f21a8c
12 changed files with 72 additions and 115 deletions
|
|
@ -124,13 +124,8 @@ static int vmlfb_alloc_vram_area(struct vram_area *va, unsigned max_order,
|
|||
/*
|
||||
* Change caching policy of the linear kernel map to avoid
|
||||
* mapping type conflicts with user-space mappings.
|
||||
* The first global_flush_tlb() is really only there to do a global
|
||||
* wbinvd().
|
||||
*/
|
||||
|
||||
global_flush_tlb();
|
||||
set_pages_uc(virt_to_page(va->logical), va->size >> PAGE_SHIFT);
|
||||
global_flush_tlb();
|
||||
|
||||
printk(KERN_DEBUG MODULE_NAME
|
||||
": Allocated %ld bytes vram area at 0x%08lx\n",
|
||||
|
|
@ -156,7 +151,6 @@ static void vmlfb_free_vram_area(struct vram_area *va)
|
|||
|
||||
set_pages_wb(virt_to_page(va->logical),
|
||||
va->size >> PAGE_SHIFT);
|
||||
global_flush_tlb();
|
||||
|
||||
/*
|
||||
* Decrease the usage count on the pages we've used
|
||||
|
|
|
|||
Loading…
Reference in a new issue