Messages in this thread | | | Date | Fri, 17 May 2024 17:00:19 +0200 | Subject | Re: [PATCH v19 039/130] KVM: TDX: initialize VM with TDX specific parameters | From | Jürgen Groß <> |
| |
On 17.05.24 16:53, Kirill A. Shutemov wrote: > On Fri, May 17, 2024 at 04:37:16PM +0200, Juergen Gross wrote: >> On 17.05.24 16:32, Kirill A. Shutemov wrote: >>> On Mon, Feb 26, 2024 at 12:25:41AM -0800, isaku.yamahata@intel.com wrote: >>>> @@ -725,6 +967,17 @@ static int __init tdx_module_setup(void) >>>> tdx_info->nr_tdcs_pages = tdcs_base_size / PAGE_SIZE; >>>> + /* >>>> + * Make TDH.VP.ENTER preserve RBP so that the stack unwinder >>>> + * always work around it. Query the feature. >>>> + */ >>>> + if (!(tdx_info->features0 & MD_FIELD_ID_FEATURES0_NO_RBP_MOD) && >>>> + !IS_ENABLED(CONFIG_FRAME_POINTER)) { >>> >>> I think it supposed to be IS_ENABLED(CONFIG_FRAME_POINTER). "!" shouldn't >>> be here. >> >> No, I don't think so. >> >> With CONFIG_FRAME_POINTER %rbp is being saved and restored, so there is no >> problem in case the seamcall is clobbering it. > > Could you check setup_tdparams() in your tree? > > Commit > > [SEAM-WORKAROUND] KVM: TDX: Don't use NO_RBP_MOD for backward compatibility > > in my tree comments out the setting TDX_CONTROL_FLAG_NO_RBP_MOD. > > I now remember there was problem in EDK2 using RBP. So the patch is > temporary until EDK2 is fixed. >
I have the following line in setup_tdparams() (not commented out):
td_params->exec_controls = TDX_CONTROL_FLAG_NO_RBP_MOD;
Juergen
| |