Linux Kernel
3.7.1
|
Go to the source code of this file.
Macros | |
#define | PATCH_SITE(ops, x) |
Functions | |
DEF_NATIVE (pv_irq_ops, irq_disable,"cli") | |
DEF_NATIVE (pv_irq_ops, irq_enable,"sti") | |
DEF_NATIVE (pv_irq_ops, restore_fl,"pushq %rdi; popfq") | |
DEF_NATIVE (pv_irq_ops, save_fl,"pushfq; popq %rax") | |
DEF_NATIVE (pv_cpu_ops, iret,"iretq") | |
DEF_NATIVE (pv_mmu_ops, read_cr2,"movq %cr2, %rax") | |
DEF_NATIVE (pv_mmu_ops, read_cr3,"movq %cr3, %rax") | |
DEF_NATIVE (pv_mmu_ops, write_cr3,"movq %rdi, %cr3") | |
DEF_NATIVE (pv_mmu_ops, flush_tlb_single,"invlpg (%rdi)") | |
DEF_NATIVE (pv_cpu_ops, clts,"clts") | |
DEF_NATIVE (pv_cpu_ops, wbinvd,"wbinvd") | |
DEF_NATIVE (pv_cpu_ops, irq_enable_sysexit,"swapgs; sti; sysexit") | |
DEF_NATIVE (pv_cpu_ops, usergs_sysret64,"swapgs; sysretq") | |
DEF_NATIVE (pv_cpu_ops, usergs_sysret32,"swapgs; sysretl") | |
DEF_NATIVE (pv_cpu_ops, swapgs,"swapgs") | |
DEF_NATIVE (, mov32,"mov %edi, %eax") | |
DEF_NATIVE (, mov64,"mov %rdi, %rax") | |
unsigned | paravirt_patch_ident_32 (void *insnbuf, unsigned len) |
unsigned | paravirt_patch_ident_64 (void *insnbuf, unsigned len) |
unsigned | native_patch (u8 type, u16 clobbers, void *ibuf, unsigned long addr, unsigned len) |
DEF_NATIVE | ( | pv_irq_ops | , |
irq_disable | , | ||
"cli" | |||
) |
DEF_NATIVE | ( | pv_irq_ops | , |
irq_enable | , | ||
"sti" | |||
) |
DEF_NATIVE | ( | pv_irq_ops | , |
restore_fl | , | ||
"pushq %rdi; popfq" | |||
) |
DEF_NATIVE | ( | pv_irq_ops | , |
save_fl | , | ||
"pushfq; popq %rax" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
iret | , | ||
"iretq" | |||
) |
DEF_NATIVE | ( | pv_mmu_ops | , |
read_cr2 | , | ||
"movq % | cr2, | ||
%rax" | |||
) |
DEF_NATIVE | ( | pv_mmu_ops | , |
read_cr3 | , | ||
"movq % | cr3, | ||
%rax" | |||
) |
DEF_NATIVE | ( | pv_mmu_ops | , |
write_cr3 | , | ||
"movq % | rdi, | ||
%cr3" | |||
) |
DEF_NATIVE | ( | pv_mmu_ops | , |
flush_tlb_single | , | ||
"invlpg (%rdi)" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
clts | , | ||
"clts" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
wbinvd | , | ||
"wbinvd" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
irq_enable_sysexit | , | ||
"swapgs; sti; sysexit" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
usergs_sysret64 | , | ||
"swapgs; sysretq" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
usergs_sysret32 | , | ||
"swapgs; sysretl" | |||
) |
DEF_NATIVE | ( | pv_cpu_ops | , |
swapgs | , | ||
"swapgs" | |||
) |
DEF_NATIVE | ( | mov32 | , |
"mov % | edi, | ||
%eax" | |||
) |
DEF_NATIVE | ( | mov64 | , |
"mov % | rdi, | ||
%rax" | |||
) |
Definition at line 37 of file paravirt_patch_64.c.
unsigned paravirt_patch_ident_32 | ( | void * | insnbuf, |
unsigned | len | ||
) |
Definition at line 25 of file paravirt_patch_64.c.
unsigned paravirt_patch_ident_64 | ( | void * | insnbuf, |
unsigned | len | ||
) |
Definition at line 31 of file paravirt_patch_64.c.