[SOLVED] [pve8] kernel: EDID has corrupt header

i have change grup to GRUB_CMDLINE_LINUX="mgag200.disable_display=1"
but no luck :(

Sep 17 09:40:23 server kernel: EDID block 0 is all zeroes
Sep 17 09:40:33 server kernel: EDID block 0 is all zeroes
Sep 17 09:40:44 server kernel: EDID block 0 is all zeroes
Sep 17 09:40:54 server kernel: EDID block 0 is all zeroes
Sep 17 09:41:04 server kernel: EDID block 0 is all zeroes
 
Just upgraded from Proxmox 8 to 9 and this trick doesn't work anymore.

Bash:
Aug 30 18:32:55 srv1 kernel: i915 0000:00:02.0: Direct firmware load for edid/1280x1024.bin failed with error -2
Aug 30 18:32:55 srv1 kernel: i915 0000:00:02.0: [drm] *ERROR* [CONNECTOR:110:HDMI-A-1] Requesting EDID firmware "edid/1280x1024.bin" failed (err=-2)
Aug 30 18:32:55 srv1 kernel: EDID block 0 is all zeroes

I tried this as well but didn't help:



Any solutions?
Just hit this too where the grub trick worked in PVE8 but not 9 just don't need the logs filling up with repeated errors :(
 
Hello everyone,


after upgrading to proxmox 8 (to kernel 6.2.16-3-pve) the syslog is flooded with following messages:

Bash:
...
Jun 23 15:12:42 Proxmox kernel: EDID has corrupt header
Jun 23 15:12:42 Proxmox kernel: EDID block 0 is all zeroes
...

This is a headless server, no monitor is connected. This behaviour is new after the upgrade.

I have following modules active in `/etc/modules`:
Bash:
kvmgt

# Generated by sensors-detect on Mon Jan 17 13:04:59 2022
# Chip drivers
coretemp
jc42
nct6775

And following in the `/etc/kernel/cmdline`:
Bash:
root=ZFS=rpool/ROOT/pve-1 boot=zfs intel_iommu=on i915.enable_gvt=1 quiet loglevel=3 vga=current initcall_blacklist=sysfb_init

Any help here?


Thanks...


Edit0: I looked through the logs in dmesg, it seems to be a long standing bug:
https://github.com/intel/gvt-linux/issues/77

Edit1: I just found a workaround for everyone affected by this.
This issue is not just flooding the kernel logs, the server was stalling every 1-2 seconds as well.

The workaround is disabling the kms poller:
Bash:
echo "options drm_kms_helper poll=0" >> /etc/modprobe.d/modprobe.conf
update-initramfs -u -k all

See 3.4 in https://wiki.archlinux.org/title/kernel_mode_setting for more information.

Edit2: The above mentioned workaround disables the mode setting, so the screen (IPMI) stays black, so you have to be very careful, if you type a decryption password at boot. More user friendly workaround is just setting a arbitrary EDID and use fastboot, so drm doesn't try to set modes:

Code:
echo " i915.fastboot=1 drm.edid_firmware=edid/1280x1024.bin" >> /etc/kernel/cmdline
update-initramfs -u -k all && pve-efiboot-tool refresh
I can't edit the first post, so here is the solution that works for me on proxmox 9, since I just updated to it.

I just forced the mode in the kernel parameters according to this Arch-Wiki:

I added "video=HDMI-A-1:1920x1080@60e" to the parameter list and removed the parameter "drm.edid_firmware=edid/1280x1024.bin".
I hope that helps.