diff options
author | MrRobbin <mr_robbin@163.com> | 2023-05-16 13:54:49 +0800 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2023-05-16 14:04:54 +0000 |
commit | 47f080194956a1da3beca5800b3bf7f85cb8b36c (patch) | |
tree | 7231669b2b39d62756b7f69791e958c299f3f866 | |
parent | 6ee0bba3ae6777aa8df911301e5ff0a955ebce73 (diff) | |
download | mesa-47f080194956a1da3beca5800b3bf7f85cb8b36c.tar.gz |
zink: Move the workaround before the EDS setting.
Then we can guarantee the settings correct, otherwise the 'screen->info.have_EXT_extended_dynamic_state3 = false' and 'screen->info.have_EXT_vertex_input_dynamic_state = false'
will be enable, but actually we should disable it when 'have_EXT_extended_dynamic_state2 = false'.
Fixes: d5cf6f7d2f9 ("zink: disable dynamic state exts if the previous ones aren't present")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23046>
-rw-r--r-- | src/gallium/drivers/zink/zink_screen.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c index 6da0fa65f89..c2ea90ab0df 100644 --- a/src/gallium/drivers/zink/zink_screen.c +++ b/src/gallium/drivers/zink/zink_screen.c @@ -2415,6 +2415,9 @@ init_driver_workarounds(struct zink_screen *screen) /* EDS2 is only used with EDS1 */ if (!screen->info.have_EXT_extended_dynamic_state) screen->info.have_EXT_extended_dynamic_state2 = false; + if (screen->info.driver_props.driverID == VK_DRIVER_ID_AMD_PROPRIETARY) + /* this completely breaks xfb somehow */ + screen->info.have_EXT_extended_dynamic_state2 = false; /* EDS3 is only used with EDS2 */ if (!screen->info.have_EXT_extended_dynamic_state2) screen->info.have_EXT_extended_dynamic_state3 = false; @@ -2455,9 +2458,6 @@ init_driver_workarounds(struct zink_screen *screen) screen->info.gpl_props.graphicsPipelineLibraryFastLinking || screen->is_cpu); screen->driver_workarounds.broken_l4a4 = screen->info.driver_props.driverID == VK_DRIVER_ID_NVIDIA_PROPRIETARY; - if (screen->info.driver_props.driverID == VK_DRIVER_ID_AMD_PROPRIETARY) - /* this completely breaks xfb somehow */ - screen->info.have_EXT_extended_dynamic_state2 = false; if (screen->info.driver_props.driverID == VK_DRIVER_ID_MESA_TURNIP) { /* performance */ screen->info.border_color_feats.customBorderColorWithoutFormat = VK_FALSE; |