LibreOffice on Fedora 41 lags and is sometimes unresponsive

A suggestion on how to proceed:

To enable the “full” hardware capabilities, you need xe/i915 hardware acceleration in X11. It’s hard to say exactly what features are in which driver. For more information, see the original “Merge Acceptance Plan” from the 6.6 kernel here:

https://www.kernel.org/doc/html/v6.6/gpu/rfc/xe.html

Do the following steps:

[1] Load the drivers (or make sure, they are loaded) by

modprobe xe i915

in dom0 terminal.

[2] Check again by

lsmod | grep -e xe -e i915 

This should show both modules loaded with some bindings.

[3] Now make sure you load the xe module as the primary driver. It is not always detected. (See e.g. qubes issue 8561 here – marmarek’s final comment: sys-gui-gpu on 13th gen Intel ends in black screen after boot. · Issue #8561 · QubesOS/qubes-issues · GitHub ) It means you need to force probing for this module by pci device id. You can find this id by running lspci

lspci -nn | grep VGA 

in the dom0 terminal. It’s the tupel in square brackets. The first id is the vendor id, the second is a device id. You need the second, the graphic device id. Intel lists it on their website as 7d55 for the Ultra 7 155H. The above command should give you the same id.

Now edit /etc/default/grub in the dom0 terminal; add xe.force_probe=7d55 at the end of the line starting with GRUB_CMD_LINUX inside the quotes. Update the grub configuration by issuing

sudo grub2-mkconfig -o $(sudo find /boot -iname "*.cfg") 

in dom0 terminal. This essentially tries to update the file it finds as a valid cfg file. You could do this step by step with “more” control:

sudo find /boot -iname "*.cfg" 

and then

sudo grub2-mkconfig -o FILENAME_YOU_FOUND_WITH_FULL_PATH 

The inclusive command version should be save, as grub2-mkconfig will fail if there is no valid cfg file. Once that’s done, do some sync inside the dom0 terminal (I know, it’s pretty paranoid, but I’ve gotten so used to it – it’s second nature now).

[4] Try rebooting.

[4.1] If startup hangs, you can edit grub by pressing e, edit the kernel line with the typo and save with f10.

[4.2] If not, you are good to go and check inside the dom0 terminal:

lsmod | grep xe 

xe should now be the primary module, sometimes as a single bind, sometimes in conjunction with i915. If both xe and i915 drivers are present, xe should be referenced first. Like this:

xe 3526656  0
drm_ttm_helper 16384 1 xe 
gpu_sched 65536 1 xe 
drm_suballoc_helper 16384 1 xe 
drm_gpuvm 45056 1 xe 
drm_exec 12288 2 drm_gpuvm,xe 
i915 5054464 4 
i2c_algo_bit 20480 2 xe,i915 
drm_buddy 28672 2 xe,i915 
ttm 114688 3 drm_ttm_helper,xe,i915 
drm_display_helper 299008 2 xe,i915 
cec 98304 3 drm_display_helper,xe,i915 
video 81920 2 xe,i915

[5] Check X11 logs in the dom0 terminal, which should contain some DRI loading info messages with iris references:

cat /var/log/Xorg.0.log | grep iris 

It should output something like this (with different timestamps):

[30.074] (II) modeset(0): [DRI2] DRI driver: iris 
[30.332] (II) AIGLX: Loaded and initialized iris 

You should now be able to watch YouTube (embedded) videos even with ambient mode enabled, and LibreOffice applications should render much faster. (Over here they do.)