On Wed, Feb 28, 2018 at 01:52:37AM +0800, wei.guo.simon@xxxxxxxxx wrote: > From: Simon Guo <wei.guo.simon@xxxxxxxxx> > > 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@xxxxxxxxx> > --- > 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. Paul.