[Mesa-dev] [PATCH] radeonsi: Don't modify PA_SC_RASTER_CONFIG register value if rb_mask == 0

Marek Olšák maraeo at gmail.com
Tue Dec 9 03:17:49 PST 2014


Reviewed-by: Marek Olšák <marek.olsak at amd.com>

On Tue, Dec 9, 2014 at 9:03 AM, Michel Dänzer <michel at daenzer.net> wrote:
> From: Michel Dänzer <michel.daenzer at amd.com>
>
> E.g. this could happen on older kernels which don't support the
> RADEON_INFO_SI_BACKEND_ENABLED_MASK query yet. The code in
> si_write_harvested_raster_configs() doesn't deal with this correctly and
> would probably mangle the value badly.
>
> Cc: "10.4 10.3" <mesa-stable at lists.freedesktop.org>
> Signed-off-by: Michel Dänzer <michel.daenzer at amd.com>
> ---
>  src/gallium/drivers/radeonsi/si_state.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/drivers/radeonsi/si_state.c b/src/gallium/drivers/radeonsi/si_state.c
> index f24c28e..2b29d41 100644
> --- a/src/gallium/drivers/radeonsi/si_state.c
> +++ b/src/gallium/drivers/radeonsi/si_state.c
> @@ -3281,8 +3281,10 @@ void si_init_config(struct si_context *sctx)
>                         break;
>                 }
>
> -               /* Always use the default config when all backends are enabled. */
> -               if (rb_mask && util_bitcount(rb_mask) >= num_rb) {
> +               /* Always use the default config when all backends are enabled
> +                * (or when we failed to determine the enabled backends).
> +                */
> +               if (!rb_mask || util_bitcount(rb_mask) >= num_rb) {
>                         si_pm4_set_reg(pm4, R_028350_PA_SC_RASTER_CONFIG,
>                                        raster_config);
>                 } else {
> --
> 2.1.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list