Lines Matching refs:sint
44 static inline u64 synic_read_sint(struct kvm_vcpu_hv_synic *synic, int sint)
46 return atomic64_read(&synic->sint[sint]);
61 for (i = 0; i < ARRAY_SIZE(synic->sint); i++) {
74 for (i = 0; i < ARRAY_SIZE(synic->sint); i++) {
100 static int synic_set_sint(struct kvm_vcpu_hv_synic *synic, int sint,
122 old_vector = synic_read_sint(synic, sint) & HV_SYNIC_SINT_VECTOR_MASK;
124 atomic64_set(&synic->sint[sint], data);
164 static void kvm_hv_notify_acked_sint(struct kvm_vcpu *vcpu, u32 sint)
172 trace_kvm_hv_notify_acked_sint(vcpu->vcpu_id, sint);
179 stimer->config.sintx == sint)
184 gsi = atomic_read(&synic->sint_to_gsi[sint]);
259 for (i = 0; i < ARRAY_SIZE(synic->sint); i++)
416 *pdata = atomic64_read(&synic->sint[msr - HV_X64_MSR_SINT0]);
425 static int synic_set_irq(struct kvm_vcpu_hv_synic *synic, u32 sint)
434 if (sint >= ARRAY_SIZE(synic->sint))
437 vector = synic_get_sint_vector(synic_read_sint(synic, sint));
449 trace_kvm_hv_synic_set_irq(vcpu->vcpu_id, sint, irq.vector, ret);
453 int kvm_hv_synic_set_irq(struct kvm *kvm, u32 vpidx, u32 sint)
461 return synic_set_irq(synic, sint);
471 for (i = 0; i < ARRAY_SIZE(synic->sint); i++)
476 static int kvm_hv_set_sint_gsi(struct kvm *kvm, u32 vpidx, u32 sint, int gsi)
484 if (sint >= ARRAY_SIZE(synic->sint_to_gsi))
487 atomic_set(&synic->sint_to_gsi[sint], gsi);
504 e->hv_sint.sint, gsi);
515 for (i = 0; i < ARRAY_SIZE(synic->sint); i++) {
516 atomic64_set(&synic->sint[i], HV_SYNIC_SINT_MASKED);
702 static int synic_deliver_msg(struct kvm_vcpu_hv_synic *synic, u32 sint,
706 int msg_off = offsetof(struct hv_message_page, sint_message[sint]);
751 r = synic_set_irq(synic, sint);