[regression] GNOME 46/47 dropped support for Xilinx Mali graphics

Bug #2080602 reported by Daniel van Vugt
22
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Mutter
Fix Released
Unknown
mutter (Ubuntu)
Fix Released
High
Daniel van Vugt
Noble
Fix Committed
High
Daniel van Vugt
Oracular
Fix Released
High
Daniel van Vugt

Bug Description

[ Impact ]

Xilinx Mali support was originally written for GNOME 42 but it has bitrotted since then. We need to apply a few fixes to get it working again in GNOME 46 (Ubuntu 24.04 LTS) and later:

* https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4019 or
  https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4021
* https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4036

[ Test Plan ]

1. Log into an Ubuntu (GNOME + Wayland) session on Xilinx hardware.
2. Verify you can log in, there are no obvious rendering failures and that it really is a Wayland session (environment XDG_SESSION_TYPE=wayland and WAYLAND_DISPLAY=wayland-0).

[ Where problems could occur ]

The Mutter/GNOME startup procedure had to be modified for this fix as well as some texture format parameters. So there is a small risk to:
(a) The ability of any machine to log into a Wayland session; and
(b) Rendering correctness once logged in.

[ Other Info ]

Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: [mali] gnome-shell segfaults in _cogl_context_get_gl_extensions() at startup on Xilinx
summary: - [mali] gnome-shell segfaults in _cogl_context_get_gl_extensions() on
- Xilinx
+ [mali] gnome-shell segfaults in _cogl_context_get_gl_extensions() at
+ startup on Xilinx
description: updated
Changed in mutter (Ubuntu Noble):
assignee: nobody → Daniel van Vugt (vanvugt)
importance: Undecided → High
status: New → In Progress
milestone: none → noble-updates
Changed in mutter (Ubuntu Oracular):
milestone: none → ubuntu-24.10
tags: added: udeng-4548
summary: - [mali] gnome-shell segfaults in _cogl_context_get_gl_extensions() at
- startup on Xilinx
+ Restore support for Xilinx Mali in GNOME 46 and later
description: updated
tags: added: oracular regression-release
summary: - Restore support for Xilinx Mali in GNOME 46 and later
+ [regression] GNOME 46/47 dropped support for Xilinx Mali graphics
description: updated
Changed in mutter:
status: Unknown → Fix Released
Changed in mutter (Ubuntu Noble):
status: In Progress → Triaged
assignee: Daniel van Vugt (vanvugt) → nobody
assignee: nobody → Daniel van Vugt (vanvugt)
tags: added: fixed-in-mutter-47.1 fixed-upstream
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package mutter - 47.0-1ubuntu3

