[Mesa-stable] [Mesa-dev] [PATCH] radv: Fix using more than 4 bound descriptor sets

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Fri Mar 17 08:43:15 UTC 2017


Pushed, but see my new patch for caveats.

On Thu, Mar 16, 2017 at 6:48 PM, James Legg <jlegg at feralinteractive.com> wrote:
> Avoid a buffer overflow in ac_nir_to_llvm.c's create_function when
> using more than 4 descriptor sets. radv claims support for 8.
>
> Cc: 17.0 <mesa-stable at lists.freedesktop.org>
> ---
>  src/amd/common/ac_nir_to_llvm.h | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/src/amd/common/ac_nir_to_llvm.h b/src/amd/common/ac_nir_to_llvm.h
> index 6c2b78b..bb860e5 100644
> --- a/src/amd/common/ac_nir_to_llvm.h
> +++ b/src/amd/common/ac_nir_to_llvm.h
> @@ -27,6 +27,7 @@
>  #include "llvm-c/Core.h"
>  #include "llvm-c/TargetMachine.h"
>  #include "amd_family.h"
> +#include "../vulkan/radv_descriptor_set.h"
>
>  struct ac_shader_binary;
>  struct ac_shader_config;
> @@ -81,7 +82,8 @@ enum ac_ud_index {
>         AC_UD_MAX_UD = AC_UD_VS_MAX_UD,
>  };
>
> -#define AC_UD_MAX_SETS 4
> +// Match MAX_SETS from radv_descriptor_set.h
> +#define AC_UD_MAX_SETS MAX_SETS
>
>  struct ac_userdata_locations {
>         struct ac_userdata_info descriptor_sets[AC_UD_MAX_SETS];
> --
> 2.9.3
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-stable mailing list