Lines Matching refs:arch
39 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_EXT); in psw_extint_disabled()
44 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_IO); in psw_ioint_disabled()
49 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_MCHECK); in psw_mchk_disabled()
62 !(vcpu->arch.sie_block->gcr[0] & 0x800ul)) in ckc_interrupts_enabled()
72 if (vcpu->arch.sie_block->ckc >= kvm_s390_get_tod_clock_fast(vcpu->kvm)) in ckc_irq_pending()
80 (vcpu->arch.sie_block->gcr[0] & 0x400ul); in cpu_timer_interrupts_enabled()
85 return (vcpu->arch.sie_block->cputm >> 63) && in cpu_timer_irq_pending()
107 return vcpu->kvm->arch.float_int.pending_irqs | in pending_irqs()
108 vcpu->arch.local_int.pending_irqs; in pending_irqs()
117 if (!(vcpu->arch.sie_block->gcr[6] & isc_to_isc_bits(i))) in disable_iscs()
137 if (!(vcpu->arch.sie_block->gcr[0] & 0x2000ul)) in deliverable_irqs()
139 if (!(vcpu->arch.sie_block->gcr[0] & 0x4000ul)) in deliverable_irqs()
141 if (!(vcpu->arch.sie_block->gcr[0] & 0x800ul)) in deliverable_irqs()
143 if (!(vcpu->arch.sie_block->gcr[0] & 0x400ul)) in deliverable_irqs()
145 if (!(vcpu->arch.sie_block->gcr[0] & 0x200ul)) in deliverable_irqs()
149 if (!(vcpu->arch.sie_block->gcr[14] & in deliverable_irqs()
150 vcpu->kvm->arch.float_int.mchk.cr14)) in deliverable_irqs()
164 atomic_or(CPUSTAT_WAIT, &vcpu->arch.sie_block->cpuflags); in __set_cpu_idle()
165 set_bit(vcpu->vcpu_id, vcpu->arch.local_int.float_int->idle_mask); in __set_cpu_idle()
170 atomic_andnot(CPUSTAT_WAIT, &vcpu->arch.sie_block->cpuflags); in __unset_cpu_idle()
171 clear_bit(vcpu->vcpu_id, vcpu->arch.local_int.float_int->idle_mask); in __unset_cpu_idle()
177 &vcpu->arch.sie_block->cpuflags); in __reset_intercept_indicators()
178 vcpu->arch.sie_block->lctl = 0x0000; in __reset_intercept_indicators()
179 vcpu->arch.sie_block->ictl &= ~(ICTL_LPSW | ICTL_STCTL | ICTL_PINT); in __reset_intercept_indicators()
182 vcpu->arch.sie_block->lctl |= (LCTL_CR0 | LCTL_CR9 | in __reset_intercept_indicators()
184 vcpu->arch.sie_block->ictl |= (ICTL_STCTL | ICTL_PINT); in __reset_intercept_indicators()
190 atomic_or(flag, &vcpu->arch.sie_block->cpuflags); in __set_cpuflag()
200 vcpu->arch.sie_block->lctl |= LCTL_CR6; in set_intercept_indicators_io()
210 vcpu->arch.sie_block->lctl |= LCTL_CR0; in set_intercept_indicators_ext()
218 vcpu->arch.sie_block->ictl |= ICTL_LPSW; in set_intercept_indicators_mchk()
220 vcpu->arch.sie_block->lctl |= LCTL_CR14; in set_intercept_indicators_mchk()
240 switch (vcpu->arch.sie_block->icptcode) { in get_ilc()
247 return insn_length(vcpu->arch.sie_block->ipa >> 8); in get_ilc()
249 return vcpu->arch.sie_block->pgmilc; in get_ilc()
257 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_cpu_timer()
267 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_cpu_timer()
269 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_cpu_timer()
276 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_ckc()
286 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_ckc()
288 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_ckc()
295 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_pfault_init()
314 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_pfault_init()
316 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_pfault_init()
323 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_machine_check()
324 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_machine_check()
383 &vcpu->arch.sie_block->gpsw, in __deliver_machine_check()
386 &vcpu->arch.sie_block->gpsw, in __deliver_machine_check()
394 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_restart()
403 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_restart()
405 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_restart()
412 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_set_prefix()
432 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_emergency_signal()
452 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_emergency_signal()
454 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_emergency_signal()
460 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_external_call()
480 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_external_call()
481 rc |= read_guest_lc(vcpu, __LC_EXT_NEW_PSW, &vcpu->arch.sie_block->gpsw, in __deliver_external_call()
488 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __deliver_prog()
584 if (nullifying && vcpu->arch.sie_block->icptcode == ICPT_INST) in __deliver_prog()
588 rc |= put_guest_lc(vcpu, vcpu->arch.sie_block->gbea, in __deliver_prog()
593 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_prog()
595 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_prog()
601 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_service()
624 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_service()
626 &vcpu->arch.sie_block->gpsw, sizeof(psw_t)); in __deliver_service()
635 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_pfault_done()
663 &vcpu->arch.sie_block->gpsw, in __deliver_pfault_done()
666 &vcpu->arch.sie_block->gpsw, in __deliver_pfault_done()
677 struct kvm_s390_float_interrupt *fi = &vcpu->kvm->arch.float_int; in __deliver_virtio()
707 &vcpu->arch.sie_block->gpsw, in __deliver_virtio()
710 &vcpu->arch.sie_block->gpsw, in __deliver_virtio()
729 fi = &vcpu->kvm->arch.float_int; in __deliver_io()
762 &vcpu->arch.sie_block->gpsw, in __deliver_io()
765 &vcpu->arch.sie_block->gpsw, in __deliver_io()
794 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_ext_call_pending()
795 uint8_t sigp_ctrl = vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in kvm_s390_ext_call_pending()
801 (atomic_read(&vcpu->arch.sie_block->cpuflags) & CPUSTAT_ECALL_PEND); in kvm_s390_ext_call_pending()
815 (vcpu->arch.sie_block->gcr[0] & 0x2000ul)) in kvm_s390_vcpu_has_irq()
850 sltime = tod_to_ns(vcpu->arch.sie_block->ckc - now); in kvm_s390_handle_wait()
853 if (vcpu->arch.sie_block->ckc < now) in kvm_s390_handle_wait()
857 hrtimer_start(&vcpu->arch.ckc_timer, ktime_set (0, sltime) , HRTIMER_MODE_REL); in kvm_s390_handle_wait()
865 hrtimer_cancel(&vcpu->arch.ckc_timer); in kvm_s390_handle_wait()
887 vcpu = container_of(timer, struct kvm_vcpu, arch.ckc_timer); in kvm_s390_idle_wakeup()
889 sltime = tod_to_ns(vcpu->arch.sie_block->ckc - now); in kvm_s390_idle_wakeup()
895 if (vcpu->arch.sie_block->ckc > now && in kvm_s390_idle_wakeup()
904 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_clear_local_irqs()
914 vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl = 0; in kvm_s390_clear_local_irqs()
919 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_deliver_pending_interrupts()
960 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_prog()
992 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_pfault_init()
1009 uint8_t *sigp_ctrl = &vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in __inject_extcall_sigpif()
1017 atomic_or(CPUSTAT_ECALL_PEND, &vcpu->arch.sie_block->cpuflags); in __inject_extcall_sigpif()
1023 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_extcall()
1048 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_set_prefix()
1067 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_stop()
1093 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_restart()
1105 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_sigp_emergency()
1124 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_mchk()
1155 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_ckc()
1168 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in __inject_cpu_timer()
1182 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in get_io_int()
1228 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_service()
1253 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_virtio()
1270 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_pfault_done()
1289 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __inject_float_mchk()
1306 fi = &kvm->arch.float_int; in __inject_io()
1327 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in __floating_irq_kick()
1350 li = &dst_vcpu->arch.local_int; in __floating_irq_kick()
1496 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_is_stop_irq_pending()
1503 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_clear_stop_irq()
1558 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_inject_vcpu()
1597 struct kvm_s390_float_interrupt *fi = &kvm->arch.float_int; in kvm_s390_clear_float_irqs()
1636 fi = &kvm->arch.float_int; in get_all_floating_irqs()
1777 return kvm->arch.adapters[id]; in get_io_adapter()
1791 (dev->kvm->arch.adapters[adapter_info.id] != NULL)) in register_io_adapter()
1806 dev->kvm->arch.adapters[adapter->id] = adapter; in register_io_adapter()
1839 map->addr = gmap_translate(kvm->arch.gmap, addr); in kvm_s390_adapter_map()
1894 if (!kvm->arch.adapters[i]) in kvm_s390_destroy_adapters()
1897 &kvm->arch.adapters[i]->maps, list) { in kvm_s390_destroy_adapters()
1902 kfree(kvm->arch.adapters[i]); in kvm_s390_destroy_adapters()
1952 dev->kvm->arch.gmap->pfault_enabled = 1; in flic_set_attr()
1955 dev->kvm->arch.gmap->pfault_enabled = 0; in flic_set_attr()
1982 if (dev->kvm->arch.flic) in flic_create()
1984 dev->kvm->arch.flic = dev; in flic_create()
1990 dev->kvm->arch.flic = NULL; in flic_destroy()
2124 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_set_irq_state()
2206 uint8_t sigp_ctrl = vcpu->kvm->arch.sca->cpu[vcpu->vcpu_id].sigp_ctrl; in kvm_s390_get_irq_state()
2208 struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; in kvm_s390_get_irq_state()
2227 store_local_irq(&vcpu->arch.local_int, &irq, irq_type); in kvm_s390_get_irq_state()
2247 (atomic_read(&vcpu->arch.sie_block->cpuflags) & in kvm_s390_get_irq_state()