---------------
mutter (47.0-1ubuntu3) oracular; urgency=medium

  * Add patches to restore support for EGL 1.4 and GLES 2.0. They are
    required for Xilinx (Mali) support (LP: #2080602)

 -- Daniel van Vugt <email address hidden> Wed, 25 Sep 2024 13:49:09 +0800

Changed in mutter (Ubuntu Oracular):
status: In Progress → Fix Released
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

debdiff for noble

Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Tested the noble-2.debdiff with package in https://launchpad.net/~tchavadar/+archive/ubuntu/lp2080602-test/+packages

It seems working fine no visual disturbance on desktop screen please also see the console output below

```
ubuntu@kria:~$ echo $XDG_SESSION_TYPE
wayland
ubuntu@kria:~$ echo $WAYLAND_DISPLAY
wayland-0
ubuntu@kria:~$ apt policy libmutter-14-0
libmutter-14-0:
  Installed: 46.2-1ubuntu0.24.04.3
  Candidate: 46.2-1ubuntu0.24.04.3
  Version table:
 *** 46.2-1ubuntu0.24.04.3 500
        500 https://ppa.launchpadcontent.net/tchavadar/lp2080602-test/ubuntu noble/main arm64 Packages
        100 /var/lib/dpkg/status
     46.2-1ubuntu0.24.04.2 500
        500 http://ports.ubuntu.com/ubuntu-ports noble-updates/main arm64 Packages
     46.2-1ubuntu0.24.04.2~ppa08 500
        500 https://ppa.launchpadcontent.net/tchavadar/libegl-mali-xlnx-test/ubuntu noble/main arm64 Packages
     46.0-1ubuntu9 500
        500 http://ports.ubuntu.com/ubuntu-ports noble/main arm64 Packages
ubuntu@kria:~$ apt policy mutter
mutter:
  Installed: 46.2-1ubuntu0.24.04.3
  Candidate: 46.2-1ubuntu0.24.04.3
  Version table:
 *** 46.2-1ubuntu0.24.04.3 500
        500 https://ppa.launchpadcontent.net/tchavadar/lp2080602-test/ubuntu noble/main arm64 Packages
        100 /var/lib/dpkg/status
     46.2-1ubuntu0.24.04.2 500
        500 http://ports.ubuntu.com/ubuntu-ports noble-updates/universe arm64 Packages
     46.2-1ubuntu0.24.04.2~ppa08 500
        500 https://ppa.launchpadcontent.net/tchavadar/libegl-mali-xlnx-test/ubuntu noble/main arm64 Packages
     46.0-1ubuntu9 500
        500 http://ports.ubuntu.com/ubuntu-ports noble/universe arm64 Packages
```

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Thanks. Noble is on my list of things to do, just not at the top. Because I want to give the fix in Oracular more time to mature in case it causes problems on some platform.

tags: added: desktop-needs-sru
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I see some issues in the patch headers that need fixing. But instead of debdiffs, please create a merge request targeting the ubuntu/noble branch at:

https://salsa.debian.org/gnome-team/mutter/-/merge_requests

Changed in mutter (Ubuntu Noble):
assignee: Daniel van Vugt (vanvugt) → Talha Can Havadar (tchavadar)
status: Triaged → In Progress
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

MR created in https://salsa.debian.org/gnome-team/mutter/-/merge_requests/126#bc34014ab4b9a49dd7a27bdd8d352912607c3a96

Please let me know about the issues about headers there so I can fix it

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Uploaded and awaiting SRU approval (the link won't be valid until then):
https://launchpad.net/ubuntu/+source/mutter/46.2-1ubuntu0.24.04.3

Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Daniel, or anyone else affected,

Accepted mutter into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/mutter/46.2-1ubuntu0.24.04.3 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in mutter (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-noble
Revision history for this message
Talha Can Havadar (tchavadar) wrote :

Tested the package in proposed and it seems it is working fine see the console output below:

```
ubuntu@kria:~$ echo $XDG_SESSION_TYPE
wayland
ubuntu@kria:~$ echo $WAYLAND_DISPLAY
wayland-0
ubuntu@kria:~$ apt policy mutter
mutter:
  Installed: 46.2-1ubuntu0.24.04.3
  Candidate: 46.2-1ubuntu0.24.04.3
  Version table:
 *** 46.2-1ubuntu0.24.04.3 100
        100 /var/lib/dpkg/status
     46.2-1ubuntu0.24.04.3~xlnx01 500
        500 https://private-ppa.launchpadcontent.net/limerick-team/limerick-proposed/ubuntu noble/main arm64 Packages
     46.2-1ubuntu0.24.04.2 500
        500 http://ports.ubuntu.com/ubuntu-ports noble-updates/universe arm64 Packages
     46.2-1ubuntu0.24.04.2~ppa08 500
        500 https://ppa.launchpadcontent.net/tchavadar/libegl-mali-xlnx-test/ubuntu noble/main arm64 Packages
     46.0-1ubuntu9 500
        500 http://ports.ubuntu.com/ubuntu-ports noble/universe arm64 Packages
ubuntu@kria:~$

```

tags: added: verification-done-noble
removed: verification-needed-noble
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Verification failed:

../cogl/cogl/driver/gl/gl/cogl-driver-gl.c:435:8: warning: ‘gl_extensions’ is used uninitialized [-Wuninitialized]
  435 | if (!check_gl_version (ctx, gl_extensions, error))
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../cogl/cogl/driver/gl/gl/cogl-driver-gl.c:423:10: note: ‘gl_extensions’ was declared here
  423 | char **gl_extensions;
      | ^~~~~~~~~~~~~

While this isn't fatal (the uninitialized parameter is also unused :), it's not a mistake we want to live on in an LTS. Also there are other problems with the patch reported by 'gbp pq import' so we should redo this using the correct upstream patches:

https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/4021.patch
https://gitlab.gnome.org/GNOME/mutter/-/commit/2ce64ac0c313742023503d3426d57c2d79e8fe0e.patch

tags: added: verification-failed-noble
removed: verification-done-noble
Changed in mutter (Ubuntu Noble):
status: Fix Committed → In Progress
Changed in mutter (Ubuntu Noble):
assignee: Talha Can Havadar (tchavadar) → Daniel van Vugt (vanvugt)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Hello Daniel, or anyone else affected,

Accepted mutter into noble-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/mutter/46.2-1ubuntu0.24.04.4 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-noble to verification-done-noble. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-noble. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in mutter (Ubuntu Noble):
status: In Progress → Fix Committed
tags: added: verification-needed-noble
removed: verification-failed-noble
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (mutter/46.2-1ubuntu0.24.04.4)

All autopkgtests for the newly accepted mutter (46.2-1ubuntu0.24.04.4) for noble have finished running.
The following regressions have been reported in tests triggered by the package:

mutter/46.2-1ubuntu0.24.04.4 (amd64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/noble/update_excuses.html#mutter

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.