#include <linux/compiler_types.h>
#include "x86.h"
Go to the source code of this file.
|
#define | svm_asm(insn, clobber...) |
|
#define | svm_asm1(insn, op1, clobber...) |
|
#define | svm_asm2(insn, op1, op2, clobber...) |
|
|
static void | clgi (void) |
|
static void | stgi (void) |
|
static void | invlpga (unsigned long addr, u32 asid) |
|
static __always_inline void | vmsave (unsigned long pa) |
|
◆ svm_asm
#define svm_asm |
( |
|
insn, |
|
|
|
clobber... |
|
) |
| |
Value:do { \
asm goto("1: " __stringify(insn) "\n\t" \
_ASM_EXTABLE(1b, %l[fault]) \
::: clobber : fault); \
return; \
fault: \
kvm_spurious_fault(); \
} while (0)
Definition at line 9 of file svm_ops.h.
◆ svm_asm1
#define svm_asm1 |
( |
|
insn, |
|
|
|
op1, |
|
|
|
clobber... |
|
) |
| |
Value:do { \
asm goto("1: " __stringify(insn) " %0\n\t" \
_ASM_EXTABLE(1b, %l[fault]) \
:: op1 : clobber : fault); \
return; \
fault: \
kvm_spurious_fault(); \
} while (0)
Definition at line 19 of file svm_ops.h.
◆ svm_asm2
#define svm_asm2 |
( |
|
insn, |
|
|
|
op1, |
|
|
|
op2, |
|
|
|
clobber... |
|
) |
| |
Value:do { \
asm goto("1: " __stringify(insn) " %1, %0\n\t" \
_ASM_EXTABLE(1b, %l[fault]) \
:: op1, op2 : clobber : fault); \
return; \
fault: \
kvm_spurious_fault(); \
} while (0)
Definition at line 29 of file svm_ops.h.
◆ clgi()
static void clgi |
( |
void |
| ) |
|
|
inlinestatic |
Definition at line 39 of file svm_ops.h.
#define svm_asm(insn, clobber...)
◆ invlpga()
static void invlpga |
( |
unsigned long |
addr, |
|
|
u32 |
asid |
|
) |
| |
|
inlinestatic |
Definition at line 49 of file svm_ops.h.
#define svm_asm2(insn, op1, op2, clobber...)
static void invlpga(unsigned long addr, u32 asid)
◆ stgi()
static void stgi |
( |
void |
| ) |
|
|
inlinestatic |
◆ vmsave()
static __always_inline void vmsave |
( |
unsigned long |
pa | ) |
|
|
static |
Definition at line 59 of file svm_ops.h.
static __always_inline void vmsave(unsigned long pa)
#define svm_asm1(insn, op1, clobber...)