From 95bf69863dcdc3fab23301ce6500cc4ed10add1d160e379cc3928b3015bb803c Mon Sep 17 00:00:00 2001 From: Stefan Dirsch Date: Sun, 15 Oct 2023 03:51:58 +0000 Subject: [PATCH] Accepting request 1117836 from home:iznogood:factory - Add U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch Fix https://gitlab.freedesktop.org/mesa/mesa/-/issues/9889 OBS-URL: https://build.opensuse.org/request/show/1117836 OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=1239 --- Mesa.changes | 6 ++ Mesa.spec | 4 +- ...function-with-si_-to-prevent-name-co.patch | 75 +++++++++++++++++++ 3 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch diff --git a/Mesa.changes b/Mesa.changes index ad456da..6021577 100644 --- a/Mesa.changes +++ b/Mesa.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sat Oct 14 22:31:08 UTC 2023 - Bjørn Lie + +- Add U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch + Fix https://gitlab.freedesktop.org/mesa/mesa/-/issues/9889 + ------------------------------------------------------------------- Wed Oct 4 10:11:42 UTC 2023 - Bjørn Lie diff --git a/Mesa.spec b/Mesa.spec index 192f584..98de21e 100644 --- a/Mesa.spec +++ b/Mesa.spec @@ -140,6 +140,7 @@ Source7: Mesa.keyring Patch2: n_add-Mesa-headers-again.patch # Patches for LLVM 17, should all be in 23.2. Patch4: U_clover-llvm-move-to-modern-pass-manager.patch +Patch10: U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch # never to be upstreamed Patch54: n_drirc-disable-rgb10-for-chromium-on-amd.patch Patch58: u_dep_xcb.patch @@ -162,7 +163,7 @@ BuildRequires: glslang-devel BuildRequires: imake BuildRequires: libtool BuildRequires: memory-constraints -BuildRequires: meson +BuildRequires: meson >= 0.60 BuildRequires: pkgconfig BuildRequires: python3-base # dataclasses is in standard library of python >= 3.7 @@ -773,6 +774,7 @@ rm -rf docs/README.{VMS,WIN32,OS2} %patch2 -p1 %patch4 -p1 +%patch10 -p1 # no longer needed since gstreamer-plugins-vaapi 1.18.4 %if 0%{?suse_version} < 1550 %patch54 -p1 diff --git a/U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch b/U_radeonsi-prefix-function-with-si_-to-prevent-name-co.patch new file mode 100644 index 0000000..c55cbf4 --- /dev/null +++ b/U_radeonsi-prefix-function-with-si_-to-prevent-name-co.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 bfcd8e25110..2a331cc3bda 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 fb5c02c473b..2b4fceb89b1 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 55f1d1788f1..389716854f9 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); +-- +2.41.0 +