Go to the documentation of this file.
2 #ifndef _ASM_X86_LGUEST_HCALL_H
3 #define _ASM_X86_LGUEST_HCALL_H
5 #define LHCALL_FLUSH_ASYNC 0
6 #define LHCALL_LGUEST_INIT 1
7 #define LHCALL_SHUTDOWN 2
8 #define LHCALL_NEW_PGTABLE 4
9 #define LHCALL_FLUSH_TLB 5
10 #define LHCALL_LOAD_IDT_ENTRY 6
11 #define LHCALL_SET_STACK 7
13 #define LHCALL_SET_CLOCKEVENT 9
14 #define LHCALL_HALT 10
15 #define LHCALL_SET_PMD 13
16 #define LHCALL_SET_PTE 14
17 #define LHCALL_SET_PGD 15
18 #define LHCALL_LOAD_TLS 16
19 #define LHCALL_NOTIFY 17
20 #define LHCALL_LOAD_GDT_ENTRY 18
21 #define LHCALL_SEND_INTERRUPTS 19
23 #define LGUEST_TRAP_ENTRY 0x1F
26 #define LGUEST_SHUTDOWN_POWEROFF 1
27 #define LGUEST_SHUTDOWN_RESTART 2
30 #include <asm/hw_irq.h>
47 static inline unsigned long
48 hcall(
unsigned long call,
49 unsigned long arg1,
unsigned long arg2,
unsigned long arg3,
57 :
"a"(call),
"b"(
arg1),
"c"(arg2),
"d"(
arg3),
"S"(arg4)
67 #define LGUEST_IRQS (NR_IRQS < 32 ? NR_IRQS: 32)
69 #define LHCALL_RING_SIZE 64