[PATCHv10 10/18] x86/tdx: Convert shared memory back to private on kexec

Kirill A. Shutemov kirill.shutemov at linux.intel.com
Wed May 8 06:30:17 PDT 2024


On Wed, May 08, 2024 at 02:04:22PM +0200, Borislav Petkov wrote:
> On Mon, May 06, 2024 at 06:37:19PM +0300, Kirill A. Shutemov wrote:
> > "second kernel" is nomenclature kexec folks are using, but okay.
> 
> And the "third kernel" is the one which got kexec-ed the second time?
> 
> You can make it: "The second, kexec-ed kernel" and then it is perfectly
> clear.

Okay.

> > One possible reason for the failure is if kdump raced with memory
> > conversion. In this case shared bit in page table got set (or not cleared
> > form shared->private conversion), but the page is actually private. So
> > this failure is not going to affect the kexec'ed kernel.
> 
> Lemme make sure I understand what you're saying here:
> 
> 1. This is a fatal failure and we should panic
> 
> However,
> 
> 2. the kexec-ed kernel is using a different page table so there won't be
>    a mismatch between shared/private marking of the page so it doesn't
>    matter
> 
> Close?

Yes.

One other point is even if the failure is real and we cannot touch the
page as private, kdump kernel will boot fine as it uses pre-reserved
memory. What happens next depends on what dumping process does. We have
reasonable chance to produce useful dump on crash.

-- 
  Kiryl Shutsemau / Kirill A. Shutemov



More information about the kexec mailing list