aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/vermilion
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2008-01-30 07:34:07 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:34:07 -0500
commitd7c8f21a8cad0228c7c5ce2bb6dbd95d1ee49d13 (patch)
treed1e305bec62022a0bec82a3499a372c2c7c40583 /drivers/video/vermilion
parentd1028a154c65d7fadd1b2d0276c077014d401ec7 (diff)
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 <arjan@linux.intel.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/video/vermilion')
-rw-r--r--drivers/video/vermilion/vermilion.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/video/vermilion/vermilion.c b/drivers/video/vermilion/vermilion.c
index fb72778dee48..1c656667b937 100644
--- a/drivers/video/vermilion/vermilion.c
+++ b/drivers/video/vermilion/vermilion.c
@@ -124,13 +124,8 @@ static int vmlfb_alloc_vram_area(struct vram_area *va, unsigned max_order,
124 /* 124 /*
125 * Change caching policy of the linear kernel map to avoid 125 * Change caching policy of the linear kernel map to avoid
126 * mapping type conflicts with user-space mappings. 126 * mapping type conflicts with user-space mappings.
127 * The first global_flush_tlb() is really only there to do a global
128 * wbinvd().
129 */ 127 */
130
131 global_flush_tlb();
132 set_pages_uc(virt_to_page(va->logical), va->size >> PAGE_SHIFT); 128 set_pages_uc(virt_to_page(va->logical), va->size >> PAGE_SHIFT);
133 global_flush_tlb();
134 129
135 printk(KERN_DEBUG MODULE_NAME 130 printk(KERN_DEBUG MODULE_NAME
136 ": Allocated %ld bytes vram area at 0x%08lx\n", 131 ": Allocated %ld bytes vram area at 0x%08lx\n",
@@ -156,7 +151,6 @@ static void vmlfb_free_vram_area(struct vram_area *va)
156 151
157 set_pages_wb(virt_to_page(va->logical), 152 set_pages_wb(virt_to_page(va->logical),
158 va->size >> PAGE_SHIFT); 153 va->size >> PAGE_SHIFT);
159 global_flush_tlb();
160 154
161 /* 155 /*
162 * Decrease the usage count on the pages we've used 156 * Decrease the usage count on the pages we've used