mesa/0010-Revert-tu-autotune-Add-prefer-SYSMEM-GMEM-mode.patch
Jocelyn Falempe f49ef1410d update to 26.1.1
- remove patches that are in upstream
- remove vdpau as upstream removed it
- update version of dependencies
- update rust libwrap filename
- Update libclc to 22.1 has the 21.1.8 doesn't build on centos stream 9
- Fix python issues with 3.9 (Mesa requires 3.10)
- Revert Freedreno tu_autotune to previous C implementation, as C++ implementation
- Remove some kmsro driver on x86_64

Resolves: RHEL-135263

Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
2026-07-01 09:44:14 +02:00

86 lines
3.9 KiB
Diff

From dad9e8d8725004cb48a0f56982223b5c5a43f765 Mon Sep 17 00:00:00 2001
From: Jocelyn Falempe <jfalempe@redhat.com>
Date: Fri, 26 Jun 2026 10:55:26 +0200
Subject: [PATCH 10/19] Revert "tu/autotune: Add prefer SYSMEM/GMEM mode"
This reverts commit 180c0de74600079795001993feb31bafb9ba0488.
---
docs/drivers/freedreno.rst | 8 --------
src/freedreno/vulkan/tu_autotune.cc | 19 ++++---------------
2 files changed, 4 insertions(+), 23 deletions(-)
diff --git a/docs/drivers/freedreno.rst b/docs/drivers/freedreno.rst
index 90afea283a4..e5adeeb5e68 100644
--- a/docs/drivers/freedreno.rst
+++ b/docs/drivers/freedreno.rst
@@ -699,14 +699,6 @@ environment variables:
for single-frame traces run multiple times in a CI where this algorithm can
immediately chose the optimal rendering mode for each RP.
- ``prefer_sysmem``/``prefer_gmem``
- Always chooses SYSMEM/GMEM rendering. This is useful for games that work
- better in one mode over the other due to their rendering patterns, setting
- this is better than using ``TU_DEBUG=sysmem``/``TU_DEBUG=gmem`` when done
- for performance reasons, since these still allow the other mode to be used
- in some high-confidence cases as well as letting ``TU_AUTOTUNE_FLAGS`` still
- be applied.
-
.. envvar:: TU_AUTOTUNE_FLAGS
Modifies the behavior of the selected algorithm. Supported flags are:
diff --git a/src/freedreno/vulkan/tu_autotune.cc b/src/freedreno/vulkan/tu_autotune.cc
index b57c393e06e..99ad1d495d5 100644
--- a/src/freedreno/vulkan/tu_autotune.cc
+++ b/src/freedreno/vulkan/tu_autotune.cc
@@ -94,11 +94,9 @@ render_mode_str(tu_autotune::render_mode mode)
/** Configuration **/
enum class tu_autotune::algorithm : uint8_t {
- BANDWIDTH = 0, /* Uses estimated BW for determining rendering mode. */
- PROFILED = 1, /* Uses dynamically profiled results for determining rendering mode. */
- PROFILED_IMM = 2, /* Same as PROFILED but immediately resolves the SYSMEM/GMEM probability. */
- PREFER_SYSMEM = 3, /* Always use SYSMEM unless we have strong evidence that GMEM is better. */
- PREFER_GMEM = 4, /* Always use GMEM unless we have strong evidence that SYSMEM is better. */
+ BANDWIDTH = 0, /* Uses estimated BW for determining rendering mode. */
+ PROFILED = 1, /* Uses dynamically profiled results for determining rendering mode. */
+ PROFILED_IMM = 2, /* Same as PROFILED but immediately resolves the SYSMEM/GMEM probability. */
DEFAULT = BANDWIDTH, /* Default algorithm, used if no other is specified. */
};
@@ -209,8 +207,6 @@ struct PACKED tu_autotune::config_t {
ALGO_STR(BANDWIDTH);
ALGO_STR(PROFILED);
ALGO_STR(PROFILED_IMM);
- ALGO_STR(PREFER_SYSMEM);
- ALGO_STR(PREFER_GMEM);
str += ", Mod Flags: 0x" + std::to_string(mod_flags) + " (";
MODF_STR(BIG_GMEM);
@@ -284,10 +280,6 @@ tu_autotune::get_env_config()
algo = algorithm::PROFILED;
} else if (algo_strv == "profiled_imm") {
algo = algorithm::PROFILED_IMM;
- } else if (algo_strv == "prefer_sysmem") {
- algo = algorithm::PREFER_SYSMEM;
- } else if (algo_strv == "prefer_gmem") {
- algo = algorithm::PREFER_GMEM;
} else {
mesa_logw("Unknown TU_AUTOTUNE_ALGO '%s', using default", algo_env_str);
}
@@ -1780,11 +1772,8 @@ tu_autotune::get_optimal_mode(struct tu_cmd_buffer *cmd_buffer, rp_ctx_t *rp_ctx
*/
bool can_early_return = !config.test(mod_flag::PREEMPT_OPTIMIZE);
auto early_return_mode = [&]() -> std::optional<render_mode> {
- if ((config.test(mod_flag::BIG_GMEM) && rp_state->drawcall_count >= 10) ||
- config.is_enabled(algorithm::PREFER_GMEM))
+ if (config.test(mod_flag::BIG_GMEM) && rp_state->drawcall_count >= 10)
return render_mode::GMEM;
- if (config.is_enabled(algorithm::PREFER_SYSMEM))
- return render_mode::SYSMEM;
return std::nullopt;
}();
--
2.54.0