mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 02:48:06 +02:00
nvc0: invalidate texture buffers for compute
This is a pretty rare situation but this can happen though. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Ilia Mirkin <imirkin@alum.mit.edu>
This commit is contained in:
parent
2785f2f2d7
commit
b8f0b00a9a
1 changed files with 8 additions and 3 deletions
|
|
@ -263,13 +263,18 @@ nvc0_invalidate_resource_storage(struct nouveau_context *ctx,
|
|||
return ref;
|
||||
}
|
||||
|
||||
for (s = 0; s < 5; ++s) {
|
||||
for (s = 0; s < 6; ++s) {
|
||||
for (i = 0; i < nvc0->num_textures[s]; ++i) {
|
||||
if (nvc0->textures[s][i] &&
|
||||
nvc0->textures[s][i]->texture == res) {
|
||||
nvc0->textures_dirty[s] |= 1 << i;
|
||||
nvc0->dirty_3d |= NVC0_NEW_3D_TEXTURES;
|
||||
nouveau_bufctx_reset(nvc0->bufctx_3d, NVC0_BIND_3D_TEX(s, i));
|
||||
if (unlikely(s == 5)) {
|
||||
nvc0->dirty_cp |= NVC0_NEW_CP_TEXTURES;
|
||||
nouveau_bufctx_reset(nvc0->bufctx_cp, NVC0_BIND_CP_TEX(i));
|
||||
} else {
|
||||
nvc0->dirty_3d |= NVC0_NEW_3D_TEXTURES;
|
||||
nouveau_bufctx_reset(nvc0->bufctx_3d, NVC0_BIND_3D_TEX(s, i));
|
||||
}
|
||||
if (!--ref)
|
||||
return ref;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue