summaryrefslogtreecommitdiff
path: root/drm_cache.c
diff options
context:
space:
mode:
authorThomas Hellstrom <thellstrom@vmware.com>2012-10-23 13:34:37 +0200
committerThomas Hellstrom <thellstrom@vmware.com>2012-10-24 10:49:38 +0200
commit595bfa36c6da9b76579aa579acfb2608c5fc0912 (patch)
tree8734d28f207ced6e6a933935aa3621463eff8b51 /drm_cache.c
parenta04fbecceb2765e7065ea1c058df03282154484d (diff)
drm, vmwgfx: Fix up calls to k[un]map atomic
k[un]map atomic changed interface some time ago, but we're not correctly using defines to call with the correct interface. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Brian Paul <brianp@vmware.com> Reviewed-by: Zack Rusin <zackr@vmware.com>
Diffstat (limited to 'drm_cache.c')
-rw-r--r--drm_cache.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drm_cache.c b/drm_cache.c
index 9d31e6e..c1f08c2 100644
--- a/drm_cache.c
+++ b/drm_cache.c
@@ -41,10 +41,18 @@ drm_clflush_page(struct page *page)
if (unlikely(page == NULL))
return;
+#ifdef VMW_HAS_STACK_KMAP_ATOMIC
+ page_virtual = kmap_atomic(page);
+#else
page_virtual = kmap_atomic(page, KM_USER0);
+#endif
for (i = 0; i < PAGE_SIZE; i += boot_cpu_data.x86_clflush_size)
clflush(page_virtual + i);
+#ifdef VMW_HAS_STACK_KMAP_ATOMIC
+ kunmap_atomic(page_virtual);
+#else
kunmap_atomic(page_virtual, KM_USER0);
+#endif
}
static void drm_cache_flush_clflush(struct page *pages[],