Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/etnaviv: flush shader L1 cache after user commandstream

The shader L1 cache is a writeback cache for shader loads/stores
and thus must be flushed before any BOs backing the shader buffers
are potentially freed.

Cc: stable@vger.kernel.org
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>

+2 -1
+2 -1
drivers/gpu/drm/etnaviv/etnaviv_buffer.c
··· 482 482 } else { 483 483 CMD_LOAD_STATE(buffer, VIVS_GL_FLUSH_CACHE, 484 484 VIVS_GL_FLUSH_CACHE_DEPTH | 485 - VIVS_GL_FLUSH_CACHE_COLOR); 485 + VIVS_GL_FLUSH_CACHE_COLOR | 486 + VIVS_GL_FLUSH_CACHE_SHADER_L1); 486 487 if (has_blt) { 487 488 CMD_LOAD_STATE(buffer, VIVS_BLT_ENABLE, 0x1); 488 489 CMD_LOAD_STATE(buffer, VIVS_BLT_SET_COMMAND, 0x1);