On Thu, 2025-10-16 at 17:32 -0700, Sean Christopherson wrote: > Add a helper to copy a kvm_tdx_cmd structure from userspace and verify > that must-be-zero fields are indeed zero. > > No functional change intended. > > Signed-off-by: Sean Christopherson <[email protected]>
Reviewed-by: Kai Huang <[email protected]> > --- > arch/x86/kvm/vmx/tdx.c | 31 +++++++++++++++++-------------- > 1 file changed, 17 insertions(+), 14 deletions(-) > > diff --git a/arch/x86/kvm/vmx/tdx.c b/arch/x86/kvm/vmx/tdx.c > index 2e2dab89c98f..d5f810435f34 100644 > --- a/arch/x86/kvm/vmx/tdx.c > +++ b/arch/x86/kvm/vmx/tdx.c > @@ -2761,20 +2761,25 @@ static int tdx_td_finalize(struct kvm *kvm, struct > kvm_tdx_cmd *cmd) > return 0; > } > > +static int tdx_get_cmd(void __user *argp, struct kvm_tdx_cmd *cmd) > +{ > + if (copy_from_user(cmd, argp, sizeof(*cmd))) > + return -EFAULT; > + > + if (cmd->hw_error) > + return -EINVAL; Nit: to me it's a little bit pity to lose the below comment: /* * Userspace should never set hw_error. It is used to fill * hardware-defined error by the kernel. */
