drm/i915/gem: Almagamate clflushes on freeze
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 19 Jan 2021 21:43:32 +0000 (21:43 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 20 Jan 2021 20:46:35 +0000 (20:46 +0000)
commit30d2bfd093839cf6eef93f9c2cbdc347c7bf8b20
treed1d52658ccfd7c9f1a8157e48c02704bb00dda60
parentac05a22cd07a1a9b90b66eefca845b020722697d
drm/i915/gem: Almagamate clflushes on freeze

When flushing objects larger than the CPU cache it is preferrable to use
a single wbinvd() rather than overlapping clflush(). At runtime, we
avoid wbinvd() due to its system-wide latencies, but during
singlethreaded suspend, no one will observe the imposed latency and we
can opt for the faster wbinvd to clear all objects in a single hit.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210119214336.1463-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem.c