[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #61058] out of memory error on HP 250 G7 and HP 450 G8 laptop loadi
From: |
Julian Andres Klode |
Subject: |
[bug #61058] out of memory error on HP 250 G7 and HP 450 G8 laptop loading large initrd (500Mb) |
Date: |
Fri, 9 Dec 2022 12:00:52 -0500 (EST) |
Follow-up Comment #3, bug #61058 (project grub):
After applying the 2.12 memory management changes I was able to load files up
to 1.1GB in a qemu. I could not fit larger initrds on the /boot.
This of course doesn't solve the problem entirely - 4GB is still the memory
map limit on x86 due to concerns of DMA failures when DMAing to >4GB areas.
To allow larger files like 4GB initrds, what we need to do is quite clearly
fix grub_verifiers_open() to not allocate the entire file using grub_malloc(),
but allocate the file memory directly from EFI[1], then allocate a small
bounce buffer in our grub_malloc region and copy from disk to bounce buffer to
real buffer (this prevents 64-bit DMA issues)
[1] So either we need a grub_malloc_large() or something or maybe we just make
grub_malloc() pass huge allocations directly to EFI. I don't think other
places really need to allocate giant memory blocks, so this should still be
safe wrt dma if we say "any allocations over 10 pages is directly allocated
from UEFI" or something.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?61058>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [bug #61058] out of memory error on HP 250 G7 and HP 450 G8 laptop loading large initrd (500Mb),
Julian Andres Klode <=