Messages in this thread Patch in this message | | | From | "Kirill A. Shutemov" <> | Subject | [PATCH 17/20] x86/tdx: Convert VM_RD/VM_WR tdcalls to use new TDCALL macros | Date | Fri, 17 May 2024 17:19:35 +0300 |
| |
Use newly introduced TDCALL instead of tdcall() to issue VM_RD/VM_WR tdcalls
It increase code slightly:
Function old new delta tdx_early_init 744 776 +32
but combined with VP_INFO changes the total effect on tdx_early_init() is code reduction.
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> --- arch/x86/coco/tdx/tdx.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-)
diff --git a/arch/x86/coco/tdx/tdx.c b/arch/x86/coco/tdx/tdx.c index e1849878f3bc..6559f3842f67 100644 --- a/arch/x86/coco/tdx/tdx.c +++ b/arch/x86/coco/tdx/tdx.c @@ -76,27 +76,13 @@ static inline void tdcall(u64 fn, struct tdx_module_args *args) /* Read TD-scoped metadata */ static inline u64 tdg_vm_rd(u64 field, u64 *value) { - struct tdx_module_args args = { - .rdx = field, - }; - u64 ret; - - ret = __tdcall_ret(TDG_VM_RD, &args); - *value = args.r8; - - return ret; + return TDCALL_1(TDG_VM_RD, 0, field, 0, 0, value); } /* Write TD-scoped metadata */ static inline u64 tdg_vm_wr(u64 field, u64 value, u64 mask) { - struct tdx_module_args args = { - .rdx = field, - .r8 = value, - .r9 = mask, - }; - - return __tdcall(TDG_VM_WR, &args); + return TDCALL_1(TDG_VM_WR, 0, field, value, mask, value); } /** -- 2.43.0
| |