Query whether or not we are in a legal context for using SIMD, before using SSE4.2 registers. Suggested-by: Jason A. Donenfeld <Jason@xxxxxxxxx> Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> --- drivers/gpu/drm/i915/i915_memcpy.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/gpu/drm/i915/i915_memcpy.c b/drivers/gpu/drm/i915/i915_memcpy.c index 7b3b83bd5ab8..fc18d6c28d5f 100644 --- a/drivers/gpu/drm/i915/i915_memcpy.c +++ b/drivers/gpu/drm/i915/i915_memcpy.c @@ -24,6 +24,7 @@ #include <linux/kernel.h> #include <asm/fpu/api.h> +#include <asm/simd.h> #include "i915_memcpy.h" @@ -115,6 +116,9 @@ bool i915_memcpy_from_wc(void *dst, const void *src, unsigned long len) if (unlikely(((unsigned long)dst | (unsigned long)src | len) & 15)) return false; + if (unlikely(!may_use_simd())) + return false; + if (static_branch_likely(&has_movntdqa)) { if (likely(len)) __memcpy_ntdqa(dst, src, len >> 4); -- 2.20.1 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx