Re: [PATCH 07/62] x86/boot/compressed/64: Disable red-zone usage
From: Andy Lutomirski
Date: Tue Feb 11 2020 - 17:14:07 EST
On Tue, Feb 11, 2020 at 5:53 AM Joerg Roedel <joro@xxxxxxxxxx> wrote:
>
> From: Joerg Roedel <jroedel@xxxxxxx>
>
> The x86-64 ABI defines a red-zone on the stack:
>
> The 128-byte area beyond the location pointed to by %rsp is
> considered to be reserved and shall not be modified by signal or
> interrupt handlers. 10 Therefore, functions may use this area for
> temporary data that is not needed across function calls. In
> particular, leaf functions may use this area for their entire stack
> frame, rather than adjusting the stack pointer in the prologue and
> epilogue. This area is known as the red zone.
>
> This is not compatible with exception handling, so disable it for the
> pre-decompression boot code.
Acked-by: Andy Lutomirski <luto@xxxxxxxxxx>
I admit that I thought we already supported exceptions this early. At
least I seem to remember writing this code. Maybe it never got
upstreamed?
--Andy