diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2015-01-13 08:32:52 -0500 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-01-27 03:51:07 -0500 |
commit | 0f71979ab7fbd0c71c41c2798de3d33937915434 (patch) | |
tree | 18cbac2efa428f0be13e573dd7d987d9220d7f20 /drivers/gpu/drm/i915/i915_drv.h | |
parent | a7cbedec8317a5cacecb567674fdbc1c3fb22de8 (diff) |
drm/i915: Performed deferred clflush inside set-cache-level
Currently we are hitting the WARN inside
i915_gem_object_set_cache_level() as we can now have an unbound object
in the GTT write domain (due to 43566dedde54f9 "drm/i915: Broaden
application of set-domain(GTT)"). To avoid the warning, we need to track
when we elided the clflush on a cacheable object and then evict the
cache for the object when we move the object out of a cacheable domain.
Reported-by: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Tested-by: Jani Nikula <jani.nikula@intel.com>
Testcase: igt/gem_mmap_wc/set-cache-level
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=88607
Tested-by: huax.lu@intel.com
[danvet: Split if into nested if as discussion on the m-l.]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_drv.h')
-rw-r--r-- | drivers/gpu/drm/i915/i915_drv.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h index de304d78e2bf..0ad8dbf896c0 100644 --- a/drivers/gpu/drm/i915/i915_drv.h +++ b/drivers/gpu/drm/i915/i915_drv.h | |||
@@ -2055,6 +2055,7 @@ struct drm_i915_gem_object { | |||
2055 | */ | 2055 | */ |
2056 | unsigned long gt_ro:1; | 2056 | unsigned long gt_ro:1; |
2057 | unsigned int cache_level:3; | 2057 | unsigned int cache_level:3; |
2058 | unsigned int cache_dirty:1; | ||
2058 | 2059 | ||
2059 | unsigned int has_dma_mapping:1; | 2060 | unsigned int has_dma_mapping:1; |
2060 | 2061 | ||