Description of problem: When I try to boot with a large (499342536 B) initrd on UEFI, Grub prints the error "can't allocate initrd" and the kernel then panics (it can't find root) Version-Release number of selected component (if applicable): 1:2.02-142.el8_7.3 How reproducible: Easily at least on a HP ProLiant DL180 Gen9 with a large initrd (I can provide one) and console access Steps to Reproduce: 1. boot to the GRUB prompt 2. linux /rear/EFI/BOOT/kernel console=ttyS0,115200 3. initrd /rear/EFI/BOOT/initrd.cgz Actual results: error: ../../grub-core/loader/i386/efi/linux.c:158:can't allocate initrd. Expected results: initrd gets loaded and I can boot Additional info: A similar bug was reported as bz2048433 and now it looks that it has reappeared. I tried grub2-2.02-121.el8, works fine, so it is a regression. Memory information from EFI shell Shell> memmap Type Start End # Pages Attributes BS_Code 0000000000000000-0000000000000FFF 0000000000000001 000000000000000F Available 0000000000001000-0000000000057FFF 0000000000000057 000000000000000F BS_Code 0000000000058000-0000000000092FFF 000000000000003B 000000000000000F BS_Data 0000000000093000-0000000000093FFF 0000000000000001 000000000000000F BS_Code 0000000000094000-000000000009FFFF 000000000000000C 000000000000000F Available 0000000000100000-0000000007FFFFFF 0000000000007F00 000000000000000F BS_Code 0000000008000000-000000000FFFFFFF 0000000000008000 000000000000000F Available 0000000010000000-000000003ECFFFFF 000000000002ED00 000000000000000F BS_Data 000000003ED00000-000000003ED7FFFF 0000000000000080 000000000000000F Available 000000003ED80000-000000005A6A0FFF 000000000001B921 000000000000000F Reserved 000000005A6A1000-000000005B4A0FFF 0000000000000E00 000000000000000F BS_Data 000000005B4A1000-000000006ECFAFFF 000000000001385A 000000000000000F BS_Code 000000006ECFB000-000000006ECFBFFF 0000000000000001 000000000000000F Available 000000006ECFC000-0000000070CD1FFF 0000000000001FD6 000000000000000F BS_Data 0000000070CD2000-0000000070EBEFFF 00000000000001ED 000000000000000F Available 0000000070EBF000-000000007100BFFF 000000000000014D 000000000000000F BS_Data 000000007100C000-0000000071047FFF 000000000000003C 000000000000000F Available 0000000071048000-0000000071055FFF 000000000000000E 000000000000000F BS_Data 0000000071056000-0000000071072FFF 000000000000001D 000000000000000F Available 0000000071073000-0000000071075FFF 0000000000000003 000000000000000F BS_Data 0000000071076000-000000007107CFFF 0000000000000007 000000000000000F Available 000000007107D000-000000007107FFFF 0000000000000003 000000000000000F BS_Data 0000000071080000-0000000076CFEFFF 0000000000005C7F 000000000000000F Available 0000000076CFF000-00000000772D1FFF 00000000000005D3 000000000000000F LoaderCode 00000000772D2000-00000000774FEFFF 000000000000022D 000000000000000F Available 00000000774FF000-00000000777ECFFF 00000000000002EE 000000000000000F BS_Code 00000000777ED000-00000000784FEFFF 0000000000000D12 000000000000000F RT_Data 00000000784FF000-00000000788FEFFF 0000000000000400 800000000000000F RT_Code 00000000788FF000-00000000790FEFFF 0000000000000800 800000000000000F Reserved 00000000790FF000-00000000791FEFFF 0000000000000100 000000000000000F ACPI_NVS 00000000791FF000-000000007B5FEFFF 0000000000002400 000000000000000F ACPI_Recl 000000007B5FF000-000000007B7FEFFF 0000000000000200 000000000000000F BS_Data 000000007B7FF000-000000007B7FFFFF 0000000000000001 000000000000000F Available 0000000100000000-000000047FFFFFFF 0000000000380000 000000000000000F MMIO 0000000080000000-000000008FFFFFFF 0000000000010000 8000000000000000 Reserved : 3,840 Pages (15,728,640 Bytes) LoaderCode: 557 Pages (2,281,472 Bytes) LoaderData: 0 Pages (0 Bytes) BS_Code : 36,187 Pages (148,221,952 Bytes) BS_Data : 104,360 Pages (427,458,560 Bytes) RT_Code : 2,048 Pages (8,388,608 Bytes) RT_Data : 1,024 Pages (4,194,304 Bytes) ACPI_Recl : 512 Pages (2,097,152 Bytes) ACPI_NVS : 9,216 Pages (37,748,736 Bytes) MMIO es (0 Bytes) PalCode : 0 Pages (0 Bytes) Available : 4,018,032 Pages (16,457,859,072 Bytes) Persistent: 0 Pages (0 Bytes) -------------- Total Memory: 16,296 MB (17,088,249,856 Bytes) Shell> : 65,536 Pages (268,435,456 Bytes) MMIO_Port : 0 Pag memory information from GRUB2 1:2.02-142.el8_7.3 grub> lsefimmap Type Physical start - end #Pages Size Attributes BS-code 0000000000000000-0000000000000fff 00000001 4KiB UC WC WT WB conv-mem 0000000000001000-0000000000057fff 00000057 348KiB UC WC WT WB BS-code 0000000000058000-0000000000092fff 0000003b 236KiB UC WC WT WB BS-data 0000000000093000-0000000000093fff 00000001 4KiB UC WC WT WB BS-code 0000000000094000-000000000009ffff 0000000c 48KiB UC WC WT WB conv-mem 0000000000100000-0000000007ffffff 00007f00 127MiB UC WC WT WB BS-code 0000000008000000-000000000fffffff 00008000 128MiB UC WC WT WB conv-mem 0000000010000000-0000000029932fff 00019933 419020KiB UC WC WT WB ldr-code 0000000029933000-000000003ecfffff 000153cd 347956KiB UC WC WT WB BS-data 000000003ed00000-000000003ed7ffff 00000080 512KiB UC WC WT WB conv-mem 000000003ed80000-000000005a6a0fff 0001b921 451716KiB UC WC WT WB reserved 000000005a6a1000-000000005b4a0fff 00000e00 14MiB UC WC WT WB BS-data 000000005b4a1000-000000006ecfafff 0001385a 319848KiB UC WC WT WB BS-code 000000006ecfb000-000000006ecfbfff 00000001 4KiB UC WC WT WB conv-mem 000000006ecfc000-000000007114efff 00002453 37196KiB UC WC WT WB BS-data 000000007114f000-0000000071524fff 000003d6 3928KiB UC WC WT WB conv-mem 0000000071525000-0000000071535fff 00000011 68KiB UC WC WT WB BS-data 0000000071536000-000000007156dfff 00000038 224KiB UC WC WT WB conv-mem 000000007156e000-000000007156ffff 00000002 8KiB UC WC WT WB BS-data 0000000071570000-0000000071572fff 00000003 12KiB UC WC WT WB conv-mem 0000000071573000-0000000071573fff 00000001 4KiB UC WC WT WB BS-data 0000000071574000-0000000071582fff 0000000f 60KiB UC WC WT WB conv-mem 0000000071583000-0000000071585fff 00000003 12KiB UC WC WT WB BS-data 0000000071586000-0000000071591fff 0000000c 48KiB UC WC WT WB conv-mem 0000000071592000-0000000071592fff 00000001 4KiB UC WC WT WB BS-data 0000000071593000-0000000071f1dfff 0000098b 9772KiB UC WC WT WB conv-mem 0000000071f1e000-0000000071f1efff 00000001 4KiB UC WC WT WB BS-data 0000000071f1f000-0000000071f33fff 00000015 84KiB UC WC WT WB conv-mem 0000000071f34000-0000000071f34fff 00000001 4KiB UC WC WT WB BS-data 0000000071f35000-0000000071f35fff 00000001 4KiB UC WC WT WB conv-mem 0000000071f36000-0000000071f36fff 00000001 4KiB UC WC WT WB BS-data 0000000071f37000-0000000076cfefff 00004dc8 79648KiB UC WC WT WB conv-mem 0000000076cff000-0000000076edbfff 000001dd 1908KiB UC WC WT WB ldr-data 0000000076edc000-00000000770fcfff 00000221 2180KiB UC WC WT WB conv-mem 00000000770fd000-00000000771dcfff 000000e0 896KiB UC WC WT WB ldr-code 00000000771dd000-00000000774fefff 00000322 3208KiB UC WC WT WB conv-mem 00000000774ff000-00000000777ecfff 000002ee 3000KiB UC WC WT WB BS-code 00000000777ed000-00000000784fefff 00000d12 13384KiB UC WC WT WB RT-data 00000000784ff000-00000000788fefff 00000400 4MiB RT UC WC WT WB RT-code 00000000788ff000-00000000790fefff 00000800 8MiB RT UC WC WT WB reserved 00000000790ff000-00000000791fefff 00000100 1MiB UC WC WT WB ACPI-nvs 00000000791ff000-000000007b5fefff 00002400 36MiB UC WC WT WB ACPI-rec 000000007b5ff000-000000007b7fefff 00000200 2MiB UC WC WT WB BS-data 000000007b7ff000-000000007b7fffff 00000001 4KiB UC WC WT WB conv-mem 0000000100000000-000000047fffffff 00380000 14GiB UC WC WT WB MMIO 0000000080000000-000000008fffffff 00010000 256MiB RT memory information from grub2-2.02-121.el8 (good) grub> lsefimmap Type Physical start - end #Pages Size Attributes BS-code 0000000000000000-0000000000000fff 00000001 4KiB UC WC WT WB conv-mem 0000000000001000-0000000000057fff 00000057 348KiB UC WC WT WB BS-code 0000000000058000-0000000000092fff 0000003b 236KiB UC WC WT WB BS-data 0000000000093000-0000000000093fff 00000001 4KiB UC WC WT WB BS-code 0000000000094000-000000000009ffff 0000000c 48KiB UC WC WT WB conv-mem 0000000000100000-0000000007ffffff 00007f00 127MiB UC WC WT WB BS-code 0000000008000000-000000000fffffff 00008000 128MiB UC WC WT WB conv-mem 0000000010000000-0000000029a51fff 00019a52 420168KiB UC WC WT WB ldr-code 0000000029a52000-000000003ecfffff 000152ae 346808KiB UC WC WT WB BS-data 000000003ed00000-000000003ed7ffff 00000080 512KiB UC WC WT WB conv-mem 000000003ed80000-000000004a009fff 0000b28a 182824KiB UC WC WT WB ldr-code 000000004a00a000-000000005a6a0fff 00010697 268892KiB UC WC WT WB reserved 000000005a6a1000-000000005b4a0fff 00000e00 14MiB UC WC WT WB BS-data 000000005b4a1000-000000006ecfafff 0001385a 319848KiB UC WC WT WB BS-code 000000006ecfb000-000000006ecfbfff 00000001 4KiB UC WC WT WB conv-mem 000000006ecfc000-0000000070cd1fff 00001fd6 32600KiB UC WC WT WB BS-data 0000000070cd2000-0000000070ebefff 000001ed 1972KiB UC WC WT WB conv-mem 0000000070ebf000-0000000071098fff 000001da 1896KiB UC WC WT WB BS-data 0000000071099000-000000007109bfff 00000003 12KiB UC WC WT WB conv-mem 000000007109c000-00000000710abfff 00000010 64KiB UC WC WT WB BS-data 00000000710ac000-0000000071409fff 0000035e 3448KiB UC WC WT WB conv-mem 000000007140a000-000000007141ffff 00000016 88KiB UC WC WT WB BS-data 0000000071420000-0000000071422fff 00000003 12KiB UC WC WT WB conv-mem 0000000071423000-0000000071426fff 00000004 16KiB UC WC WT WB BS-data 0000000071427000-00000000714f6fff 000000d0 832KiB UC WC WT WB conv-mem 00000000714f7000-00000000714f9fff 00000003 12KiB UC WC WT WB BS-data 00000000714fa000-0000000071504fff 0000000b 44KiB UC WC WT WB conv-mem 0000000071505000-0000000071506fff 00000002 8KiB UC WC WT WB BS-data 0000000071507000-0000000071507fff 00000001 4KiB UC WC WT WB conv-mem 0000000071508000-0000000071508fff 00000001 4KiB UC WC WT WB BS-data 0000000071509000-0000000076cfefff 000057f6 90072KiB UC WC WT WB conv-mem 0000000076cff000-00000000770f7fff 000003f9 4068KiB UC WC WT WB ldr-data 00000000770f8000-00000000770f8fff 00000001 4KiB UC WC WT WB conv-mem 00000000770f9000-00000000774befff 000003c6 3864KiB UC WC WT WB ldr-code 00000000774bf000-00000000774fefff 00000040 256KiB UC WC WT WB conv-mem 00000000774ff000-00000000777ecfff 000002ee 3000KiB UC WC WT WB BS-code 00000000777ed000-00000000784fefff 00000d12 13384KiB UC WC WT WB RT-data 00000000784ff000-00000000788fefff 00000400 4MiB RT UC WC WT WB RT-code 00000000788ff000-00000000790fefff 00000800 8MiB RT UC WC WT WB reserved 00000000790ff000-00000000791fefff 00000100 1MiB UC WC WT WB ACPI-nvs 00000000791ff000-000000007b5fefff 00002400 36MiB UC WC WT WB ACPI-rec 000000007b5ff000-000000007b7fefff 00000200 2MiB UC WC WT WB BS-data 000000007b7ff000-000000007b7fffff 00000001 4KiB UC WC WT WB conv-mem 0000000100000000-000000047fffffff 00380000 14GiB UC WC WT WB MMIO 0000000080000000-000000008fffffff 00010000 256MiB RT
The real root cause is ReaR embeds all firmware files by default, which causes the initrd.cgz file to be huge. And usually this is not needed at all, because customers run pretty standard hardware: we don't support wifi in ReaR, don't require graphics, etc.