Lines Matching refs:kvm_run
5157 struct kvm_run *kvm_run = vcpu->run;
5161 riccb = (struct runtime_instr_cb *) &kvm_run->s.regs.riccb;
5162 gscb = (struct gs_cb *) &kvm_run->s.regs.gscb;
5163 vcpu->arch.sie_block->gpsw.mask = kvm_run->psw_mask;
5164 vcpu->arch.sie_block->gpsw.addr = kvm_run->psw_addr;
5165 if (kvm_run->kvm_dirty_regs & KVM_SYNC_ARCH0) {
5166 vcpu->arch.sie_block->todpr = kvm_run->s.regs.todpr;
5167 vcpu->arch.sie_block->pp = kvm_run->s.regs.pp;
5168 vcpu->arch.sie_block->gbea = kvm_run->s.regs.gbea;
5170 if (kvm_run->kvm_dirty_regs & KVM_SYNC_PFAULT) {
5171 vcpu->arch.pfault_token = kvm_run->s.regs.pft;
5172 vcpu->arch.pfault_select = kvm_run->s.regs.pfs;
5173 vcpu->arch.pfault_compare = kvm_run->s.regs.pfc;
5177 if (kvm_run->kvm_dirty_regs & KVM_SYNC_DIAG318) {
5178 vcpu->arch.diag318_info.val = kvm_run->s.regs.diag318;
5186 if ((kvm_run->kvm_dirty_regs & KVM_SYNC_RICCB) &&
5197 if ((kvm_run->kvm_dirty_regs & KVM_SYNC_GSCB) &&
5206 if ((kvm_run->kvm_dirty_regs & KVM_SYNC_BPBC) &&
5209 vcpu->arch.sie_block->fpf |= kvm_run->s.regs.bpbc ? FPF_BPBC : 0;
5225 /* SIE will load etoken directly from SDNX and therefore kvm_run */
5230 struct kvm_run *kvm_run = vcpu->run;
5232 if (kvm_run->kvm_dirty_regs & KVM_SYNC_PREFIX)
5233 kvm_s390_set_prefix(vcpu, kvm_run->s.regs.prefix);
5234 if (kvm_run->kvm_dirty_regs & KVM_SYNC_CRS) {
5235 memcpy(&vcpu->arch.sie_block->gcr, &kvm_run->s.regs.crs, 128);
5239 if (kvm_run->kvm_dirty_regs & KVM_SYNC_ARCH0) {
5240 kvm_s390_set_cpu_timer(vcpu, kvm_run->s.regs.cputm);
5241 vcpu->arch.sie_block->ckc = kvm_run->s.regs.ckc;
5261 vcpu->arch.sie_block->gpsw.mask |= kvm_run->psw_mask &
5265 kvm_run->kvm_dirty_regs = 0;
5270 struct kvm_run *kvm_run = vcpu->run;
5272 kvm_run->s.regs.todpr = vcpu->arch.sie_block->todpr;
5273 kvm_run->s.regs.pp = vcpu->arch.sie_block->pp;
5274 kvm_run->s.regs.gbea = vcpu->arch.sie_block->gbea;
5275 kvm_run->s.regs.bpbc = (vcpu->arch.sie_block->fpf & FPF_BPBC) == FPF_BPBC;
5276 kvm_run->s.regs.diag318 = vcpu->arch.diag318_info.val;
5289 /* SIE will save etoken directly into SDNX and therefore kvm_run */
5294 struct kvm_run *kvm_run = vcpu->run;
5296 kvm_run->psw_mask = vcpu->arch.sie_block->gpsw.mask;
5297 kvm_run->psw_addr = vcpu->arch.sie_block->gpsw.addr;
5298 kvm_run->s.regs.prefix = kvm_s390_get_prefix(vcpu);
5299 memcpy(&kvm_run->s.regs.crs, &vcpu->arch.sie_block->gcr, 128);
5300 kvm_run->s.regs.cputm = kvm_s390_get_cpu_timer(vcpu);
5301 kvm_run->s.regs.ckc = vcpu->arch.sie_block->ckc;
5302 kvm_run->s.regs.pft = vcpu->arch.pfault_token;
5303 kvm_run->s.regs.pfs = vcpu->arch.pfault_select;
5304 kvm_run->s.regs.pfc = vcpu->arch.pfault_compare;
5315 struct kvm_run *kvm_run = vcpu->run;
5331 if (kvm_run->kvm_valid_regs & ~KVM_SYNC_S390_VALID_FIELDS ||
5332 kvm_run->kvm_dirty_regs & ~KVM_SYNC_S390_VALID_FIELDS)
5366 kvm_run->exit_reason = KVM_EXIT_INTR;
5376 /* userspace support is needed, kvm_run has been prepared */