[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1054076: marked as done (mesa: fix name collision causing Wayland SIGSEGV on i915 machines)



Your message dated Tue, 23 Jan 2024 11:28:50 +0100
with message-id <CA+fnjVA6T36SQ75VQXNhymD84MdF69KFJ-NqaodNe88N45RnWg@mail.gmail.com>
and subject line mesa: fix name collision causing Wayland SIGSEGV on i915 machines
has caused the Debian Bug report #1054076,
regarding mesa: fix name collision causing Wayland SIGSEGV on i915 machines
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1054076: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1054076
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: mesa
Version: 23.2.1-1
Severity: important
Tags: patch upstream
X-Debbugs-Cc: hlieberman@debian.org
Control: forwarded -1 https://gitlab.freedesktop.org/mesa/mesa/-/issues/9889
Control: affects -1 gnome-shell

Hello maintainer,

Due to a name collision in the radeonsi module, gdm under Wayland will segfault
on any machine running an Intel Iris Plus GPU. This was reported in a variety of
distro trackers (https://bugzilla.redhat.com/show_bug.cgi?id=2238711,
https://bugs.archlinux.org/task/79831, etc.).

It can be fixed trivially with the cherry-pick of a patch upstream that is
allocated to be pulled into the 23.2 release stream
(https://gitlab.freedesktop.org/mesa/mesa/-/commit/9590bce3e249a34665b2c42b20bfdbdc7f32147f).
However, due to the impact on users, it would be nice to pull it in before Mesa
makes their next release.

I've attached the patch as well for your reference.

Sincerely,

--
Harlan Lieberman-Berg
~hlieberman

-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.5.0-2-amd64 (SMP w/8 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
>From 9590bce3e249a34665b2c42b20bfdbdc7f32147f Mon Sep 17 00:00:00 2001
From: WinLinux1028 <reimu@hakurei.win>
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: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24045>
---
 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


--- End Message ---
--- Begin Message ---
Source-Version: 23.3.0-1

--- End Message ---

Reply to: