diff options
-rw-r--r-- | arch/s390/kvm/kvm-s390.c | 17 | ||||
-rw-r--r-- | arch/s390/kvm/kvm-s390.h | 4 |
2 files changed, 2 insertions, 19 deletions
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c index 5a99f342fd0b..f17296e4fc89 100644 --- a/arch/s390/kvm/kvm-s390.c +++ b/arch/s390/kvm/kvm-s390.c | |||
@@ -294,7 +294,6 @@ static void kvm_s390_vcpu_initial_reset(struct kvm_vcpu *vcpu) | |||
294 | int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu) | 294 | int kvm_arch_vcpu_setup(struct kvm_vcpu *vcpu) |
295 | { | 295 | { |
296 | atomic_set(&vcpu->arch.sie_block->cpuflags, CPUSTAT_ZARCH | CPUSTAT_SM); | 296 | atomic_set(&vcpu->arch.sie_block->cpuflags, CPUSTAT_ZARCH | CPUSTAT_SM); |
297 | set_bit(KVM_REQ_MMU_RELOAD, &vcpu->requests); | ||
298 | vcpu->arch.sie_block->ecb = 6; | 297 | vcpu->arch.sie_block->ecb = 6; |
299 | vcpu->arch.sie_block->eca = 0xC1002001U; | 298 | vcpu->arch.sie_block->eca = 0xC1002001U; |
300 | vcpu->arch.sie_block->fac = (int) (long) facilities; | 299 | vcpu->arch.sie_block->fac = (int) (long) facilities; |
@@ -485,10 +484,6 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) | |||
485 | sigset_t sigsaved; | 484 | sigset_t sigsaved; |
486 | 485 | ||
487 | rerun_vcpu: | 486 | rerun_vcpu: |
488 | if (vcpu->requests) | ||
489 | if (test_and_clear_bit(KVM_REQ_MMU_RELOAD, &vcpu->requests)) | ||
490 | kvm_s390_vcpu_set_mem(vcpu); | ||
491 | |||
492 | if (vcpu->sigset_active) | 487 | if (vcpu->sigset_active) |
493 | sigprocmask(SIG_SETMASK, &vcpu->sigset, &sigsaved); | 488 | sigprocmask(SIG_SETMASK, &vcpu->sigset, &sigsaved); |
494 | 489 | ||
@@ -701,21 +696,13 @@ void kvm_arch_commit_memory_region(struct kvm *kvm, | |||
701 | struct kvm_memory_slot old, | 696 | struct kvm_memory_slot old, |
702 | int user_alloc) | 697 | int user_alloc) |
703 | { | 698 | { |
704 | int i, rc; | 699 | int rc; |
705 | struct kvm_vcpu *vcpu; | ||
706 | 700 | ||
707 | 701 | ||
708 | rc = gmap_map_segment(kvm->arch.gmap, mem->userspace_addr, | 702 | rc = gmap_map_segment(kvm->arch.gmap, mem->userspace_addr, |
709 | mem->guest_phys_addr, mem->memory_size); | 703 | mem->guest_phys_addr, mem->memory_size); |
710 | if (rc) | 704 | if (rc) |
711 | return; | 705 | printk(KERN_WARNING "kvm-s390: failed to commit memory region\n"); |
712 | |||
713 | /* request update of sie control block for all available vcpus */ | ||
714 | kvm_for_each_vcpu(i, vcpu, kvm) { | ||
715 | if (test_and_set_bit(KVM_REQ_MMU_RELOAD, &vcpu->requests)) | ||
716 | continue; | ||
717 | kvm_s390_inject_sigp_stop(vcpu, ACTION_RELOADVCPU_ON_STOP); | ||
718 | } | ||
719 | return; | 706 | return; |
720 | } | 707 | } |
721 | 708 | ||
diff --git a/arch/s390/kvm/kvm-s390.h b/arch/s390/kvm/kvm-s390.h index 63e5190776e9..99b0b7597115 100644 --- a/arch/s390/kvm/kvm-s390.h +++ b/arch/s390/kvm/kvm-s390.h | |||
@@ -58,10 +58,6 @@ int kvm_s390_inject_vcpu(struct kvm_vcpu *vcpu, | |||
58 | int kvm_s390_inject_program_int(struct kvm_vcpu *vcpu, u16 code); | 58 | int kvm_s390_inject_program_int(struct kvm_vcpu *vcpu, u16 code); |
59 | int kvm_s390_inject_sigp_stop(struct kvm_vcpu *vcpu, int action); | 59 | int kvm_s390_inject_sigp_stop(struct kvm_vcpu *vcpu, int action); |
60 | 60 | ||
61 | static inline void kvm_s390_vcpu_set_mem(struct kvm_vcpu *vcpu) | ||
62 | { | ||
63 | } | ||
64 | |||
65 | /* implemented in priv.c */ | 61 | /* implemented in priv.c */ |
66 | int kvm_s390_handle_b2(struct kvm_vcpu *vcpu); | 62 | int kvm_s390_handle_b2(struct kvm_vcpu *vcpu); |
67 | int kvm_s390_handle_e5(struct kvm_vcpu *vcpu); | 63 | int kvm_s390_handle_e5(struct kvm_vcpu *vcpu); |