/linux-4.1.27/arch/x86/kernel/ |
H A D | paravirt_patch_32.c | 3 DEF_NATIVE(pv_irq_ops, irq_disable, "cli"); 4 DEF_NATIVE(pv_irq_ops, irq_enable, "sti"); 5 DEF_NATIVE(pv_irq_ops, restore_fl, "push %eax; popf"); 6 DEF_NATIVE(pv_irq_ops, save_fl, "pushf; pop %eax"); 39 PATCH_SITE(pv_irq_ops, irq_disable); native_patch() 40 PATCH_SITE(pv_irq_ops, irq_enable); native_patch() 41 PATCH_SITE(pv_irq_ops, restore_fl); native_patch() 42 PATCH_SITE(pv_irq_ops, save_fl); native_patch()
|
H A D | paravirt_patch_64.c | 5 DEF_NATIVE(pv_irq_ops, irq_disable, "cli"); 6 DEF_NATIVE(pv_irq_ops, irq_enable, "sti"); 7 DEF_NATIVE(pv_irq_ops, restore_fl, "pushq %rdi; popfq"); 8 DEF_NATIVE(pv_irq_ops, save_fl, "pushfq; popq %rax"); 48 PATCH_SITE(pv_irq_ops, restore_fl); native_patch() 49 PATCH_SITE(pv_irq_ops, save_fl); native_patch() 50 PATCH_SITE(pv_irq_ops, irq_enable); native_patch() 51 PATCH_SITE(pv_irq_ops, irq_disable); native_patch()
|
H A D | vsmp_64.c | 79 case PARAVIRT_PATCH(pv_irq_ops.irq_enable): vsmp_patch() 80 case PARAVIRT_PATCH(pv_irq_ops.irq_disable): vsmp_patch() 81 case PARAVIRT_PATCH(pv_irq_ops.save_fl): vsmp_patch() 82 case PARAVIRT_PATCH(pv_irq_ops.restore_fl): vsmp_patch() 120 pv_irq_ops.irq_disable = PV_CALLEE_SAVE(vsmp_irq_disable); set_vsmp_pv_ops() 121 pv_irq_ops.irq_enable = PV_CALLEE_SAVE(vsmp_irq_enable); set_vsmp_pv_ops() 122 pv_irq_ops.save_fl = PV_CALLEE_SAVE(vsmp_save_fl); set_vsmp_pv_ops() 123 pv_irq_ops.restore_fl = PV_CALLEE_SAVE(vsmp_restore_fl); set_vsmp_pv_ops()
|
H A D | asm-offsets.c | 48 OFFSET(PARAVIRT_PATCH_pv_irq_ops, paravirt_patch_template, pv_irq_ops); common() 49 OFFSET(PV_IRQ_irq_disable, pv_irq_ops, irq_disable); common() 50 OFFSET(PV_IRQ_irq_enable, pv_irq_ops, irq_enable); common()
|
H A D | asm-offsets_64.c | 25 OFFSET(PV_IRQ_adjust_exception_frame, pv_irq_ops, adjust_exception_frame); main()
|
H A D | paravirt.c | 135 .pv_irq_ops = pv_irq_ops, get_call_destination() 331 __visible struct pv_irq_ops pv_irq_ops = { variable in typeref:struct:pv_irq_ops 497 EXPORT_SYMBOL (pv_irq_ops); variable
|
/linux-4.1.27/arch/ia64/include/asm/ |
H A D | paravirt.h | 214 struct pv_irq_ops { struct 226 extern struct pv_irq_ops pv_irq_ops; 231 pv_irq_ops.register_ipi(); ia64_register_ipi() 237 return pv_irq_ops.assign_irq_vector(irq); assign_irq_vector() 243 return pv_irq_ops.free_irq_vector(vector); free_irq_vector() 249 pv_irq_ops.register_percpu_irq(vec, action); register_percpu_irq() 255 pv_irq_ops.resend_irq(vector); ia64_resend_irq()
|
/linux-4.1.27/arch/x86/xen/ |
H A D | irq.c | 117 static const struct pv_irq_ops xen_irq_ops __initconst = { 132 /* For PVH we use default pv_irq_ops settings. */ xen_init_irq_ops() 134 pv_irq_ops = xen_irq_ops; xen_init_irq_ops()
|
H A D | enlighten.c | 1121 pv_irq_ops.save_fl = __PV_IS_CALLEE_SAVE(xen_save_fl_direct); xen_setup_vcpu_info_placement() 1122 pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(xen_restore_fl_direct); xen_setup_vcpu_info_placement() 1123 pv_irq_ops.irq_disable = __PV_IS_CALLEE_SAVE(xen_irq_disable_direct); xen_setup_vcpu_info_placement() 1124 pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(xen_irq_enable_direct); xen_setup_vcpu_info_placement() 1147 SITE(pv_irq_ops, irq_enable); xen_patch() 1148 SITE(pv_irq_ops, irq_disable); xen_patch() 1149 SITE(pv_irq_ops, save_fl); xen_patch() 1150 SITE(pv_irq_ops, restore_fl); xen_patch()
|
/linux-4.1.27/arch/x86/include/asm/ |
H A D | paravirt.h | 111 PVOP_VCALL0(pv_irq_ops.safe_halt); arch_safe_halt() 116 PVOP_VCALL0(pv_irq_ops.halt); halt() 804 return PVOP_CALLEE0(unsigned long, pv_irq_ops.save_fl); arch_local_save_flags() 809 PVOP_VCALLEE1(pv_irq_ops.restore_fl, f); arch_local_irq_restore() 814 PVOP_VCALLEE0(pv_irq_ops.irq_disable); arch_local_irq_disable() 819 PVOP_VCALLEE0(pv_irq_ops.irq_enable); arch_local_irq_enable() 917 PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_irq_disable), clobbers, \ 919 call PARA_INDIRECT(pv_irq_ops+PV_IRQ_irq_disable); \ 923 PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_irq_enable), clobbers, \ 925 call PARA_INDIRECT(pv_irq_ops+PV_IRQ_irq_enable); \ 971 PARA_SITE(PARA_PATCH(pv_irq_ops, PV_IRQ_adjust_exception_frame), \ 973 call PARA_INDIRECT(pv_irq_ops+PV_IRQ_adjust_exception_frame))
|
H A D | paravirt_types.h | 197 struct pv_irq_ops { struct 348 struct pv_irq_ops pv_irq_ops; member in struct:paravirt_patch_template 358 extern struct pv_irq_ops pv_irq_ops;
|
/linux-4.1.27/arch/ia64/kernel/ |
H A D | paravirt.c | 619 * pv_irq_ops 623 struct pv_irq_ops pv_irq_ops = { variable in typeref:struct:pv_irq_ops
|
/linux-4.1.27/arch/x86/lguest/ |
H A D | boot.c | 1378 [PARAVIRT_PATCH(pv_irq_ops.irq_disable)] = { lgstart_cli, lgend_cli }, 1379 [PARAVIRT_PATCH(pv_irq_ops.save_fl)] = { lgstart_pushf, lgend_pushf }, 1429 pv_irq_ops.save_fl = PV_CALLEE_SAVE(lguest_save_fl); lguest_init() 1430 pv_irq_ops.restore_fl = __PV_IS_CALLEE_SAVE(lg_restore_fl); lguest_init() 1431 pv_irq_ops.irq_disable = PV_CALLEE_SAVE(lguest_irq_disable); lguest_init() 1432 pv_irq_ops.irq_enable = __PV_IS_CALLEE_SAVE(lg_irq_enable); lguest_init() 1433 pv_irq_ops.safe_halt = lguest_safe_halt; lguest_init()
|