diff options
author | Samuel Pitoiset <samuel.pitoiset@gmail.com> | 2016-04-10 22:08:34 +0200 |
---|---|---|
committer | Samuel Pitoiset <samuel.pitoiset@gmail.com> | 2016-04-20 18:28:47 +0200 |
commit | 7143068296aaca8c5af3469c013a7c2a850aee84 (patch) | |
tree | 0cc00395030fc4d19c9f59d7f89854978e40d4e4 /src/gallium/drivers | |
parent | 87a4fb516eeebd6be0441db5aeffc705f16bef86 (diff) | |
download | external_mesa3d-7143068296aaca8c5af3469c013a7c2a850aee84.zip external_mesa3d-7143068296aaca8c5af3469c013a7c2a850aee84.tar.gz external_mesa3d-7143068296aaca8c5af3469c013a7c2a850aee84.tar.bz2 |
nvc0: avoid tex read fault from compute shaders on GK110
After some investigation, it seems like that disabling the UNK02C4
command avoid a read fault with texelFetch() from a compute shader.
I have no clue on what this method actually does, but this avoid the
GPU to hang with basic-texelFetch.shader_test without introducing any
compute-related regressions.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu>
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r-- | src/gallium/drivers/nouveau/nvc0/nve4_compute.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nvc0/nve4_compute.c b/src/gallium/drivers/nouveau/nvc0/nve4_compute.c index 3d01909..3d5f84d 100644 --- a/src/gallium/drivers/nouveau/nvc0/nve4_compute.c +++ b/src/gallium/drivers/nouveau/nvc0/nve4_compute.c @@ -134,8 +134,11 @@ nve4_screen_compute_setup(struct nvc0_screen *screen, BEGIN_NVC0(push, NVE4_CP(TEX_CB_INDEX), 1); PUSH_DATA (push, 7); /* does not interfere with 3D */ + /* Disabling this UNK command avoid a read fault when using texelFetch() + * from a compute shader for weird reasons. if (obj_class == NVF0_COMPUTE_CLASS) IMMED_NVC0(push, SUBC_CP(0x02c4), 1); + */ address = screen->uniform_bo->offset + NVC0_CB_AUX_INFO(5); |