]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
drm/etnaviv: fix flush sequence logic
authorTomeu Vizoso <tomeu@tomeuvizoso.net>
Tue, 21 Oct 2025 09:37:23 +0000 (11:37 +0200)
committerLucas Stach <l.stach@pengutronix.de>
Mon, 27 Oct 2025 21:47:09 +0000 (22:47 +0100)
commita042beac6e6f8ac1e923784cfff98b47cbabb185
tree7081652cf83e6fb2fea8a483c79417d2dee0e4c2
parente0023c8a74028739643aa14bd201c41a99866ca4
drm/etnaviv: fix flush sequence logic

The current logic uses the flush sequence from the current address
space. This is harmless when deducing the flush requirements for the
current submit, as either the incoming address space is the same one
as the currently active one or we switch context, in which case the
flush is unconditional.

However, this sequence is also stored as the current flush sequence
of the GPU. If we switch context the stored flush sequence will no
longer belong to the currently active address space. This incoherency
can then cause missed flushes, resulting in translation errors.

Fixes: 27b67278e007 ("drm/etnaviv: rework MMU handling")
Signed-off-by: Tomeu Vizoso <tomeu@tomeuvizoso.net>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Link: https://lore.kernel.org/r/20251021093723.3887980-1-l.stach@pengutronix.de
drivers/gpu/drm/etnaviv/etnaviv_buffer.c