On Wed, Mar 04, 2020 at 12:08:33AM +0100, Ard Biesheuvel wrote: > On Tue, 3 Mar 2020 at 23:12, Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote: > > > > Add alignment slack to the PE image size, so that we can realign the > > decompression buffer within the space allocated for the image. > > > > Only relocate the kernel if it has been loaded at an unsuitable address: > > * Below LOAD_PHYSICAL_ADDR, or > > * Above 64T for 64-bit and 512MiB for 32-bit > > > > For 32-bit, the upper limit is conservative, but the exact limit can be > > difficult to calculate. > > > > Could we get rid of the call to efi_low_alloc_above() in > efi_relocate_kernel(), and just allocate top down with the right > alignment? I'd like to get rid of efi_low_alloc() et al if we can. > But we don't have a top-down allocator, do we? ALLOCATE_MAX_ADDRESS guarantees the maximum, but it doesn't guarantee that you'll be as high as possible.