HD Graphics 520: horrible 2D performance in Linux 5.5 (probably 5.4 as well) - last working kernel is 5.3
In Linux 5.3.11-300.fc31.x86_64 I have a decent enough performance in Fedora 31 (XFCE + xfwm4 + compositing on).
However in Linux 5.5.13-200.fc31.x86_64 the i915 driver performance is beyond terrible: I cannot even watch youtube 1080p videos in Google Chrome without constant lags each three seconds (the image freezes) and thousands of skipped frames. Actually everything is extremely laggy in kernel 5.5, e.g. Mozilla Firefox WebRender process often uses 100% of the CPU when rendering pretty basic web pages.
My hardware is:
product: HP Pavilion x360 Convertible (P1F10UA#ABA)
BIOS: F.28 (the latest available release, this laptop is no longer supported)
CPU: Intel(R) Core(TM) i5-6200U CPU @ 2.30GHz
Dmesg in 5.3.11 where the 2D performance is semi-decent (still a lot worse than in Windows 10 installed on the same laptop - under Windows 10 this laptop flies in comparison):
Relevant dmesg messages in Linux 5.3:
Command line: ro rhgb quiet i915.enable_guc=2 pci=nommconf
MTRR default type: uncachable
MTRR fixed ranges enabled:
MTRR variable ranges enabled:
pmd_set_huge: Cannot satisfy [mem 0xa0000000-0xa0200000] with a huge-page mapping due to MTRR override.
fb0: switching to inteldrmfb from EFI VGA
i915 0000:00:02.0: vgaarb: deactivate vga console
[drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[drm] Driver supports precise vblank timestamp query.
i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[drm] Finished loading DMC firmware i915/skl_dmc_ver1_27.bin (v1.27)
[drm] HuC: Loaded firmware i915/skl_huc_ver01_07_1398.bin (version 1.7)
[drm] GuC: Loaded firmware i915/skl_guc_32.0.3.bin (version 32.0)
[drm] CT: enabled
i915 0000:00:02.0: GuC firmware version 32.0
i915 0000:00:02.0: GuC submission disabled
i915 0000:00:02.0: HuC enabled
[drm] Initialized i915 1.6.0 20190619 for 0000:00:02.0 on minor 0
snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
fbcon: i915drmfb (fb0) is primary device
i915 0000:00:02.0: fb0: i915drmfb frame buffer device
# xrandr
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 290mm x 170mm
1920x1080 60.00*+ 59.93 40.00
# cat /sys/class/drm/card0/error
No error state collected
# cat /proc/mtrr
reg00: base=0x000000000 ( 0MB), size=32768MB, count=1: write-back
reg01: base=0x08ceff000 ( 2254MB), size= 4KB, count=1: uncachable
reg02: base=0x08cf00000 ( 2255MB), size= 1MB, count=1: uncachable
reg03: base=0x08d000000 ( 2256MB), size= 16MB, count=1: uncachable
reg04: base=0x08e000000 ( 2272MB), size= 32MB, count=1: uncachable
reg05: base=0x090000000 ( 2304MB), size= 256MB, count=1: uncachable
reg06: base=0x0a0000000 ( 2560MB), size= 512MB, count=1: uncachable
reg07: base=0x0c0000000 ( 3072MB), size= 1024MB, count=1: uncachable
# cat /etc/X11/xorg.conf.d/90-intel.conf
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "TearFree" "true"
EndSection
I have zero desire to bisect this issue - I presume it's due to the security related fixes in newer kernels but the mitigations make this laptop unusable. I can't test kernel 5.4 because my laptop doesn't boot with it due to another kernel bug which was only fixed in 5.5.11.
Please advise.