etnaviv: remove use of flush_seqno as trigger for texture cache invalidate
authorLucas Stach <l.stach@pengutronix.de>
Wed, 16 Nov 2022 16:15:07 +0000 (17:15 +0100)
committerMarge Bot <emma+marge@anholt.net>
Tue, 22 Nov 2022 13:55:29 +0000 (13:55 +0000)
commite83c01919f0ec8e2357c73ba7818e3c5964788f7
treea64b55d4274d59caa40480407ca42d97638bf162
parent2f86639ea302d9342fd3f57857d71dff8f71e011
etnaviv: remove use of flush_seqno as trigger for texture cache invalidate

The flush_seqno is only to be used/updated when a dirty tile status has
been written back to the resource. Using it as a marker to trigger a
texture cache invalidation is bogus and not actually needed. When the
texture resource is updated via a mapping or blit the texture cache
invalidation is already triggered by marking the caches as dirty. If the
resource is updated by fragment output, OpenGL explicitly defines the
result of a later texture read as undefined unless a TextureBarrier is
inserted, which also properly triggers the texture cache invalidate.

Also the current check is bogus as it doesn't handle seqno wraparound.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19800>
src/gallium/drivers/etnaviv/etnaviv_texture.c