[U-Boot] [U-Boot, v2] efi_loader: Make RTS relocation more robust

Alexander Graf agraf at suse.de
Sun Dec 23 03:02:43 UTC 2018


> While changing the RTS alignment to 64KB in commit 7a82c3051c8f
> ("efi_loader: Align runtime section to 64kb") the relocation code
> started to break.
> 
> The reason for that is that we didn't actually look at the real
> relocation data. We merely took the RUNTIME_CODE section as a
> hint and started to relocate based on self calculated data from
> that point on. That calculation was now out of sync though.
> 
> To ensure we're not running into such a situation again, this patch
> makes the runtime relocation code a bit more robust. We can just
> trust the phys/virt hints from the payload. We also should check that
> we really only have a single section, as the code doesn't handle
> multiple code relocations yet.
> 
> Fixes: 7a82c3051c8f ("efi_loader: Align runtime section to 64kb")
> Reported-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> Reported-by: Loic Devulder <ldevulder at suse.de>
> Signed-off-by: Alexander Graf <agraf at suse.de>
> Reviewed-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
> Tested-by: Loic Devulder <ldevulder at suse.de>
> Tested-by: Jonathan Gray <jsg at jsg.id.au>

Thanks, applied to efi-2019.01

Alex



More information about the U-Boot mailing list