Lines Matching refs:arch

40 	return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_EXT);  in psw_extint_disabled()
45 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_IO); in psw_ioint_disabled()
50 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_MCHECK); in psw_mchk_disabled()
55 if ((vcpu->arch.sie_block->gpsw.mask & PSW_MASK_PER) || in psw_interrupts_disabled()
56 (vcpu->arch.sie_block->gpsw.mask & PSW_MASK_IO) || in psw_interrupts_disabled()
57 (vcpu->arch.sie_block->gpsw.mask & PSW_MASK_EXT)) in psw_interrupts_disabled()
65 !(vcpu->arch.sie_block->gcr[0] & 0x800ul)) in ckc_interrupts_enabled()
75 if (!(vcpu->arch.sie_block->ckc < in ckc_irq_pending()
76 get_tod_clock_fast() + vcpu->arch.sie_block->epoch)) in ckc_irq_pending()
84 (vcpu->arch.sie_block->gcr[0] & 0x400ul); in cpu_timer_interrupts_enabled()
89 return (vcpu->arch.sie_block->cputm >> 63) && in cpu_timer_irq_pending()
111 return vcpu->kvm->arch.float_int.pending_irqs; in pending_floating_irqs()
116 return vcpu->arch.local_int.pending_irqs; in pending_local_irqs()
125 if (!(vcpu->arch.sie_block->gcr[6] & isc_to_isc_bits(i))) in disable_iscs()
144 if (!(vcpu->arch.sie_block->gcr[0] & 0x2000ul)) in deliverable_irqs()
146 if (!(vcpu->arch.sie_block->gcr[0] & 0x4000ul)) in deliverable_irqs()
148 if (!(vcpu->arch.sie_block->gcr[0] & 0x800ul)) in deliverable_irqs()
150 if (!(vcpu->arch.sie_block->gcr[0] & 0x400ul)) in deliverable_irqs()
152 if (!(vcpu->arch.sie_block->gcr[0] & 0x200ul)) in deliverable_irqs()
156 if (!(vcpu->arch.sie_block->gcr[14] & in deliverable_irqs()
157 vcpu->kvm->arch.float_int.mchk.cr14)) in deliverable_irqs()
171 atomic_set_mask(CPUSTAT_WAIT, &vcpu->arch.sie_block->cpuflags); in __set_cpu_idle()
172 set_bit(vcpu->vcpu_id, vcpu->arch.local_int.float_int->idle_mask); in __set_cpu_idle()
177 atomic_clear_mask(CPUSTAT_WAIT, &vcpu->arch.sie_block->cpuflags); in __unset_cpu_idle()
178 clear_bit(vcpu->vcpu_id, vcpu->arch.local_int.float_int->idle_mask); in __unset_cpu_idle()
184 &vcpu->arch.sie_block->cpuflags); in __reset_intercept_indicators()
185 vcpu->arch.sie_block->lctl = 0x0000; in __reset_intercept_indicators()
186 vcpu->arch.sie_block->ictl &= ~(ICTL_LPSW | ICTL_STCTL | ICTL_PINT); in __reset_intercept_indicators()
189 vcpu->arch.sie_block->lctl |= (LCTL_CR0 | LCTL_CR9 | in __reset_intercept_indicators()
191 vcpu->arch.sie_block->ictl |= (ICTL_STCTL | ICTL_PINT); in __reset_intercept_indicators()
197 atomic_set_mask(flag, &vcpu->arch.sie_block->cpuflags); in __set_cpuflag()
207 vcpu->arch.sie_block->lctl |= LCTL_CR6; in set_intercept_indicators_io()
217 vcpu->arch.sie_block->lctl |= LCTL_CR0; in set_intercept_indicators_ext()
225 vcpu->arch.sie_block->ictl |= ICTL_LPSW; in set_intercept_indicators_mchk()
227 vcpu->arch.sie_block->lctl |= LCTL_CR14; in set_intercept_indicators_mchk()
247 switch (vcpu->arch.sie_block->icptcode) { in get_ilc()
254 return insn_length(vcpu->arch.sie_block->ipa >> 8); in get_ilc()
256 return vcpu->arch.sie_block->pgmilc; in get_ilc()
264 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_cpu_timer()
274 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_cpu_timer()
276 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_cpu_timer()
283 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_ckc()
293 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_ckc()
295 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_ckc()
302 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_pfault_init()
321 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_pfault_init()
323 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_pfault_init()
330 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_machine_check()
331 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_machine_check()
390 &vcpu->arch.sie_block->gpsw, in __deliver_machine_check()
393 &vcpu->arch.sie_block->gpsw, in __deliver_machine_check()
401 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_restart()
410 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_restart()
412 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_restart()
419 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_set_prefix()
440 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_emergency_signal()
460 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_emergency_signal()
462 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_emergency_signal()
468 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_external_call()
488 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_external_call()
489 rc |= read_guest_lc(vcpu, __LC_EXT_NEW_PSW, &vcpu->arch.sie_block->gpsw, in __deliver_external_call()
496 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_prog()
592 if (nullifying && vcpu->arch.sie_block->icptcode == ICPT_INST) in __deliver_prog()
596 rc |= put_guest_lc(vcpu, vcpu->arch.sie_block->gbea, in __deliver_prog()
601 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_prog()
603 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_prog()
609 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_service()
632 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_service()
634 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_service()
643 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_pfault_done()
668 &vcpu->arch.sie_block->gpsw, in __deliver_pfault_done()
671 &vcpu->arch.sie_block->gpsw, in __deliver_pfault_done()
682 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_virtio()
712 &vcpu->arch.sie_block->gpsw, in __deliver_virtio()
715 &vcpu->arch.sie_block->gpsw, in __deliver_virtio()
734 fi = &vcpu->kvm->arch.float_int; in __deliver_io()
767 &vcpu->arch.sie_block->gpsw, in __deliver_io()
770 &vcpu->arch.sie_block->gpsw, in __deliver_io()
799 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_ext_call_pending()
800 uint8_t sigp_ctrl = vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in kvm_s390_ext_call_pending()
806 (atomic_read(&vcpu->arch.sie_block->cpuflags) & CPUSTAT_ECALL_PEND); in kvm_s390_ext_call_pending()
821 (vcpu->arch.sie_block->gcr[0] & 0x2000ul)) in kvm_s390_vcpu_has_irq()
856 now = get_tod_clock_fast() + vcpu->arch.sie_block->epoch; in kvm_s390_handle_wait()
857 sltime = tod_to_ns(vcpu->arch.sie_block->ckc - now); in kvm_s390_handle_wait()
860 if (vcpu->arch.sie_block->ckc < now) in kvm_s390_handle_wait()
864 hrtimer_start(&vcpu->arch.ckc_timer, ktime_set (0, sltime) , HRTIMER_MODE_REL); in kvm_s390_handle_wait()
872 hrtimer_cancel(&vcpu->arch.ckc_timer); in kvm_s390_handle_wait()
894 vcpu = container_of(timer, struct kvm_vcpu, arch.ckc_timer); in kvm_s390_idle_wakeup()
895 now = get_tod_clock_fast() + vcpu->arch.sie_block->epoch; in kvm_s390_idle_wakeup()
896 sltime = tod_to_ns(vcpu->arch.sie_block->ckc - now); in kvm_s390_idle_wakeup()
902 if (vcpu->arch.sie_block->ckc > now && in kvm_s390_idle_wakeup()
911 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_clear_local_irqs()
921 vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl = 0; in kvm_s390_clear_local_irqs()
926 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_deliver_pending_interrupts()
972 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_prog()
981 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_inject_program_int()
998 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_inject_prog_irq()
1016 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_pfault_init()
1033 uint8_t *sigp_ctrl = &vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in __inject_extcall_sigpif()
1041 atomic_set_mask(CPUSTAT_ECALL_PEND, &vcpu->arch.sie_block->cpuflags); in __inject_extcall_sigpif()
1047 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_extcall()
1072 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_set_prefix()
1091 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_stop()
1117 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_restart()
1129 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_emergency()
1148 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_mchk()
1179 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_ckc()
1192 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_cpu_timer()
1206 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in get_io_int()
1252 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_service()
1277 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_virtio()
1294 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_pfault_done()
1313 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_float_mchk()
1330 fi = &kvm->arch.float_int; in __inject_io()
1355 fi = &kvm->arch.float_int; in __inject_vm()
1388 li = &dst_vcpu->arch.local_int; in __inject_vm()
1505 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_is_stop_irq_pending()
1512 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_clear_stop_irq()
1569 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_inject_vcpu()
1608 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in kvm_s390_clear_float_irqs()
1647 fi = &kvm->arch.float_int; in get_all_floating_irqs()
1788 return kvm->arch.adapters[id]; in get_io_adapter()
1802 (dev->kvm->arch.adapters[adapter_info.id] != NULL)) in register_io_adapter()
1817 dev->kvm->arch.adapters[adapter->id] = adapter; in register_io_adapter()
1850 map->addr = gmap_translate(kvm->arch.gmap, addr); in kvm_s390_adapter_map()
1905 if (!kvm->arch.adapters[i]) in kvm_s390_destroy_adapters()
1908 &kvm->arch.adapters[i]->maps, list) { in kvm_s390_destroy_adapters()
1913 kfree(kvm->arch.adapters[i]); in kvm_s390_destroy_adapters()
1963 dev->kvm->arch.gmap->pfault_enabled = 1; in flic_set_attr()
1966 dev->kvm->arch.gmap->pfault_enabled = 0; in flic_set_attr()
1993 if (dev->kvm->arch.flic) in flic_create()
1995 dev->kvm->arch.flic = dev; in flic_create()
2001 dev->kvm->arch.flic = NULL; in flic_destroy()
2135 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_set_irq_state()
2217 uint8_t sigp_ctrl = vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in kvm_s390_get_irq_state()
2219 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_get_irq_state()
2238 store_local_irq(&vcpu->arch.local_int, &irq, irq_type); in kvm_s390_get_irq_state()
2258 (atomic_read(&vcpu->arch.sie_block->cpuflags) & in kvm_s390_get_irq_state()