[PATCH v2 29/30] KVM: PPC: add KVM_SET_ONE_REG/KVM_GET_ONE_REG to async ioctl
Simon Guo
wei.guo.simon at gmail.com
Wed May 16 12:13:31 AEST 2018
Hi Paul,
On Tue, May 15, 2018 at 04:15:26PM +1000, Paul Mackerras wrote:
> On Wed, Feb 28, 2018 at 01:52:37AM +0800, wei.guo.simon at gmail.com wrote:
> > From: Simon Guo <wei.guo.simon at gmail.com>
> >
> > In both HV/PR KVM, the KVM_SET_ONE_REG/KVM_GET_ONE_REG ioctl should
> > be able to perform without load vcpu. This patch adds
> > KVM_SET_ONE_REG/KVM_GET_ONE_REG implementation to async ioctl
> > function.
> >
> > Signed-off-by: Simon Guo <wei.guo.simon at gmail.com>
> > ---
> > arch/powerpc/kvm/powerpc.c | 13 +++++++++++++
> > 1 file changed, 13 insertions(+)
> >
> > diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
> > index 7987fa3..6afd004 100644
> > --- a/arch/powerpc/kvm/powerpc.c
> > +++ b/arch/powerpc/kvm/powerpc.c
> > @@ -1619,6 +1619,19 @@ long kvm_arch_vcpu_async_ioctl(struct file *filp,
> > return -EFAULT;
> > return kvm_vcpu_ioctl_interrupt(vcpu, &irq);
> > }
> > +
> > + if ((ioctl == KVM_SET_ONE_REG) || (ioctl == KVM_GET_ONE_REG)) {
> > + struct kvm_one_reg reg;
> > +
> > + if (copy_from_user(®, argp, sizeof(reg)))
> > + return -EFAULT;
> > +
> > + if (ioctl == KVM_SET_ONE_REG)
> > + return kvm_vcpu_ioctl_set_one_reg(vcpu, ®);
> > + else
> > + return kvm_vcpu_ioctl_get_one_reg(vcpu, ®);
> > + }
> > +
> > return -ENOIOCTLCMD;
> > }
>
> This seems dangerous to me, since now we can have set/get one_reg
> running in parallel with vcpu execution. Is there a really compelling
> reason to do this? If not I'd rather not make this change.
I will remove this patch.
Thanks,
- Simon
More information about the Linuxppc-dev
mailing list