Bug 2223883
| Summary: | Error when loading large initrd (~1 GiB) on UEFI: out of memory | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 9 | Reporter: | Juan Hernández <juan.hernandez> |
| Component: | grub2 | Assignee: | Bootloader engineering team <bootloader-eng-team> |
| Status: | CLOSED MIGRATED | QA Contact: | Release Test Team <release-test-team-automation> |
| Severity: | high | Docs Contact: | |
| Priority: | urgent | ||
| Version: | 9.2 | CC: | mlewando, oourfali, raravind |
| Target Milestone: | rc | Keywords: | MigratedToJIRA, Triaged |
| Target Release: | --- | Flags: | pm-rhel:
mirror+
|
| Hardware: | x86_64 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2023-09-16 20:07:08 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Thanks for the patch, and thank you for your patience. :) Issue migration from Bugzilla to Jira is in process at this time. This will be the last message in Jira copied from the Bugzilla bug. This BZ has been automatically migrated to the issues.redhat.com Red Hat Issue Tracker. All future work related to this report will be managed there. Due to differences in account names between systems, some fields were not replicated. Be sure to add yourself to Jira issue's "Watchers" field to continue receiving updates and add others to the "Need Info From" field to continue requesting information. To find the migrated issue, look in the "Links" section for a direct link to the new issue location. The issue key will have an icon of 2 footprints next to it, and begin with "RHEL-" followed by an integer. You can also find this issue by visiting https://issues.redhat.com/issues/?jql= and searching the "Bugzilla Bug" field for this BZ's number, e.g. a search like: "Bugzilla Bug" = 1234567 In the event you have trouble locating or viewing this issue, you can file an issue by sending mail to rh-issues. You can also visit https://access.redhat.com/articles/7032570 for general account information. |
Description of problem: When we try to load a large initrd (~1 GiB) on UEFI with TPM disabled grub fails to load and prints a "out of memory" message. Version-Release number of selected component (if applicable): grub2-common-2.06-61.el9.noarch How reproducible: It always reproduces in the bare metal machine that we are using Model: Dell PowerEdge R340 BIOS Version: 2.3.5 iDRAC Firmware Version: 4.22.00.53 Steps to Reproduce: 1. Prepare a boot entry like this: set timeout=10 set default=0 menuentry 'Agent-Based Installer' { search --set=root --label agentboot load_video set gfx_payload=keep insmod gzio linux /images/pxeboot/vmlinuz random.trust_cpu=on console=tty0 console=ttyS0,115200n8 ignition.firstboot ignition.platform.id=metal ro initrd /images/pxeboot/initrd.img /images/ignition.img /images/pxeboot/rootfs.img } What is most relevant of this boot entry is the size of the initrd files, specially the rootfs: # ls -lh pxeboot/initrd.img ignition.img pxeboot/rootfs.img -r--r--r--. 1 root root 256K May 2 20:15 ignition.img -r--r--r--. 1 root root 81M May 2 20:20 pxeboot/initrd.img -r--r--r--. 1 root root 952M May 2 20:20 pxeboot/rootfs.img Total size is approximately 1 GiB. 2. Ensure that TPM is enabled in the BIOS. 3. Boot the machine. Actual results: Grub fails with the following error message: error: ../../grub-core/kern/mm.c:552:out of memory. Press any key to continue... After that the kernel is started anyhow, but it fails to locate the root filesystem and panics. Expected results: The initrd should be loaded and the machine should boot correctly. Additional info: We found that the issue is related to having TPM enabled. We applied the following patch to grub2-common-2.06-61.el9.noarch: https://github.com/rhboot/grub2/commit/b09440df05755c665cac9b93dd654e661c655c38 Then we rebuilt the RPM used the resulting grubx64.efi. With that the boot still fails in the same way. But it does work if we also disable TPM. So the workaround is to disable TPM *and* apply the patch. We would like to be able to boot with TPM enabled or disabled.