2024-03-04 16:09:50

by Paul Menzel

[permalink] [raw]
Subject: Linux warns `sysfb: VRAM smaller than advertised` when using kexec

Dear Linux folks,


Rebooting a the AMD server Supermicro AS-2023US-TR4/H11DSU-iN, BIOS 1.3
01/30/2020 with kexec from Linux 5.15.86 to Linux 6.6.12, Linux 6.6.12
prints the warning below.

$ dmesg --level alert,crit,err,warn # below are all warnings
[ 15.102627] sysfb: VRAM smaller than advertised
[ 24.444136] ipmi_si dmi-ipmi-si.0: The BMC does not support
clearing the recv irq bit, compensating, but the BMC needs to be fixed.
[ 53.213763] systemd[1749]: memfd_create() called without
MFD_EXEC or MFD_NOEXEC_SEAL set

On an identical server reboot *without* kexec that means going through
the firmware, Linux does not warn about this.

With kexec:

[ 15.064652] PCI: Using ACPI for IRQ routing
[ 15.077994] PCI: pci_cache_line_size set to 64 bytes
[ 15.078760] e820: reserve RAM buffer [mem 0x75db0000-0x77ffffff]
[ 15.078768] e820: reserve RAM buffer [mem 0xc6699000-0xc7ffffff]
[ 15.078774] e820: reserve RAM buffer [mem 0xc9cf5000-0xcbffffff]
[ 15.078780] e820: reserve RAM buffer [mem 0xc9e1c000-0xcbffffff]
[ 15.078785] e820: reserve RAM buffer [mem 0x202f380000-0x202fffffff]
[ 15.078791] e820: reserve RAM buffer [mem 0x402ff80000-0x402fffffff]
[ 15.078796] e820: reserve RAM buffer [mem 0x602ff80000-0x602fffffff]
[ 15.078801] e820: reserve RAM buffer [mem 0x802ff80000-0x802fffffff]
[ 15.078806] e820: reserve RAM buffer [mem 0xa02ff80000-0xa02fffffff]
[ 15.078811] e820: reserve RAM buffer [mem 0xc02ff80000-0xc02fffffff]
[ 15.078816] e820: reserve RAM buffer [mem 0xe02ff80000-0xe02fffffff]
[ 15.078822] e820: reserve RAM buffer [mem
0x1002ff80000-0x1002fffffff]
[ 15.079596] pci 0000:06:00.0: vgaarb: setting as boot VGA device
[ 15.080505] pci 0000:06:00.0: vgaarb: bridge control possible
[ 15.080505] pci 0000:06:00.0: vgaarb: VGA device added:
decodes=io+mem,owns=io+mem,locks=none
[ 15.099586] vgaarb: loaded
[ 15.102627] sysfb: VRAM smaller than advertised
[ 15.107626] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0
[ 15.112508] hpet0: 3 comparators, 32-bit 14.318180 MHz counter

Without kexec:

[ 4.794671] PCI: Using ACPI for IRQ routing
[ 4.807791] PCI: pci_cache_line_size set to 64 bytes
[ 4.808411] e820: reserve RAM buffer [mem 0x75db0000-0x77ffffff]
[ 4.808415] e820: reserve RAM buffer [mem 0xc6580000-0xc7ffffff]
[ 4.808417] e820: reserve RAM buffer [mem 0xc9cf9000-0xcbffffff]
[ 4.808420] e820: reserve RAM buffer [mem 0xc9e20000-0xcbffffff]
[ 4.808423] e820: reserve RAM buffer [mem 0x202f380000-0x202fffffff]
[ 4.808425] e820: reserve RAM buffer [mem 0x402ff80000-0x402fffffff]
[ 4.808428] e820: reserve RAM buffer [mem 0x602ff80000-0x602fffffff]
[ 4.808430] e820: reserve RAM buffer [mem 0x802ff80000-0x802fffffff]
[ 4.808432] e820: reserve RAM buffer [mem 0xa02ff80000-0xa02fffffff]
[ 4.808434] e820: reserve RAM buffer [mem 0xc02ff80000-0xc02fffffff]
[ 4.808437] e820: reserve RAM buffer [mem 0xe02ff80000-0xe02fffffff]
[ 4.808439] e820: reserve RAM buffer [mem
0x1002ff80000-0x1002fffffff]
[ 4.808650] pci 0000:06:00.0: vgaarb: setting as boot VGA device
[ 4.809523] pci 0000:06:00.0: vgaarb: bridge control possible
[ 4.809523] pci 0000:06:00.0: vgaarb: VGA device added:
decodes=io+mem,owns=io+mem,locks=none
[ 4.828561] vgaarb: loaded
[ 4.831626] hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0
[ 4.836526] hpet0: 3 comparators, 32-bit 14.318180 MHz counter

Only the start of the RAM buffer sizes differ a little: With the t
removed, wdiff shows:

e820: reserve RAM buffer [mem [-0xc6699000-] {+0xc6580000+} 0xc7ffffff]
e820: reserve RAM buffer [mem [-0xc9cf5000-] {+0xc9cf9000+} 0xcbffffff]
e820: reserve RAM buffer [mem [-0xc9e1c000-] {+0xc9e20000+} 0xcbffffff]

Please find the output of `dmesg` attached.


Kind regards,

Paul


Attachments:
supermicro-2023us-tr4--with-kexec--linux-6.6.12--messages.txt (142.47 kB)
supermicro-2023us-tr4--without-kexec--linux-6.6.12--messages.txt (166.49 kB)
Download all attachments