From 42207dee813d9522f81506c1922fd5e5f9bd95b4 Mon Sep 17 00:00:00 2001 From: John Date: Thu, 2 Nov 2023 16:22:39 +0100 Subject: [PATCH] mesa: import patch to fix freezes on Ice Lake iGPUs resolves #47022 --- ...bce3e249a34665b2c42b20bfdbdc7f32147f.patch | 75 +++++++++++++++++++ srcpkgs/mesa/template | 2 +- 2 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/mesa/patches/9590bce3e249a34665b2c42b20bfdbdc7f32147f.patch diff --git a/srcpkgs/mesa/patches/9590bce3e249a34665b2c42b20bfdbdc7f32147f.patch b/srcpkgs/mesa/patches/9590bce3e249a34665b2c42b20bfdbdc7f32147f.patch new file mode 100644 index 00000000000000..debefd3999d321 --- /dev/null +++ b/srcpkgs/mesa/patches/9590bce3e249a34665b2c42b20bfdbdc7f32147f.patch @@ -0,0 +1,75 @@ +From 9590bce3e249a34665b2c42b20bfdbdc7f32147f Mon Sep 17 00:00:00 2001 +From: WinLinux1028 +Date: Tue, 11 Jul 2023 18:16:01 +0900 +Subject: [PATCH] radeonsi: prefix function with si_ to prevent name collision + +Fixed a build error caused by multiple gfx11_init_query symbols when building with iris and radeonsi specified in gallium-drivers. + +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9238 +Part-of: +--- + src/gallium/drivers/radeonsi/gfx11_query.c | 4 ++-- + src/gallium/drivers/radeonsi/si_pipe.c | 4 ++-- + src/gallium/drivers/radeonsi/si_pipe.h | 4 ++-- + 3 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/gallium/drivers/radeonsi/gfx11_query.c b/src/gallium/drivers/radeonsi/gfx11_query.c +index bfcd8e2511050..2a331cc3bda25 100644 +--- a/src/gallium/drivers/radeonsi/gfx11_query.c ++++ b/src/gallium/drivers/radeonsi/gfx11_query.c +@@ -422,13 +422,13 @@ struct pipe_query *gfx11_sh_query_create(struct si_screen *screen, enum pipe_que + return (struct pipe_query *)query; + } + +-void gfx11_init_query(struct si_context *sctx) ++void si_gfx11_init_query(struct si_context *sctx) + { + list_inithead(&sctx->shader_query_buffers); + sctx->atoms.s.shader_query.emit = emit_shader_query; + } + +-void gfx11_destroy_query(struct si_context *sctx) ++void si_gfx11_destroy_query(struct si_context *sctx) + { + if (!sctx->shader_query_buffers.next) + return; +diff --git a/src/gallium/drivers/radeonsi/si_pipe.c b/src/gallium/drivers/radeonsi/si_pipe.c +index fb5c02c473b96..2b4fceb89b198 100644 +--- a/src/gallium/drivers/radeonsi/si_pipe.c ++++ b/src/gallium/drivers/radeonsi/si_pipe.c +@@ -192,7 +192,7 @@ static void si_destroy_context(struct pipe_context *context) + si_release_all_descriptors(sctx); + + if (sctx->gfx_level >= GFX10 && sctx->has_graphics) +- gfx11_destroy_query(sctx); ++ si_gfx11_destroy_query(sctx); + + if (sctx->sqtt) { + struct si_screen *sscreen = sctx->screen; +@@ -637,7 +637,7 @@ static struct pipe_context *si_create_context(struct pipe_screen *screen, unsign + /* Initialize graphics-only context functions. */ + if (sctx->has_graphics) { + if (sctx->gfx_level >= GFX10) +- gfx11_init_query(sctx); ++ si_gfx11_init_query(sctx); + si_init_msaa_functions(sctx); + si_init_shader_functions(sctx); + si_init_state_functions(sctx); +diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h +index 55f1d1788f1a1..389716854f9a6 100644 +--- a/src/gallium/drivers/radeonsi/si_pipe.h ++++ b/src/gallium/drivers/radeonsi/si_pipe.h +@@ -1616,8 +1616,8 @@ void *si_create_query_result_cs(struct si_context *sctx); + void *gfx11_create_sh_query_result_cs(struct si_context *sctx); + + /* gfx11_query.c */ +-void gfx11_init_query(struct si_context *sctx); +-void gfx11_destroy_query(struct si_context *sctx); ++void si_gfx11_init_query(struct si_context *sctx); ++void si_gfx11_destroy_query(struct si_context *sctx); + + /* si_test_image_copy_region.c */ + void si_test_image_copy_region(struct si_screen *sscreen); +-- +GitLab + diff --git a/srcpkgs/mesa/template b/srcpkgs/mesa/template index ce36abfc770266..f36ebe59380411 100644 --- a/srcpkgs/mesa/template +++ b/srcpkgs/mesa/template @@ -1,7 +1,7 @@ # Template file for 'mesa' pkgname=mesa version=23.2.1 -revision=1 +revision=2 build_style=meson #Disable LTO flag should be present, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/6911 configure_args="-Dglvnd=true -Dshared-glapi=enabled -Dgbm=enabled -Degl=enabled