On Wed, Apr 29, 2020 at 09:05:51PM +0200, Ard Biesheuvel wrote: > On Wed, 29 Apr 2020 at 19:41, Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote: > > > > Currently the EFI stub attempts to load initrd(s) specified on the > > command line below hdr->initrd_addr_max (2G) and if that fails, falls > > back to allocating at an unrestricted address. > > > > The only case when loading at a low address helps is for the 32-bit > > kernel, where the initrd must be copied by the kernel into lowmem if > > it's not there already. The limit specified in hdr->initrd_addr_max is > > insufficient to ensure this in any case, since lowmem by default will > > extend to about 0.9G rather than 2G, and we don't attempt to load the > > initrd in lowmem at all for the new device-path based initrd. > > > > Simplify the code by dropping this optimization for the command line > > initrd(s) as well. > > > > Signed-off-by: Arvind Sankar <nivedita@xxxxxxxxxxxx> > > It is not really an optimization, unfortunately. Commit 47226ad4f4cfd > has the details, but in short, loading above 4 GB broke some > platforms, so below 4 GB had to remain the default. > > This was 6 years ago, and so we might be able to revisit this, but > characterising it as a mere optimization is inaccurate. > Drat. Ok so I guess this patch has to be dropped then.