lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <e60b762e-f060-4435-94a4-ad8a54080843@molgen.mpg.de>
Date: Mon, 4 Mar 2024 17:08:49 +0100
From: Paul Menzel <pmenzel@...gen.mpg.de>
To: Hans de Goede <hdegoede@...hat.com>
Cc: linux-fbdev@...r.kernel.org, LKML <linux-kernel@...r.kernel.org>
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
View attachment "supermicro-2023us-tr4--with-kexec--linux-6.6.12--messages.txt" of type "text/plain" (145888 bytes)

View attachment "supermicro-2023us-tr4--without-kexec--linux-6.6.12--messages.txt" of type "text/plain" (170485 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