/xen-4.10.0-shim-comet/xen/include/asm-x86/ |
A D | debugger.h | 41 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_fatal() argument 43 int rc = __trap_to_gdb(regs, vector); in debugger_trap_fatal() 44 return ((rc == 0) || (vector == TRAP_int3)); in debugger_trap_fatal() 53 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_fatal() argument 63 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_entry() argument 72 if ( vector != TRAP_int3 && vector != TRAP_debug ) in debugger_trap_entry() 78 if ( vector != TRAP_debug ) /* domain pause is good enough */ in debugger_trap_entry() 79 current->arch.gdbsx_vcpu_event = vector; in debugger_trap_entry()
|
A D | genapic.h | 39 void (*send_IPI_mask)(const cpumask_t *mask, int vector); 40 void (*send_IPI_self)(uint8_t vector); 55 void send_IPI_self_legacy(uint8_t vector); 60 void send_IPI_mask_flat(const cpumask_t *mask, int vector); 76 void send_IPI_mask_phys(const cpumask_t *mask, int vector);
|
A D | apic.h | 146 static __inline bool_t apic_isr_read(u8 vector) in apic_isr_read() argument 148 return (apic_read(APIC_ISR + ((vector & ~0x1f) >> 1)) >> in apic_isr_read() 149 (vector & 0x1f)) & 1; in apic_isr_read() 197 extern void check_for_unexpected_msi(unsigned int vector);
|
A D | smp.h | 31 void send_IPI_mask(const cpumask_t *, int vector); 32 void send_IPI_self(int vector);
|
A D | domain.h | 643 static inline void pv_inject_hw_exception(unsigned int vector, int errcode) in pv_inject_hw_exception() argument 646 .vector = vector, in pv_inject_hw_exception() 657 .vector = TRAP_page_fault, in pv_inject_page_fault() 666 static inline void pv_inject_sw_interrupt(unsigned int vector) in pv_inject_sw_interrupt() argument 669 .vector = vector, in pv_inject_sw_interrupt()
|
A D | irq.h | 33 s16 vector; /* vector itself is only 8 bits, */ member 98 uint8_t vector, void (*handler)(struct cpu_user_regs *)); 100 uint8_t *vector, void (*handler)(struct cpu_user_regs *)); 175 int bind_irq_vector(int irq, int vector, const cpumask_t *);
|
A D | msi.h | 181 __u32 vector : 8; member 193 __u32 vector : 8; 243 void msi_compose_msg(unsigned vector, const cpumask_t *mask, 250 void end_nonmaskable_msi_irq(struct irq_desc *, u8 vector);
|
/xen-4.10.0-shim-comet/xen/arch/x86/ |
A D | smp.c | 30 void send_IPI_mask(const cpumask_t *mask, int vector) in send_IPI_mask() argument 32 genapic->send_IPI_mask(mask, vector); in send_IPI_mask() 35 void send_IPI_self(int vector) in send_IPI_self() argument 37 genapic->send_IPI_self(vector); in send_IPI_self() 84 return APIC_DM_FIXED | shortcut | vector; in __prepare_ICR() 114 cfg = __prepare_ICR(shortcut, vector) | dest; in __default_send_IPI_shortcut() 121 void send_IPI_self_legacy(uint8_t vector) in send_IPI_self_legacy() argument 126 void send_IPI_mask_flat(const cpumask_t *cpumask, int vector) in send_IPI_mask_flat() argument 153 cfg = __prepare_ICR(0, vector) | APIC_DEST_LOGICAL; in send_IPI_mask_flat() 163 void send_IPI_mask_phys(const cpumask_t *mask, int vector) in send_IPI_mask_phys() argument [all …]
|
A D | irq.c | 127 if ( (desc->arch.vector == vector) && in __bind_irq_vector() 135 desc->arch.vector = vector; in __bind_irq_vector() 254 vector = desc->arch.vector; in __clear_irq_vector() 317 vector = irq_to_desc(irq)->arch.vector; in irq_to_vector() 322 vector = irq_to_desc(irq)->arch.vector; in irq_to_vector() 358 for ( vector = 0; vector < NR_VECTORS; ++vector ) in init_irq_data() 528 desc->arch.vector = vector; in __assign_irq_vector() 576 for ( vector = 0; vector < NR_VECTORS; ++vector ) in setup_vector_irq() 667 if ( vector == desc->arch.vector && in irq_move_cleanup_interrupt() 729 if ( vector == desc->arch.vector && in irq_complete_move() [all …]
|
A D | io_apic.c | 288 vector = __ioapic_read_entry(apic, pin, TRUE).vector; in __io_apic_eoi() 477 unsigned int pin, vector = desc->arch.vector; in __eoi_IO_APIC_irq() local 1034 entry.vector = vector; in setup_IO_APIC_irqs() 1077 entry.vector = vector; in setup_ExtINT_IRQ0_pin() 1730 if ( vector && i != vector ) in end_level_ioapic_irq_new() 2204 int vector; in io_apic_set_pci_routing() local 2235 entry.vector = vector; in io_apic_set_pci_routing() 2380 rte.vector = desc->arch.vector; in ioapic_guest_write() 2390 int vector = desc->arch.vector; in ioapic_guest_write() local 2402 desc->arch.vector = vector; in ioapic_guest_write() [all …]
|
/xen-4.10.0-shim-comet/xen/arch/x86/pv/ |
A D | traps.c | 52 const uint8_t vector = event->vector; in pv_inject_event() local 56 ASSERT(vector == event->vector); /* Confirm no truncation. */ in pv_inject_event() 59 ASSERT(vector < 32); in pv_inject_event() 60 use_error_code = TRAP_HAVE_EC & (1u << vector); in pv_inject_event() 73 ti = &curr->arch.pv_vcpu.trap_ctxt[vector]; in pv_inject_event() 80 vector == TRAP_page_fault ) in pv_inject_event() 93 trace_pv_trap(vector, regs->rip, use_error_code, error_code); in pv_inject_event() 108 trapstr(vector), vector, error_code); in pv_inject_event() 110 if ( vector == TRAP_page_fault ) in pv_inject_event() 215 int pv_raise_interrupt(struct vcpu *v, uint8_t vector) in pv_raise_interrupt() argument [all …]
|
/xen-4.10.0-shim-comet/xen/arch/x86/hvm/svm/ |
A D | intr.c | 50 event.fields.vector = 2; in svm_inject_nmi() 63 static void svm_inject_extint(struct vcpu *v, int vector) in svm_inject_extint() argument 71 event.fields.vector = vector; in svm_inject_extint() 100 HVMTRACE_3D(INTR_WINDOW, intack.vector, intack.source, in svm_enable_intr_window() 101 vmcb->eventinj.fields.v?vmcb->eventinj.fields.vector:-1); in svm_enable_intr_window() 125 intr.fields.vector = 0; in svm_enable_intr_window() 126 intr.fields.prio = intack.vector >> 4; in svm_enable_intr_window() 210 HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0); in svm_intr_assist() 211 svm_inject_extint(v, intack.vector); in svm_intr_assist()
|
/xen-4.10.0-shim-comet/xen/include/asm-x86/pv/ |
A D | traps.h | 31 int pv_raise_interrupt(struct vcpu *v, uint8_t vector); 38 uint8_t vector) in pv_trap_callback_registered() argument 40 return v->arch.pv_vcpu.trap_ctxt[vector].address; in pv_trap_callback_registered() 50 static int pv_raise_interrupt(struct vcpu *v, uint8_t vector) { return -EOPNOTSUPP; } in pv_raise_interrupt() argument 57 uint8_t vector) in pv_trap_callback_registered() argument
|
/xen-4.10.0-shim-comet/xen/arch/x86/hvm/vmx/ |
A D | realmode.c | 25 unsigned int vector, in realmode_deliver_exception() argument 40 last_byte = (vector * 4) + 3; in realmode_deliver_exception() 42 hvm_copy_from_guest_phys(&cs_eip, idtr->base + vector * 4, 4) != in realmode_deliver_exception() 49 vector = TRAP_gp_fault; in realmode_deliver_exception() 54 switch ( vector ) in realmode_deliver_exception() 60 vector = TRAP_double_fault; in realmode_deliver_exception() 63 vector = TRAP_gp_fault; in realmode_deliver_exception() 127 ((hvmemul_ctxt->ctxt.event.vector == TRAP_debug) || in vmx_realmode_emulate_one() 128 (hvmemul_ctxt->ctxt.event.vector == TRAP_int3)) ) in vmx_realmode_emulate_one() 135 hvmemul_ctxt->ctxt.event.vector); in vmx_realmode_emulate_one() [all …]
|
A D | intr.c | 81 HVMTRACE_3D(INTR_WINDOW, intack.vector, intack.source, in vmx_enable_intr_window() 198 vmx_inject_extint(intack.vector, intack.source); in nvmx_intr_intercept() 218 vmx_inject_extint(intack.vector, intack.source); in nvmx_intr_intercept() 283 tpr_threshold = intack.vector >> 4; in vmx_intr_assist() 336 if ( unlikely(intack.vector < pt_vector) ) in vmx_intr_assist() 344 current, intack.source, intack.vector, pt_vector); in vmx_intr_assist() 367 ASSERT(intack.vector >= pt_vector); in vmx_intr_assist() 368 vmx_set_eoi_exit_bitmap(v, intack.vector); in vmx_intr_assist() 375 intack.vector; in vmx_intr_assist() 390 HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0); in vmx_intr_assist() [all …]
|
/xen-4.10.0-shim-comet/docs/misc/ |
A D | vtd-pi.txt | 11 Virtual Vector: the guest vector of the interrupt 17 per vector, for up to 256 vectors). 116 The virtual-vector specifies the vector of the interrupt to be recorded in 187 u8 vector; 204 u8 vector; 220 global notification vector for all vCPUs in the system. This vector is stored in 224 This existing global vector is a _special_ vector to CPU, CPU handle it in a 232 how to use this new global vector. 237 Virtual Vector: the guest vector of the interrupt 244 'Virtual Vector' tells the guest vector of the interrupt. [all …]
|
/xen-4.10.0-shim-comet/xen/arch/x86/hvm/ |
A D | irq.c | 177 int vector = -1; in hvm_isa_irq_assert() local 188 vector = get_vector(d, gsi); in hvm_isa_irq_assert() 192 return vector; in hvm_isa_irq_assert() 348 uint8_t vector = data & MSI_DATA_VECTOR_MASK; in hvm_inject_msi() local 350 if ( !vector ) in hvm_inject_msi() 478 int vector; in hvm_vcpu_has_pending_irq() local 493 vector = vlapic_has_pending_irq(v); in hvm_vcpu_has_pending_irq() 494 if ( vector != -1 ) in hvm_vcpu_has_pending_irq() 495 return hvm_intack_lapic(vector); in hvm_vcpu_has_pending_irq() 503 int vector; in hvm_vcpu_ack_pending_irq() local [all …]
|
A D | vioapic.c | 361 uint8_t vector, in ioapic_inj_irq() argument 366 vector, trig_mode, delivery_mode); in ioapic_inj_irq() 371 vlapic_set_irq(target, vector, trig_mode); in ioapic_inj_irq() 384 uint8_t vector = vioapic->redirtbl[pin].fields.vector; in vioapic_deliver() local 396 dest, dest_mode, delivery_mode, vector, trig_mode); in vioapic_deliver() 420 vector, dest_LowestPrio); in vioapic_deliver() 432 ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, in vioapic_deliver() 441 ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, in vioapic_deliver() 496 void vioapic_update_EOI(struct domain *d, u8 vector) in vioapic_update_EOI() argument 514 if ( ent->fields.vector != vector ) in vioapic_update_EOI() [all …]
|
A D | vlapic.c | 343 uint8_t vector = (uint8_t)icr_low; in vlapic_accept_irq() local 350 vlapic_set_irq(vlapic, vector, 0); in vlapic_accept_irq() 422 if ( vector == -1 ) in vlapic_EOI_set() 428 hvm_funcs.handle_eoi(vector); in vlapic_EOI_set() 430 vlapic_handle_EOI(vlapic, vector); in vlapic_EOI_set() 438 vioapic_update_EOI(d, vector); in vlapic_handle_EOI() 440 hvm_dpci_msi_eoi(d, vector); in vlapic_handle_EOI() 1242 int irr, vector, isr; in vlapic_has_pending_irq() local 1260 vector = viridian_complete_apic_assist(v); in vlapic_has_pending_irq() 1261 if ( vector ) in vlapic_has_pending_irq() [all …]
|
A D | vmsi.c | 45 uint8_t vector, in vmsi_inj_irq() argument 50 vector, trig_mode, delivery_mode); in vmsi_inj_irq() 56 vlapic_set_irq(target, vector, trig_mode); in vmsi_inj_irq() 64 struct domain *d, int vector, in vmsi_deliver() argument 77 vmsi_inj_irq(target, vector, trig_mode, delivery_mode); in vmsi_deliver() 81 vector); in vmsi_deliver() 88 vmsi_inj_irq(vcpu_vlapic(v), vector, in vmsi_deliver() 105 int vector = pirq_dpci->gmsi.gvec; in vmsi_deliver_pirq() local 114 dest, dest_mode, delivery_mode, vector, trig_mode); in vmsi_deliver_pirq() 118 vmsi_deliver(d, vector, dest, dest_mode, delivery_mode, trig_mode); in vmsi_deliver_pirq()
|
A D | viridian.c | 436 void viridian_start_apic_assist(struct vcpu *v, int vector) in viridian_start_apic_assist() argument 443 if ( vector < 0x10 ) in viridian_start_apic_assist() 451 if ( v->arch.hvm_vcpu.viridian.vp_assist.vector ) in viridian_start_apic_assist() 454 v->arch.hvm_vcpu.viridian.vp_assist.vector = vector; in viridian_start_apic_assist() 461 int vector; in viridian_complete_apic_assist() local 469 vector = v->arch.hvm_vcpu.viridian.vp_assist.vector; in viridian_complete_apic_assist() 470 v->arch.hvm_vcpu.viridian.vp_assist.vector = 0; in viridian_complete_apic_assist() 472 return vector; in viridian_complete_apic_assist() 483 v->arch.hvm_vcpu.viridian.vp_assist.vector = 0; in viridian_abort_apic_assist() 1043 .vp_assist_vector = v->arch.hvm_vcpu.viridian.vp_assist.vector, in viridian_save_vcpu_ctxt() [all …]
|
/xen-4.10.0-shim-comet/xen/include/asm-x86/hvm/ |
A D | hvm.h | 48 uint8_t vector; member 56 #define hvm_intack_vector(vec) hvm_intack(vector, vec) 185 struct vcpu *v, unsigned int vector, int errcode); 196 void (*deliver_posted_intr)(struct vcpu *v, u8 vector); 198 bool (*test_pir)(const struct vcpu *v, uint8_t vector); 199 void (*handle_eoi)(u8 vector); 278 struct domain *d, int vector, 405 .vector = vector, in hvm_inject_hw_exception() 416 .vector = TRAP_page_fault, in hvm_inject_page_fault() 439 int hvm_event_needs_reinjection(uint8_t type, uint8_t vector); [all …]
|
/xen-4.10.0-shim-comet/xen/arch/x86/genapic/ |
A D | x2apic.c | 93 static void send_IPI_self_x2apic(uint8_t vector) in send_IPI_self_x2apic() argument 95 apic_wrmsr(APIC_SELF_IPI, vector); in send_IPI_self_x2apic() 98 static void send_IPI_mask_x2apic_phys(const cpumask_t *cpumask, int vector) in send_IPI_mask_x2apic_phys() argument 124 APIC_DEST_PHYSICAL | vector; in send_IPI_mask_x2apic_phys() 131 static void send_IPI_mask_x2apic_cluster(const cpumask_t *cpumask, int vector) in send_IPI_mask_x2apic_cluster() argument 159 APIC_DEST_LOGICAL | vector; in send_IPI_mask_x2apic_cluster()
|
/xen-4.10.0-shim-comet/xen/drivers/passthrough/amd/ |
A D | iommu_intr.c | 121 static void update_intremap_entry(u32* entry, u8 vector, u8 int_type, in update_intremap_entry() argument 142 set_field_in_reg_u32((u32)vector, *entry, in update_intremap_entry() 149 return rte->vector | (rte->delivery_mode << 8); in get_rte_index() 154 rte->vector = (u8)offset; in set_rte_index() 167 u8 delivery_mode, dest, vector, dest_mode; in update_intremap_entry_from_ioapic() local 176 vector = rte->vector; in update_intremap_entry_from_ioapic() 204 vector = get_field_from_reg_u32(*entry, in update_intremap_entry_from_ioapic() 233 u8 delivery_mode, dest, vector, dest_mode; in amd_iommu_setup_ioapic_remapping() local 269 vector = rte.vector; in amd_iommu_setup_ioapic_remapping() 277 update_intremap_entry(entry, vector, in amd_iommu_setup_ioapic_remapping() [all …]
|
/xen-4.10.0-shim-comet/xen/include/asm-x86/guest/ |
A D | hypercall.h | 169 unsigned int cpu, unsigned int vector) in xen_hypercall_set_evtchn_upcall_vector() argument 173 .vector = vector, in xen_hypercall_set_evtchn_upcall_vector()
|