Re: [PATCH] x86/kvm/tdx: Save %rbp in TDX_MODULE_CALL

From: Kirill A. Shutemov
Date: Fri May 17 2024 - 13:02:10 EST


On Fri, May 17, 2024 at 09:34:56AM -0700, Dave Hansen wrote:
> On 5/17/24 09:12, Sean Christopherson wrote:
> >> There's a feature in TDX module 1.5 that prevents RBP modification across
> >> TDH.VP.ENTER SEAMCALL. See NO_RBP_MOD in TDX Module 1.5 ABI spec.
> > LOL, "feature". How was clobbering RBP not treated as a bug? I'm party joking,
> > but also quite serious.
>
> I'm on the same page. It would have been far simpler for all involved
> to retroactively say that modifying RBP is against the rules and any
> module that does it is buggy. Get a new module if yours is buggy.
>
> I _believe_ the intent was to support guest/host combinations that used
> RBP for whatever reason. But I'm not sure such a combination exists or
> ever existed in practice.

There's a bug in EDK2. It specifies RBP in mask of registers to pass to
VMM. NO_RBP_MOD breaks it :/

--
Kiryl Shutsemau / Kirill A. Shutemov