drm: simpledrm: fbdev emulation error with CONFIG_DRM_SIMPLEDRM enabled

Zoltán Kővágó dirty.ice.hu at gmail.com
Fri Sep 24 18:03:21 UTC 2021


Hi,

Did anything happen with this issue? I've updated linux kernel to 5.14.7 
from 5.13 today, and I've been hit with a very similar problem (even 
inside qemu), except in my case the height reported in "bad framebuffer 
height" was twice the actual height, not three times. After some digging 
around I've figured out that at the end of 
drm_fb_helper_single_fb_probe, surface_height is multiplied by 
CONFIG_DRM_FBDEV_OVERALLOC/100, which was somewhy set to 200 in my 
kernel config. Setting it to 100 fixed that problem. (It looks like the 
default now, I don't know why was it set to 200 in my config, maybe the 
old default was different).

However it's still very buggy, even after setting 
CONFIG_DRM_FBDEV_OVERALLOC to 100. On my notebook (ASUS G551JW, with a 
4th gen i7 cpu), this is what I observe:
* after the kernel boots, the tux logos rapidly flicker at the top of 
the screen and I only see text at the bottom of the screen. After a few 
seconds it returns to normal.
* when starting X, whet it switches to a new VT the tux logos reappear 
along with some text, but only in the upper left corner. This is also 
only happens for a second or so, until X overtakes the display.
* when terminating X, the tux logos with the garbage text remain in the 
upper left corner, but the rest of the screen is replaced with the 
correct contents. The garbage in the top left corner remains until 
something overwrites it (like scrolling the terminal).
So it works, but buggy as hell and at this point I'm better disabling 
simpledrm and just relying on the i915 driver, losing early console. I 
tried booting with drm.debug=0x1ff, but by the time I could run dmesg it 
generated so many messages that the early boot messages were already lost.

Now, my desktop is even worse. Motherboard is an ASRock Z87M Extreme4, 
with a GeForce GT 640 and GTX 980 cards (the integrated GPU in the intel 
CPU is disabled in UEFI settings). Unfortunately this requires the 
proprietary nvidia drivers, so it's probably my own problem, but anyway 
it works until I it loads the nvidia drivers, then afterwards (while 
still in fbcon) I instead get 4 or 5 small copies of my terminal in the 
upper part of the screen with wrong stride, so it's completely 
unreadable. And if I ever start X, I won't have any fbcon until reboot. 
So 5.14 is basically unusable on this machine.

Any ideas what should I try? Everything worked well with 5.13 and its 
simplefb.

Thanks,
Zoltan



More information about the dri-devel mailing list