radv: mark RADV_DEBUG=invariantgeom as deprecated

Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37145>
This commit is contained in:
Samuel Pitoiset 2025-09-02 17:35:13 +02:00 committed by Marge Bot
parent a8a8bfee1f
commit 4748ecb238
5 changed files with 11 additions and 5 deletions

View file

@ -1383,7 +1383,7 @@ RADV driver environment variables
show GPU-related information
``invariantgeom``
Mark geometry-affecting outputs as invariant. This works around a common
class of application bugs appearing as flickering.
class of application bugs appearing as flickering. (deprecated)
``metashaders``
dump internal meta shaders
``noatocdithering``

View file

@ -37,7 +37,7 @@ enum {
RADV_DEBUG_HANG = 1ull << 22,
RADV_DEBUG_IMG = 1ull << 23,
RADV_DEBUG_NO_UMR = 1ull << 24,
RADV_DEBUG_INVARIANT_GEOM = 1ull << 25,
RADV_DEBUG_INVARIANT_GEOM = 1ull << 25, /* deprecated */
RADV_DEBUG_NO_DISPLAY_DCC = 1ull << 26,
RADV_DEBUG_NO_TC_COMPAT_CMASK = 1ull << 27,
RADV_DEBUG_NO_VRS_FLAT_SHADING = 1ull << 28,

View file

@ -222,8 +222,7 @@ radv_init_dri_options(struct radv_instance *instance)
instance->drirc.no_dynamic_bounds = driQueryOptionb(&instance->drirc.options, "radv_no_dynamic_bounds");
if (driQueryOptionb(&instance->drirc.options, "radv_invariant_geom"))
instance->debug_flags |= RADV_DEBUG_INVARIANT_GEOM;
instance->drirc.invariant_geom = driQueryOptionb(&instance->drirc.options, "radv_invariant_geom");
if (driQueryOptionb(&instance->drirc.options, "radv_split_fma"))
instance->debug_flags |= RADV_DEBUG_SPLIT_FMA;
@ -446,6 +445,12 @@ radv_CreateInstance(const VkInstanceCreateInfo *pCreateInfo, const VkAllocationC
instance->drirc.no_dynamic_bounds = true;
}
if (instance->debug_flags & RADV_DEBUG_INVARIANT_GEOM) {
fprintf(stderr, "radv: RADV_DEBUG=invariantgeom is deprecated and will it be removed in future Mesa releases. "
"Please use radv_invariant_geom=true instead.\n");
instance->drirc.invariant_geom = true;
}
*pInstance = radv_instance_to_handle(instance);
return VK_SUCCESS;

View file

@ -75,6 +75,7 @@ struct radv_instance {
bool disable_hiz_his_gfx12;
bool cooperative_matrix2_nv;
bool no_dynamic_bounds;
bool invariant_geom;
char *app_layer;
uint8_t override_graphics_shader_version;
uint8_t override_compute_shader_version;

View file

@ -218,7 +218,7 @@ radv_physical_device_init_cache_key(struct radv_physical_device *pdev)
key->emulate_rt = radv_emulate_rt(pdev);
key->bvh8 = radv_use_bvh8(pdev);
key->ge_wave32 = pdev->ge_wave_size == 32;
key->invariant_geom = !!(instance->debug_flags & RADV_DEBUG_INVARIANT_GEOM);
key->invariant_geom = instance->drirc.invariant_geom;
key->no_fmask = !!(instance->debug_flags & RADV_DEBUG_NO_FMASK);
key->no_ngg_gs = !!(instance->debug_flags & RADV_DEBUG_NO_NGG_GS);
key->no_rt = !!(instance->debug_flags & RADV_DEBUG_NO_RT);