[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indi
From: |
Jason A. Donenfeld |
Subject: |
Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety |
Date: |
Tue, 6 Sep 2022 12:51:50 +0200 |
On Tue, Sep 06, 2022 at 12:46:32PM +0200, Jason A. Donenfeld wrote:
> On Tue, Sep 06, 2022 at 06:45:34AM -0400, Michael S. Tsirkin wrote:
> > On Tue, Sep 06, 2022 at 12:43:55PM +0200, Jason A. Donenfeld wrote:
> > > On Tue, Sep 6, 2022 at 12:40 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> > > >
> > > > On Tue, Sep 06, 2022 at 12:36:56PM +0200, Jason A. Donenfeld wrote:
> > > > > It's only safe to modify the setup_data pointer on newer kernels where
> > > > > the EFI stub loader will ignore it. So condition setting that offset
> > > > > on
> > > > > the newer boot protocol version. While we're at it, gate this on SEV
> > > > > too.
> > > > > This depends on the kernel commit linked below going upstream.
> > > > >
> > > > > Cc: Gerd Hoffmann <kraxel@redhat.com>
> > > > > Cc: Laurent Vivier <laurent@vivier.eu>
> > > > > Cc: Michael S. Tsirkin <mst@redhat.com>
> > > > > Cc: Paolo Bonzini <pbonzini@redhat.com>
> > > > > Cc: Peter Maydell <peter.maydell@linaro.org>
> > > > > Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
> > > > > Cc: Richard Henderson <richard.henderson@linaro.org>
> > > > > Cc: Ard Biesheuvel <ardb@kernel.org>
> > > > > Link:
> > > > > https://lore.kernel.org/linux-efi/20220904165321.1140894-1-Jason@zx2c4.com/
> > > > > Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
> > > >
> > > > BTW what does it have to do with SEV?
> > > > Is this because SEV is not going to trust the data to be random anyway?
> > >
> > > Daniel (now CC'd) pointed out in one of the previous threads that this
> > > breaks SEV, because the image hash changes.
> > >
> > > Jason
> >
> > Oh I see. I'd add a comment maybe and definitely mention this
> > in the commit log.
>
> Sure, will do.
Actually, I'm wrong. This is already done implicitly below with a huge
comment:
/*
* If we're starting an encrypted VM, it will be OVMF based, which uses the
* efi stub for booting and doesn't require any values to be placed in the
* kernel header. We therefore don't update the header so the hash of the
* kernel on the other side of the fw_cfg interface matches the hash of the
* file the user passed in.
*/
if (!sev_enabled()) {
memcpy(setup, header, MIN(sizeof(header), setup_size));
}
So I'll remove the SEV bit from this commit. Whoops. Glad you asked
about it.
Jason
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Michael S. Tsirkin, 2022/09/06
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Ard Biesheuvel, 2022/09/06
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Daniel P . Berrangé, 2022/09/06
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Laszlo Ersek, 2022/09/08
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Ard Biesheuvel, 2022/09/08
- Re: [PATCH v2 1/2] x86: only modify setup_data if the boot protocol indicates safety, Daniel P . Berrangé, 2022/09/08