On Mon, Sep 23, 2019 at 06:24:08PM -0300, Leonardo Bras wrote: > Given that in kvm_create_vm() there is: > kvm->mm = current->mm; > > And that on every kvm_*_ioctl we have: > if (kvm->mm != current->mm) > return -EIO; > > I see no reason to keep using current->mm instead of kvm->mm. > > By doing so, we would reduce the use of 'global' variables on code, relying > more in the contents of kvm struct. > > Signed-off-by: Leonardo Bras <leonardo@xxxxxxxxxxxxx> > --- > arch/powerpc/kvm/booke.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c > index be9a45874194..383108263af5 100644 > --- a/arch/powerpc/kvm/booke.c > +++ b/arch/powerpc/kvm/booke.c > @@ -775,7 +775,7 @@ int kvmppc_vcpu_run(struct kvm_run *kvm_run, struct kvm_vcpu *vcpu) > debug = current->thread.debug; > current->thread.debug = vcpu->arch.dbg_reg; > > - vcpu->arch.pgdir = current->mm->pgd; > + vcpu->arch.pgdir = kvm->mm->pgd; > kvmppc_fix_ee_before_entry(); > > ret = __kvmppc_vcpu_run(kvm_run, vcpu); With this patch, I get compile errors for Book E configs: CC arch/powerpc/kvm/booke.o /home/paulus/kernel/kvm/arch/powerpc/kvm/booke.c: In function ‘kvmppc_vcpu_run’: /home/paulus/kernel/kvm/arch/powerpc/kvm/booke.c:778:21: error: ‘kvm’ undeclared (first use in this function) vcpu->arch.pgdir = kvm->mm->pgd; ^ /home/paulus/kernel/kvm/arch/powerpc/kvm/booke.c:778:21: note: each undeclared identifier is reported only once for each function it appears in make[3]: *** [/home/paulus/kernel/kvm/scripts/Makefile.build:266: arch/powerpc/kvm/booke.o] Error 1 make[2]: *** [/home/paulus/kernel/kvm/scripts/Makefile.build:509: arch/powerpc/kvm] Error 2 make[1]: *** [/home/paulus/kernel/kvm/Makefile:1649: arch/powerpc] Error 2 make: *** [/home/paulus/kernel/kvm/Makefile:179: sub-make] Error 2 It seems that you didn't compile-test this patch. Paul.