On a Meteor Lake-P using the i915 driver, when I rotated the screen 90° with xrandr --output eDP-1 --rotate right, it would cause a huge delay in painting the screen (other than a 16×1920px chunk on the top edge that seemed to paint immediately).
I resolved this by disabling framebuffer compression:
- Edit
/etc/default/grub - Add
enable_fbc=0to the end ofGRUB_CMDLINE_LINUX= - Run
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
I experimented with disabled other options (enable_rps, semaphores, enable_dc) but none of those seemed to make a difference.
Hope this is helpful to someone!
Hi @zaz and thanks for documenting this here!
I experience the same issue, except the small chunk that still gets painted immediately is on the right edge. And I have it connected via HDMI, not eDP.
Unfortunately, your proposed solution doesn’t fix it in my case. Do you have any further pointers, etc for debugging?
You could try debugging the issue with the help of a LLM. That’s how I arrived at the solution above.
Caution: Do not blindly run the commands it suggests. For example, I searched the documentation for the above options before adding them to GRUB.
The general idea is that there are many options that turn off efficiency improvements in favor of robustness. I added as many such relevant options as possible, saw that it worked, then gradually removed them until I found the one option that was making it work. You can either add them manually during boot or add them as I show above.
Failing that, maybe an alternative physical connection method would work?
I hope that helps.