Re: [Mesa-dev] [PATCH] gallium/drivers/radeonsi: Add si_bind_sampler_states unbind support

2019-04-08 Thread Marek Olšák
I've sent a simpler patch. Please review.

Thanks,
Marek

On Sat, Apr 6, 2019 at 9:07 AM Zhu, James  wrote:

> commit a613607dc3dab2b43884a4e5891aa5939cdcfbe0 will cause segfault
> during unbind sampler state. This patch will fix the issue.
>
> Signed-off-by: James Zhu 
> ---
>  src/gallium/drivers/radeonsi/si_descriptors.c | 7 +--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c
> b/src/gallium/drivers/radeonsi/si_descriptors.c
> index 244ba5a..883b91c 100644
> --- a/src/gallium/drivers/radeonsi/si_descriptors.c
> +++ b/src/gallium/drivers/radeonsi/si_descriptors.c
> @@ -956,8 +956,11 @@ static void si_bind_sampler_states(struct
> pipe_context *ctx,
> unsigned slot = start + i;
> unsigned desc_slot = si_get_sampler_slot(slot);
>
> -   if (!sstates[i] ||
> -   sstates[i] == samplers->sampler_states[slot])
> +   if(!sstates) {
> +   samplers->sampler_states[slot] = NULL;
> +   continue;
> +   } else if (!sstates[i] ||
> +   sstates[i] == samplers->sampler_states[slot])
> continue;
>
>  #ifdef DEBUG
> --
> 2.7.4
>
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] gallium/drivers/radeonsi: Add si_bind_sampler_states unbind support

2019-04-06 Thread Dieter Nützel

Tested-by: Dieter Nützel 

Thank you James!

Dieter

Am 06.04.2019 15:07, schrieb Zhu, James:

commit a613607dc3dab2b43884a4e5891aa5939cdcfbe0 will cause segfault
during unbind sampler state. This patch will fix the issue.

Signed-off-by: James Zhu 
---
 src/gallium/drivers/radeonsi/si_descriptors.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c
b/src/gallium/drivers/radeonsi/si_descriptors.c
index 244ba5a..883b91c 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -956,8 +956,11 @@ static void si_bind_sampler_states(struct
pipe_context *ctx,
unsigned slot = start + i;
unsigned desc_slot = si_get_sampler_slot(slot);

-   if (!sstates[i] ||
-   sstates[i] == samplers->sampler_states[slot])
+   if(!sstates) {
+   samplers->sampler_states[slot] = NULL;
+   continue;
+   } else if (!sstates[i] ||
+   sstates[i] == samplers->sampler_states[slot])
continue;

 #ifdef DEBUG

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] gallium/drivers/radeonsi: Add si_bind_sampler_states unbind support

2019-04-06 Thread Zhu, James
commit a613607dc3dab2b43884a4e5891aa5939cdcfbe0 will cause segfault
during unbind sampler state. This patch will fix the issue.

Signed-off-by: James Zhu 
---
 src/gallium/drivers/radeonsi/si_descriptors.c | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c 
b/src/gallium/drivers/radeonsi/si_descriptors.c
index 244ba5a..883b91c 100644
--- a/src/gallium/drivers/radeonsi/si_descriptors.c
+++ b/src/gallium/drivers/radeonsi/si_descriptors.c
@@ -956,8 +956,11 @@ static void si_bind_sampler_states(struct pipe_context 
*ctx,
unsigned slot = start + i;
unsigned desc_slot = si_get_sampler_slot(slot);
 
-   if (!sstates[i] ||
-   sstates[i] == samplers->sampler_states[slot])
+   if(!sstates) {
+   samplers->sampler_states[slot] = NULL;
+   continue;
+   } else if (!sstates[i] ||
+   sstates[i] == samplers->sampler_states[slot])
continue;
 
 #ifdef DEBUG
-- 
2.7.4

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev