Home
last modified time | relevance | path

Searched refs:vector (Results 1 – 25 of 93) sorted by relevance

1234

/xen/xen/include/asm-x86/
A Ddebugger.h43 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_fatal() argument
45 int rc = __trap_to_gdb(regs, vector); in debugger_trap_fatal()
46 return ((rc == 0) || (vector == TRAP_int3)); in debugger_trap_fatal()
53 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_entry() argument
62 if ( vector != TRAP_int3 && vector != TRAP_debug ) in debugger_trap_entry()
68 if ( vector != TRAP_debug ) /* domain pause is good enough */ in debugger_trap_entry()
69 current->arch.gdbsx_vcpu_event = vector; in debugger_trap_entry()
80 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_fatal() argument
88 unsigned int vector, struct cpu_user_regs *regs) in debugger_trap_entry() argument
A Dgenapic.h38 void (*send_IPI_mask)(const cpumask_t *mask, int vector);
39 void (*send_IPI_self)(uint8_t vector);
54 void send_IPI_self_legacy(uint8_t vector);
59 void send_IPI_mask_flat(const cpumask_t *mask, int vector);
74 void send_IPI_mask_phys(const cpumask_t *mask, int vector);
A Dirq.h32 s16 vector; /* vector itself is only 8 bits, */ member
108 uint8_t vector, void (*handler)(struct cpu_user_regs *));
110 uint8_t *vector, void (*handler)(struct cpu_user_regs *));
188 int bind_irq_vector(int irq, int vector, const cpumask_t *);
190 void end_nonmaskable_irq(struct irq_desc *, uint8_t vector);
A Dapic.h141 static __inline bool_t apic_isr_read(u8 vector) in apic_isr_read() argument
143 return (apic_read(APIC_ISR + ((vector & ~0x1f) >> 1)) >> in apic_isr_read()
144 (vector & 0x1f)) & 1; in apic_isr_read()
192 extern void check_for_unexpected_msi(unsigned int vector);
A Ddomain.h690 static inline void pv_inject_hw_exception(unsigned int vector, int errcode) in pv_inject_hw_exception() argument
693 .vector = vector, in pv_inject_hw_exception()
704 .vector = TRAP_page_fault, in pv_inject_page_fault()
713 static inline void pv_inject_sw_interrupt(unsigned int vector) in pv_inject_sw_interrupt() argument
716 .vector = vector, in pv_inject_sw_interrupt()
A Dsmp.h35 void send_IPI_mask(const cpumask_t *, int vector);
36 void send_IPI_self(int vector);
/xen/xen/arch/x86/
A Dsmp.c29 static unsigned int prepare_ICR(unsigned int shortcut, int vector) in prepare_ICR() argument
31 return APIC_DM_FIXED | shortcut | vector; in prepare_ICR()
49 static void send_IPI_shortcut(unsigned int shortcut, int vector, in send_IPI_shortcut() argument
57 cfg = prepare_ICR(shortcut, vector) | dest; in send_IPI_shortcut()
67 void send_IPI_mask(const cpumask_t *mask, int vector) in send_IPI_mask() argument
116 void send_IPI_self(int vector) in send_IPI_self() argument
118 alternative_vcall(genapic.send_IPI_self, vector); in send_IPI_self()
163 void send_IPI_self_legacy(uint8_t vector) in send_IPI_self_legacy() argument
195 cfg = prepare_ICR(0, vector) | APIC_DEST_LOGICAL; in send_IPI_mask_flat()
205 void send_IPI_mask_phys(const cpumask_t *mask, int vector) in send_IPI_mask_phys() argument
[all …]
A Dirq.c159 if ( (desc->arch.vector == vector) && in _bind_irq_vector()
167 desc->arch.vector = vector; in _bind_irq_vector()
198 unsigned int vector = desc->arch.vector; in _clear_irq_vector() local
373 vector = desc->arch.vector; in irq_to_vector()
384 vector = desc->arch.vector; in irq_to_vector()
421 for ( vector = 0; vector < X86_NR_VECTORS; ++vector ) in init_irq_data()
615 desc->arch.vector = vector; in _assign_irq_vector()
674 for ( vector = 0; vector < X86_NR_VECTORS; ++vector ) in setup_vector_irq()
831 if ( vector == desc->arch.vector && in irq_complete_move()
1090 peoi[sp].vector = vector; in end_nonmaskable_irq()
[all …]
A Dio_apic.c290 vector = __ioapic_read_entry(apic, pin, TRUE).vector; in __io_apic_eoi()
481 unsigned int pin, vector = desc->arch.vector; in __eoi_IO_APIC_irq() local
1040 entry.vector = vector; in setup_IO_APIC_irqs()
1081 entry.vector = vector; in setup_ExtINT_IRQ0_pin()
1734 if ( vector && i != vector ) in end_level_ioapic_irq_new()
2205 int vector; in io_apic_set_pci_routing() local
2236 entry.vector = vector; in io_apic_set_pci_routing()
2385 rte.vector = desc->arch.vector; in ioapic_guest_write()
2396 int vector = desc->arch.vector; in ioapic_guest_write() local
2408 desc->arch.vector = vector; in ioapic_guest_write()
[all …]
/xen/xen/arch/x86/pv/
A Dtraps.c47 const uint8_t vector = event->vector; in pv_inject_event() local
51 ASSERT(vector == event->vector); /* Confirm no truncation. */ in pv_inject_event()
54 ASSERT(vector < 32); in pv_inject_event()
55 use_error_code = TRAP_HAVE_EC & (1u << vector); in pv_inject_event()
68 ti = &curr->arch.pv.trap_ctxt[vector]; in pv_inject_event()
75 vector == TRAP_page_fault ) in pv_inject_event()
88 trace_pv_trap(vector, regs->rip, use_error_code, error_code); in pv_inject_event()
103 trapstr(vector), vector, error_code); in pv_inject_event()
105 if ( vector == TRAP_page_fault ) in pv_inject_event()
/xen/xen/arch/x86/hvm/svm/
A Dintr.c51 event.vector = TRAP_nmi; in svm_inject_nmi()
64 static void svm_inject_extint(struct vcpu *v, int vector) in svm_inject_extint() argument
72 event.vector = vector; in svm_inject_extint()
101 HVMTRACE_3D(INTR_WINDOW, intack.vector, intack.source, in svm_enable_intr_window()
102 vmcb->event_inj.v ? vmcb->event_inj.vector : -1); in svm_enable_intr_window()
126 intr.fields.vector = 0; in svm_enable_intr_window()
127 intr.fields.prio = intack.vector >> 4; in svm_enable_intr_window()
215 HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0); in svm_intr_assist()
216 svm_inject_extint(v, intack.vector); in svm_intr_assist()
/xen/xen/arch/x86/hvm/viridian/
A Dsynic.c148 uint8_t vector; in viridian_synic_wrmsr() local
155 if ( new.vector < 0x10 ) in viridian_synic_wrmsr()
162 vector = vs->vector; in viridian_synic_wrmsr()
165 vector = new.vector; in viridian_synic_wrmsr()
166 vv->vector_to_sintx[vector] = sintx; in viridian_synic_wrmsr()
169 vector); in viridian_synic_wrmsr()
373 unsigned int sintx = vv->vector_to_sintx[vector]; in viridian_synic_is_auto_eoi_sint()
431 uint8_t vector; in viridian_synic_load_vcpu_ctxt() local
435 vector = vv->sint[i].vector; in viridian_synic_load_vcpu_ctxt()
436 if ( vector < 0x10 ) in viridian_synic_load_vcpu_ctxt()
[all …]
/xen/xen/arch/x86/hvm/vmx/
A Drealmode.c26 unsigned int vector, in realmode_deliver_exception() argument
41 last_byte = (vector * 4) + 3; in realmode_deliver_exception()
43 hvm_copy_from_guest_phys(&cs_eip, idtr->base + vector * 4, 4) != in realmode_deliver_exception()
50 vector = TRAP_gp_fault; in realmode_deliver_exception()
55 switch ( vector ) in realmode_deliver_exception()
61 vector = TRAP_double_fault; in realmode_deliver_exception()
64 vector = TRAP_gp_fault; in realmode_deliver_exception()
124 ((hvmemul_ctxt->ctxt.event.vector == TRAP_debug) || in vmx_realmode_emulate_one()
125 (hvmemul_ctxt->ctxt.event.vector == TRAP_int3)) ) in vmx_realmode_emulate_one()
132 hvmemul_ctxt->ctxt.event.vector); in vmx_realmode_emulate_one()
[all …]
A Dintr.c82 HVMTRACE_3D(INTR_WINDOW, intack.vector, intack.source, in vmx_enable_intr_window()
199 vmx_inject_extint(intack.vector, intack.source); in nvmx_intr_intercept()
219 vmx_inject_extint(intack.vector, intack.source); in nvmx_intr_intercept()
305 tpr_threshold = intack.vector >> 4; in vmx_intr_assist()
357 if ( unlikely(intack.vector < pt_vector) ) in vmx_intr_assist()
365 current, intack.source, intack.vector, pt_vector); in vmx_intr_assist()
388 ASSERT(intack.vector >= pt_vector); in vmx_intr_assist()
389 vmx_set_eoi_exit_bitmap(v, intack.vector); in vmx_intr_assist()
396 intack.vector; in vmx_intr_assist()
405 HVMTRACE_2D(INJ_VIRQ, intack.vector, /*fake=*/ 0); in vmx_intr_assist()
[all …]
/xen/xen/drivers/passthrough/amd/
A Diommu_intr.c36 unsigned int vector:8; member
52 unsigned int vector:8; member
221 .vector = vector, in update_intremap_entry()
242 .vector = vector, in update_intremap_entry()
252 return rte->vector | (rte->delivery_mode << 8); in get_rte_index()
257 rte->vector = (u8)offset; in set_rte_index()
275 uint8_t delivery_mode, vector, dest_mode; in update_intremap_entry_from_ioapic() local
285 vector = rte->vector; in update_intremap_entry_from_ioapic()
330 vector = entry.ptr128->full.vector; in update_intremap_entry_from_ioapic()
332 vector = entry.ptr32->flds.vector; in update_intremap_entry_from_ioapic()
[all …]
/xen/xen/include/asm-x86/hvm/
A Dhvm.h47 uint8_t vector; member
55 #define hvm_intack_vector(vec) hvm_intack(vector, vec)
187 struct vcpu *v, unsigned int vector, int errcode);
197 void (*deliver_posted_intr)(struct vcpu *v, u8 vector);
200 void (*handle_eoi)(uint8_t vector, int isr);
263 struct domain *d, int vector,
478 unsigned int vector, unsigned int type, in hvm_inject_exception() argument
482 .vector = vector, in hvm_inject_exception()
494 .vector = vector, in hvm_inject_hw_exception()
505 .vector = TRAP_page_fault, in hvm_inject_page_fault()
[all …]
/xen/xen/arch/x86/hvm/
A Dirq.c53 int vector; in hvm_ioapic_assert() local
64 vector = vioapic_get_vector(d, gsi); in hvm_ioapic_assert()
67 return vector; in hvm_ioapic_assert()
221 int vector = -1; in hvm_isa_irq_assert() local
232 vector = get_vector(d, gsi); in hvm_isa_irq_assert()
236 return vector; in hvm_isa_irq_assert()
394 if ( !vector ) in hvm_inject_msi()
522 int vector; in hvm_vcpu_has_pending_irq() local
547 if ( vector != -1 ) in hvm_vcpu_has_pending_irq()
556 int vector; in hvm_vcpu_ack_pending_irq() local
[all …]
A Dvioapic.c381 uint8_t vector, in ioapic_inj_irq() argument
386 vector, trig_mode, delivery_mode); in ioapic_inj_irq()
391 vlapic_set_irq(target, vector, trig_mode); in ioapic_inj_irq()
404 uint8_t vector = vioapic->redirtbl[pin].fields.vector; in vioapic_deliver() local
416 dest, dest_mode, delivery_mode, vector, trig_mode); in vioapic_deliver()
440 vector, dest_LowestPrio); in vioapic_deliver()
452 ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, in vioapic_deliver()
461 ioapic_inj_irq(vioapic, vcpu_vlapic(v), vector, in vioapic_deliver()
516 void vioapic_update_EOI(struct domain *d, u8 vector) in vioapic_update_EOI() argument
534 if ( ent->fields.vector != vector ) in vioapic_update_EOI()
[all …]
A Dvlapic.c342 uint8_t vector = (uint8_t)icr_low; in vlapic_accept_irq() local
349 vlapic_set_irq(vlapic, vector, 0); in vlapic_accept_irq()
427 int vector; in vlapic_EOI_set() local
430 vector = vlapic_find_highest_isr(vlapic); in vlapic_EOI_set()
433 if ( vector == -1 ) in vlapic_EOI_set()
451 vlapic_handle_EOI(vlapic, vector); in vlapic_EOI_set()
468 vioapic_update_EOI(d, vector); in vlapic_handle_EOI()
470 viridian_synic_ack_sint(v, vector); in vlapic_handle_EOI()
472 hvm_dpci_msi_eoi(d, vector); in vlapic_handle_EOI()
1368 if ( isr == -1 && vector > 0x10 ) in vlapic_ack_pending_irq()
[all …]
A Dvmsi.c49 uint8_t vector, in vmsi_inj_irq() argument
54 vector, trig_mode, delivery_mode); in vmsi_inj_irq()
60 vlapic_set_irq(target, vector, trig_mode); in vmsi_inj_irq()
68 struct domain *d, int vector, in vmsi_deliver() argument
81 vmsi_inj_irq(target, vector, trig_mode, delivery_mode); in vmsi_deliver()
85 vector); in vmsi_deliver()
92 vmsi_inj_irq(vcpu_vlapic(v), vector, in vmsi_deliver()
109 int vector = pirq_dpci->gmsi.gvec; in vmsi_deliver_pirq() local
687 uint8_t vector = MASK_EXTR(data, MSI_DATA_VECTOR_MASK); in vpci_msi_update() local
692 .u.msi.gvec = (vector & ~vector_mask) | in vpci_msi_update()
[all …]
/xen/docs/misc/
A Dvtd-pi.txt11 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/xen/include/asm-x86/pv/
A Dtraps.h37 uint8_t vector) in pv_trap_callback_registered() argument
39 return v->arch.pv.trap_ctxt[vector].address; in pv_trap_callback_registered()
55 uint8_t vector) in pv_trap_callback_registered() argument
/xen/xen/arch/arm/arm32/
A Dentry.S158 .macro vector trap, guest_iflags=n, hyp_iflags=0 macro
311 vector reset
322 vector undefined_instruction, hyp_iflags=IFLAGS_AIF
326 vector hypervisor_call
337 vector prefetch_abort, hyp_iflags=IFLAGS_AIF
347 vector data_abort
351 vector guest_sync, guest_iflags=ai
356 vector irq, guest_iflags=a, hyp_iflags=IFLAGS_A_F
364 vector fiq
/xen/xen/arch/x86/genapic/
A Dx2apic.c90 static void send_IPI_self_x2apic(uint8_t vector) in send_IPI_self_x2apic() argument
92 apic_wrmsr(APIC_SELF_IPI, vector); in send_IPI_self_x2apic()
95 static void send_IPI_mask_x2apic_phys(const cpumask_t *cpumask, int vector) in send_IPI_mask_x2apic_phys() argument
121 APIC_DEST_PHYSICAL | vector; in send_IPI_mask_x2apic_phys()
128 static void send_IPI_mask_x2apic_cluster(const cpumask_t *cpumask, int vector) in send_IPI_mask_x2apic_cluster() argument
156 APIC_DEST_LOGICAL | vector; in send_IPI_mask_x2apic_cluster()
/xen/xen/include/asm-x86/guest/
A Dxen-hcall.h173 unsigned int cpu, unsigned int vector) in xen_hypercall_set_evtchn_upcall_vector() argument
177 .vector = vector, in xen_hypercall_set_evtchn_upcall_vector()

Completed in 50 milliseconds

1234