How to list Mesa versions included in my flatpak applications?

A while ago, I posted a message on the thread AMD APU regression (full halt) on kernel 6.10 - how to best report? - Fedora Discussion.

As I understand it, the crash was due to an incompatibility between version < 24.1.6 of Mesa and kernel 6.10.5.

This upstream comment says the bug has been fixed in Mesa version 24.1.6.

Problem: I have Mesa version 24.1.7 installed, but I’m still crashing Gnome Shell :pensive:.

$ dnf info “mesa-dri-drivers”
Last metadata expiration check: 0:02:37 ago on Thu Sep 12 10:21:28 2024.
Installed Packages
Name : mesa-dri-drivers
Version : 24.1.7
Release : 1.fc40
Architecture : i686
$ ununame --all
Linux t14s 6.10.8-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Sep 4 21:41:11 UTC 2024 x86_64 GNU/Linux

I read in this upstream comment:

If you are using flatpaks or similar they may contain old versions of mesa.

Question: How can I identify the versions of Mesa used by Flatpak applications installed on my system? What are the commands?

I would like to identify which specific flatpak application is generating these crashes to uninstall it or see how I can update it.

Best regards,
Stéphane

There have been two separate issues with AMD APU’s. One could be more or less resolved (or at least avoided) by using a patched Mesa version, but the other one can still pop up and crash your session.

For that second issue a kernel driver update is needed that will likely land in kernel 6.11. This particular bug is a regression and does not occur in kernel 6.9, if you have an older kernel still installed you can boot into that to avoid it. Kernel 6.10 is affected, so for a more definitive fix you would have to wait until kernel 6.11.

1 Like

Assuming your application uses the GNOME runtime, or freedesktop-sdk runtime, the components used to build the runtime are recorded in /usr/manifest.json. I bet the KDE runtime does this too? (Fedora runtimes probably don’t?)

$ flatpak run --command=bash com.example.AppID
[📦 com.example.AppID ~]$ less /usr/manifest.json

You can use that to see the versions of pretty much everything other than mesa. But it will show the version of mesa used to build the runtime itself, which is not what you want. What you actually care about is the version used by the mesa extension you have installed:

$ flatpak list | grep Mesa
Mesa                                                org.freedesktop.Platform.GL.default      24.2.1       23.08           flathub           system
Mesa (Extra)                                        org.freedesktop.Platform.GL.default      24.2.1       23.08-extra     flathub           system
Mesa                                                org.freedesktop.Platform.GL.default      24.2.1       24.08           gnome-nightly     system
Mesa (Extra)                                        org.freedesktop.Platform.GL.default      24.2.1       24.08extra      gnome-nightly     system

As you see, I have base and extra mesa extensions installed for both 23.08 and 24.08, and both use mesa version 24.2.1. In case you find different mesa versions here, you’ll need some way to tell which is used by your application, but I don’t know how. What I can tell you is that GNOME 45 and 46 runtimes are based on freedesktop-sdk 23.08, and 47 is based on freedesktop-sdk 24.08.

2 Likes

Do you have a reference for this? It seems highly unusual that amdgpu developers would just accept that 6.10 is broken forever instead of backporting the fix or reverting the commit that regressed.

So the bug can be triggered by an interaction between Mesa and the amdgpu driver. Initially when both were unpatched it could cause full system hangs, which is severe. When Mesa was patched the severity of crashes seems to have reduced to mostly visual artifacts and occassional session crashes, which is an an improvement.

I could personally reproduce the behaviour reliably on a system with Mesa 24.1.7 and kernel 6.10.3, running only Firefox (non-flatpak) and no other programs. Other reports on freedesktop.org have indicated similar behaviour with 6.10.X kernels.

An AMD developer asked for a bisect on the kernel mailinglist:

https://lore.kernel.org/all/CADnq5_OdhFZtZhmLQcFrao_VJG54Nq+cQnA-03bmWUKhXFuXVQ@mail.gmail.com/

Which was then made and submitted to the ticket below. It does not indicate unfortunately which kernel release is going to incorporate a fix. If it already landed in one of the 6.10 kernels after .3 it would be good to find a commit message for it (i haven’t been able to find one).

Edit: i have tested with kernel 6.10.9 / mesa 24.1.7 and the issue is still present there.

1 Like