[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aPe7M1aUPwqDmQbY@google.com>
Date: Tue, 21 Oct 2025 09:56:19 -0700
From: Sean Christopherson <seanjc@...gle.com>
To: Rick P Edgecombe <rick.p.edgecombe@...el.com>
Cc: "chenhuacai@...nel.org" <chenhuacai@...nel.org>, "frankja@...ux.ibm.com" <frankja@...ux.ibm.com>,
"maz@...nel.org" <maz@...nel.org>, "borntraeger@...ux.ibm.com" <borntraeger@...ux.ibm.com>,
"pjw@...nel.org" <pjw@...nel.org>, "aou@...s.berkeley.edu" <aou@...s.berkeley.edu>,
"kas@...nel.org" <kas@...nel.org>, "maobibo@...ngson.cn" <maobibo@...ngson.cn>,
"pbonzini@...hat.com" <pbonzini@...hat.com>, "maddy@...ux.ibm.com" <maddy@...ux.ibm.com>,
"palmer@...belt.com" <palmer@...belt.com>, "imbrenda@...ux.ibm.com" <imbrenda@...ux.ibm.com>,
"zhaotianrui@...ngson.cn" <zhaotianrui@...ngson.cn>, "anup@...infault.org" <anup@...infault.org>,
"oliver.upton@...ux.dev" <oliver.upton@...ux.dev>, "kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"linux-coco@...ts.linux.dev" <linux-coco@...ts.linux.dev>, Kai Huang <kai.huang@...el.com>,
Yan Y Zhao <yan.y.zhao@...el.com>, "michael.roth@....com" <michael.roth@....com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>, Ira Weiny <ira.weiny@...el.com>,
"loongarch@...ts.linux.dev" <loongarch@...ts.linux.dev>,
"binbin.wu@...ux.intel.com" <binbin.wu@...ux.intel.com>,
"ackerleytng@...gle.com" <ackerleytng@...gle.com>, "kvmarm@...ts.linux.dev" <kvmarm@...ts.linux.dev>,
Vishal Annapurve <vannapurve@...gle.com>,
"kvm-riscv@...ts.infradead.org" <kvm-riscv@...ts.infradead.org>,
"linuxppc-dev@...ts.ozlabs.org" <linuxppc-dev@...ts.ozlabs.org>,
"linux-arm-kernel@...ts.infradead.org" <linux-arm-kernel@...ts.infradead.org>,
"linux-mips@...r.kernel.org" <linux-mips@...r.kernel.org>,
"linux-riscv@...ts.infradead.org" <linux-riscv@...ts.infradead.org>, "x86@...nel.org" <x86@...nel.org>
Subject: Re: [PATCH v3 23/25] KVM: TDX: Use guard() to acquire kvm->lock in tdx_vm_ioctl()
On Tue, Oct 21, 2025, Rick P Edgecombe wrote:
> On Thu, 2025-10-16 at 17:32 -0700, Sean Christopherson wrote:
> > Use guard() in tdx_vm_ioctl() to tidy up the code a small amount, but more
> > importantly to minimize the diff of a future change, which will use
> > guard-like semantics to acquire and release multiple locks.
> >
> > No functional change intended.
>
> There is a tiny functional change. In the default case it no longer re-copies
> the struct back to userspace.
No? The default case doesn't copy the struct back even before this patch, it
explicitly skips the copy_to_user().
mutex_lock(&kvm->lock);
switch (tdx_cmd.id) {
case KVM_TDX_CAPABILITIES:
r = tdx_get_capabilities(&tdx_cmd);
break;
case KVM_TDX_INIT_VM:
r = tdx_td_init(kvm, &tdx_cmd);
break;
case KVM_TDX_FINALIZE_VM:
r = tdx_td_finalize(kvm, &tdx_cmd);
break;
default:
r = -EINVAL;
goto out; <====================
}
if (copy_to_user(argp, &tdx_cmd, sizeof(struct kvm_tdx_cmd)))
r = -EFAULT;
out:
mutex_unlock(&kvm->lock);
return r;
Powered by blists - more mailing lists