diff options
author | Dave Airlie <airlied@redhat.com> | 2008-10-06 23:41:49 -0400 |
---|---|---|
committer | Dave Airlie <airlied@linux.ie> | 2008-10-17 17:10:53 -0400 |
commit | e0f0754ff6128570dcf38032f5bfb1f195e5bbee (patch) | |
tree | b0d51d92ff9fa01868cd7f00cae458adbcfd60d1 /drivers/gpu | |
parent | e7d22bc3cb57126196c4f475d4e55aa44e151784 (diff) |
drm: wbinvd is cache coherent.
doing an ipi for the wbinvd case isn't necessary.
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/drm_cache.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/drivers/gpu/drm/drm_cache.c b/drivers/gpu/drm/drm_cache.c index 9475f7d9901d..0e994a0e46d4 100644 --- a/drivers/gpu/drm/drm_cache.c +++ b/drivers/gpu/drm/drm_cache.c | |||
@@ -47,12 +47,6 @@ drm_clflush_page(struct page *page) | |||
47 | } | 47 | } |
48 | #endif | 48 | #endif |
49 | 49 | ||
50 | static void | ||
51 | drm_clflush_ipi_handler(void *null) | ||
52 | { | ||
53 | wbinvd(); | ||
54 | } | ||
55 | |||
56 | void | 50 | void |
57 | drm_clflush_pages(struct page *pages[], unsigned long num_pages) | 51 | drm_clflush_pages(struct page *pages[], unsigned long num_pages) |
58 | { | 52 | { |
@@ -68,9 +62,8 @@ drm_clflush_pages(struct page *pages[], unsigned long num_pages) | |||
68 | 62 | ||
69 | return; | 63 | return; |
70 | } | 64 | } |
71 | #endif | ||
72 | 65 | ||
73 | if (on_each_cpu(drm_clflush_ipi_handler, NULL, 1) != 0) | 66 | wbinvd(); |
74 | DRM_ERROR("Timed out waiting for cache flush.\n"); | 67 | #endif |
75 | } | 68 | } |
76 | EXPORT_SYMBOL(drm_clflush_pages); | 69 | EXPORT_SYMBOL(drm_clflush_pages); |