I tried rebooting again just to be safe, and there is no change in behavior.
I checked my syslog after starting Firefox, and I seem to have apparmor messages consistent with that bugzilla thread that @seb128 posted:
kernel: [ 189.669164] audit: type=1400 audit(1706672274.082:157): apparmor="DENIED" operation="symlink" class="file" profile="snap.firefox.firefox" name="/dev/char/195:255" pid=7911 comm="glxtest" requested_mask="c" denied_mask="c" fsuid=1000 ouid=1000
kernel: [ 189.669702] audit: type=1400 audit(1706672274.082:158): apparmor="DENIED" operation="symlink" class="file" profile="snap.firefox.firefox" name="/dev/char/195:0" pid=7911 comm="glxtest" requested_mask="c" denied_mask="c" fsuid=1000 ouid=1000
kernel: [ 189.669773] audit: type=1400 audit(1706672274.082:159): apparmor="DENIED" operation="symlink" class="file" profile="snap.firefox.firefox" name="/dev/char/195:0" pid=7911 comm="glxtest" requested_mask="c" denied_mask="c" fsuid=1000 ouid=1000
kernel: [ 189.669879] audit: type=1400 audit(1706672274.082:160): apparmor="DENIED" operation="symlink" class="file" profile="snap.firefox.firefox" name="/dev/char/195:0" pid=7911 comm="glxtest" requested_mask="c" denied_mask="c" fsuid=1000 ouid=1000
kernel: [ 189.669978] audit: type=1400 audit(1706672274.082:161): apparmor="DENIED" operation="symlink" class="file" profile="snap.firefox.firefox" name="/dev/char/195:0" pid=7911 comm="glxtest" requested_mask="c" denied_mask="c" fsuid=1000 ouid=1000
firefox_firefox.desktop[7811]: [GFX1-]: glxtest: libEGL initialize failed
The other snaps I’ve tried that seem to have GPU issues manifest differently, however. SuperTuxKart has no obviously related apparmor messages, but fails with this error in the stdout:
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error: GLXBadContext
Request Major code 152 (GLX)
Request Minor code 6 ()
Error Serial #117
Current Serial #116
I’ve also noticed that the firmware-updater snap appears to be failing in a similar way to SuperTuxKart. That causes this audit message to be logged:
audit: type=1400 audit(1706672570.176:175): apparmor="DENIED" operation="open" class="file" profile="snap.firmware-updater.firmware-updater-app" name="/proc/sys/vm/max_map_count" pid=10254 comm="firmware-update" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
But the more relevant errors that I see in the syslog would probably be these:
firmware-update[10254]: The program 'firmware-updater' received an X Window System error.#012This probably reflects a bug in the program.#012The error was 'BadValue'.#012 (Details: serial 581 error_code 2 request_code 152 (GLX) minor_code 22)#012 (Note to programmers: normally, X errors are reported asynchronously;#012 that is, you will receive the error a while after causing it.#012 To debug your program, run it with the GDK_SYNCHRONIZE environment#012 variable to change this behavior. You can then get a meaningful#012 backtrace from your debugger if you break on the gdk_x_error() function.)
kernel: [ 485.847667] traps: firmware-update[10254] trap int3 ip:7f3318e2658f sp:7fff74b88880 error:0 in libglib-2.0.so.0.7800.0[7f3318dd6000+ae000]
systemd[2972]: snap.firmware-updater.firmware-updater-app.service: Main process exited, code=dumped, status=5/TRAP
systemd[2972]: snap.firmware-updater.firmware-updater-app.service: Failed with result 'core-dump'.
systemd[2972]: snap.firmware-updater.firmware-updater-app.service: Scheduled restart job, restart counter is at 1.
Since this all seems to have started for me when I installed the Nvidia 545 drivers, I assume that downgrading to 535 would work, but I don’t really want to reboot again at the moment, so I’ll just make do with software rendered Firefox for now. I might check that later tnight if there’s a good opportunity.