����JFIF���������
__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* vmx.h: VMX Architecture related definitions
* Copyright (c) 2004, Intel Corporation.
*
* A few random additions are:
* Copyright (C) 2006 Qumranet
* Avi Kivity <avi@qumranet.com>
* Yaniv Kamay <yaniv@qumranet.com>
*/
#ifndef VMX_H
#define VMX_H
#include <linux/bitops.h>
#include <linux/bug.h>
#include <linux/types.h>
#include <uapi/asm/vmx.h>
#include <asm/vmxfeatures.h>
#define VMCS_CONTROL_BIT(x) BIT(VMX_FEATURE_##x & 0x1f)
/*
* Definitions of Primary Processor-Based VM-Execution Controls.
*/
#define CPU_BASED_INTR_WINDOW_EXITING VMCS_CONTROL_BIT(INTR_WINDOW_EXITING)
#define CPU_BASED_USE_TSC_OFFSETTING VMCS_CONTROL_BIT(USE_TSC_OFFSETTING)
#define CPU_BASED_HLT_EXITING VMCS_CONTROL_BIT(HLT_EXITING)
#define CPU_BASED_INVLPG_EXITING VMCS_CONTROL_BIT(INVLPG_EXITING)
#define CPU_BASED_MWAIT_EXITING VMCS_CONTROL_BIT(MWAIT_EXITING)
#define CPU_BASED_RDPMC_EXITING VMCS_CONTROL_BIT(RDPMC_EXITING)
#define CPU_BASED_RDTSC_EXITING VMCS_CONTROL_BIT(RDTSC_EXITING)
#define CPU_BASED_CR3_LOAD_EXITING VMCS_CONTROL_BIT(CR3_LOAD_EXITING)
#define CPU_BASED_CR3_STORE_EXITING VMCS_CONTROL_BIT(CR3_STORE_EXITING)
#define CPU_BASED_ACTIVATE_TERTIARY_CONTROLS VMCS_CONTROL_BIT(TERTIARY_CONTROLS)
#define CPU_BASED_CR8_LOAD_EXITING VMCS_CONTROL_BIT(CR8_LOAD_EXITING)
#define CPU_BASED_CR8_STORE_EXITING VMCS_CONTROL_BIT(CR8_STORE_EXITING)
#define CPU_BASED_TPR_SHADOW VMCS_CONTROL_BIT(VIRTUAL_TPR)
#define CPU_BASED_NMI_WINDOW_EXITING VMCS_CONTROL_BIT(NMI_WINDOW_EXITING)
#define CPU_BASED_MOV_DR_EXITING VMCS_CONTROL_BIT(MOV_DR_EXITING)
#define CPU_BASED_UNCOND_IO_EXITING VMCS_CONTROL_BIT(UNCOND_IO_EXITING)
#define CPU_BASED_USE_IO_BITMAPS VMCS_CONTROL_BIT(USE_IO_BITMAPS)
#define CPU_BASED_MONITOR_TRAP_FLAG VMCS_CONTROL_BIT(MONITOR_TRAP_FLAG)
#define CPU_BASED_USE_MSR_BITMAPS VMCS_CONTROL_BIT(USE_MSR_BITMAPS)
#define CPU_BASED_MONITOR_EXITING VMCS_CONTROL_BIT(MONITOR_EXITING)
#define CPU_BASED_PAUSE_EXITING VMCS_CONTROL_BIT(PAUSE_EXITING)
#define CPU_BASED_ACTIVATE_SECONDARY_CONTROLS VMCS_CONTROL_BIT(SEC_CONTROLS)
#define CPU_BASED_ALWAYSON_WITHOUT_TRUE_MSR 0x0401e172
/*
* Definitions of Secondary Processor-Based VM-Execution Controls.
*/
#define SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES VMCS_CONTROL_BIT(VIRT_APIC_ACCESSES)
#define SECONDARY_EXEC_ENABLE_EPT VMCS_CONTROL_BIT(EPT)
#define SECONDARY_EXEC_DESC VMCS_CONTROL_BIT(DESC_EXITING)
#define SECONDARY_EXEC_ENABLE_RDTSCP VMCS_CONTROL_BIT(RDTSCP)
#define SECONDARY_EXEC_VIRTUALIZE_X2APIC_MODE VMCS_CONTROL_BIT(VIRTUAL_X2APIC)
#define SECONDARY_EXEC_ENABLE_VPID VMCS_CONTROL_BIT(VPID)
#define SECONDARY_EXEC_WBINVD_EXITING VMCS_CONTROL_BIT(WBINVD_EXITING)
#define SECONDARY_EXEC_UNRESTRICTED_GUEST VMCS_CONTROL_BIT(UNRESTRICTED_GUEST)
#define SECONDARY_EXEC_APIC_REGISTER_VIRT VMCS_CONTROL_BIT(APIC_REGISTER_VIRT)
#define SECONDARY_EXEC_VIRTUAL_INTR_DELIVERY VMCS_CONTROL_BIT(VIRT_INTR_DELIVERY)
#define SECONDARY_EXEC_PAUSE_LOOP_EXITING VMCS_CONTROL_BIT(PAUSE_LOOP_EXITING)
#define SECONDARY_EXEC_RDRAND_EXITING VMCS_CONTROL_BIT(RDRAND_EXITING)
#define SECONDARY_EXEC_ENABLE_INVPCID VMCS_CONTROL_BIT(INVPCID)
#define SECONDARY_EXEC_ENABLE_VMFUNC VMCS_CONTROL_BIT(VMFUNC)
#define SECONDARY_EXEC_SHADOW_VMCS VMCS_CONTROL_BIT(SHADOW_VMCS)
#define SECONDARY_EXEC_ENCLS_EXITING VMCS_CONTROL_BIT(ENCLS_EXITING)
#define SECONDARY_EXEC_RDSEED_EXITING VMCS_CONTROL_BIT(RDSEED_EXITING)
#define SECONDARY_EXEC_ENABLE_PML VMCS_CONTROL_BIT(PAGE_MOD_LOGGING)
#define SECONDARY_EXEC_EPT_VIOLATION_VE VMCS_CONTROL_BIT(EPT_VIOLATION_VE)
#define SECONDARY_EXEC_PT_CONCEAL_VMX VMCS_CONTROL_BIT(PT_CONCEAL_VMX)
#define SECONDARY_EXEC_ENABLE_XSAVES VMCS_CONTROL_BIT(XSAVES)
#define SECONDARY_EXEC_MODE_BASED_EPT_EXEC VMCS_CONTROL_BIT(MODE_BASED_EPT_EXEC)
#define SECONDARY_EXEC_PT_USE_GPA VMCS_CONTROL_BIT(PT_USE_GPA)
#define SECONDARY_EXEC_TSC_SCALING VMCS_CONTROL_BIT(TSC_SCALING)
#define SECONDARY_EXEC_ENABLE_USR_WAIT_PAUSE VMCS_CONTROL_BIT(USR_WAIT_PAUSE)
#define SECONDARY_EXEC_BUS_LOCK_DETECTION VMCS_CONTROL_BIT(BUS_LOCK_DETECTION)
#define SECONDARY_EXEC_NOTIFY_VM_EXITING VMCS_CONTROL_BIT(NOTIFY_VM_EXITING)
/*
* Definitions of Tertiary Processor-Based VM-Execution Controls.
*/
#define TERTIARY_EXEC_IPI_VIRT VMCS_CONTROL_BIT(IPI_VIRT)
#define PIN_BASED_EXT_INTR_MASK VMCS_CONTROL_BIT(INTR_EXITING)
#define PIN_BASED_NMI_EXITING VMCS_CONTROL_BIT(NMI_EXITING)
#define PIN_BASED_VIRTUAL_NMIS VMCS_CONTROL_BIT(VIRTUAL_NMIS)
#define PIN_BASED_VMX_PREEMPTION_TIMER VMCS_CONTROL_BIT(PREEMPTION_TIMER)
#define PIN_BASED_POSTED_INTR VMCS_CONTROL_BIT(POSTED_INTR)
#define PIN_BASED_ALWAYSON_WITHOUT_TRUE_MSR 0x00000016
#define VM_EXIT_SAVE_DEBUG_CONTROLS 0x00000004
#define VM_EXIT_HOST_ADDR_SPACE_SIZE 0x00000200
#define VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL 0x00001000
#define VM_EXIT_ACK_INTR_ON_EXIT 0x00008000
#define VM_EXIT_SAVE_IA32_PAT 0x00040000
#define VM_EXIT_LOAD_IA32_PAT 0x00080000
#define VM_EXIT_SAVE_IA32_EFER 0x00100000
#define VM_EXIT_LOAD_IA32_EFER 0x00200000
#define VM_EXIT_SAVE_VMX_PREEMPTION_TIMER 0x00400000
#define VM_EXIT_CLEAR_BNDCFGS 0x00800000
#define VM_EXIT_PT_CONCEAL_PIP 0x01000000
#define VM_EXIT_CLEAR_IA32_RTIT_CTL 0x02000000
#define VM_EXIT_ALWAYSON_WITHOUT_TRUE_MSR 0x00036dff
#define VM_ENTRY_LOAD_DEBUG_CONTROLS 0x00000004
#define VM_ENTRY_IA32E_MODE 0x00000200
#define VM_ENTRY_SMM 0x00000400
#define VM_ENTRY_DEACT_DUAL_MONITOR 0x00000800
#define VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL 0x00002000
#define VM_ENTRY_LOAD_IA32_PAT 0x00004000
#define VM_ENTRY_LOAD_IA32_EFER 0x00008000
#define VM_ENTRY_LOAD_BNDCFGS 0x00010000
#define VM_ENTRY_PT_CONCEAL_PIP 0x00020000
#define VM_ENTRY_LOAD_IA32_RTIT_CTL 0x00040000
#define VM_ENTRY_ALWAYSON_WITHOUT_TRUE_MSR 0x000011ff
#define VMX_MISC_PREEMPTION_TIMER_RATE_MASK 0x0000001f
#define VMX_MISC_SAVE_EFER_LMA 0x00000020
#define VMX_MISC_ACTIVITY_HLT 0x00000040
#define VMX_MISC_ACTIVITY_WAIT_SIPI 0x00000100
#define VMX_MISC_ZERO_LEN_INS 0x40000000
#define VMX_MISC_MSR_LIST_MULTIPLIER 512
/* VMFUNC functions */
#define VMFUNC_CONTROL_BIT(x) BIT((VMX_FEATURE_##x & 0x1f) - 28)
#define VMX_VMFUNC_EPTP_SWITCHING VMFUNC_CONTROL_BIT(EPTP_SWITCHING)
#define VMFUNC_EPTP_ENTRIES 512
static inline u32 vmx_basic_vmcs_revision_id(u64 vmx_basic)
{
return vmx_basic & GENMASK_ULL(30, 0);
}
static inline u32 vmx_basic_vmcs_size(u64 vmx_basic)
{
return (vmx_basic & GENMASK_ULL(44, 32)) >> 32;
}
static inline int vmx_misc_preemption_timer_rate(u64 vmx_misc)
{
return vmx_misc & VMX_MISC_PREEMPTION_TIMER_RATE_MASK;
}
static inline int vmx_misc_cr3_count(u64 vmx_misc)
{
return (vmx_misc & GENMASK_ULL(24, 16)) >> 16;
}
static inline int vmx_misc_max_msr(u64 vmx_misc)
{
return (vmx_misc & GENMASK_ULL(27, 25)) >> 25;
}
static inline int vmx_misc_mseg_revid(u64 vmx_misc)
{
return (vmx_misc & GENMASK_ULL(63, 32)) >> 32;
}
/* VMCS Encodings */
enum vmcs_field {
VIRTUAL_PROCESSOR_ID = 0x00000000,
POSTED_INTR_NV = 0x00000002,
LAST_PID_POINTER_INDEX = 0x00000008,
GUEST_ES_SELECTOR = 0x00000800,
GUEST_CS_SELECTOR = 0x00000802,
GUEST_SS_SELECTOR = 0x00000804,
GUEST_DS_SELECTOR = 0x00000806,
GUEST_FS_SELECTOR = 0x00000808,
GUEST_GS_SELECTOR = 0x0000080a,
GUEST_LDTR_SELECTOR = 0x0000080c,
GUEST_TR_SELECTOR = 0x0000080e,
GUEST_INTR_STATUS = 0x00000810,
GUEST_PML_INDEX = 0x00000812,
HOST_ES_SELECTOR = 0x00000c00,
HOST_CS_SELECTOR = 0x00000c02,
HOST_SS_SELECTOR = 0x00000c04,
HOST_DS_SELECTOR = 0x00000c06,
HOST_FS_SELECTOR = 0x00000c08,
HOST_GS_SELECTOR = 0x00000c0a,
HOST_TR_SELECTOR = 0x00000c0c,
IO_BITMAP_A = 0x00002000,
IO_BITMAP_A_HIGH = 0x00002001,
IO_BITMAP_B = 0x00002002,
IO_BITMAP_B_HIGH = 0x00002003,
MSR_BITMAP = 0x00002004,
MSR_BITMAP_HIGH = 0x00002005,
VM_EXIT_MSR_STORE_ADDR = 0x00002006,
VM_EXIT_MSR_STORE_ADDR_HIGH = 0x00002007,
VM_EXIT_MSR_LOAD_ADDR = 0x00002008,
VM_EXIT_MSR_LOAD_ADDR_HIGH = 0x00002009,
VM_ENTRY_MSR_LOAD_ADDR = 0x0000200a,
VM_ENTRY_MSR_LOAD_ADDR_HIGH = 0x0000200b,
PML_ADDRESS = 0x0000200e,
PML_ADDRESS_HIGH = 0x0000200f,
TSC_OFFSET = 0x00002010,
TSC_OFFSET_HIGH = 0x00002011,
VIRTUAL_APIC_PAGE_ADDR = 0x00002012,
VIRTUAL_APIC_PAGE_ADDR_HIGH = 0x00002013,
APIC_ACCESS_ADDR = 0x00002014,
APIC_ACCESS_ADDR_HIGH = 0x00002015,
POSTED_INTR_DESC_ADDR = 0x00002016,
POSTED_INTR_DESC_ADDR_HIGH = 0x00002017,
VM_FUNCTION_CONTROL = 0x00002018,
VM_FUNCTION_CONTROL_HIGH = 0x00002019,
EPT_POINTER = 0x0000201a,
EPT_POINTER_HIGH = 0x0000201b,
EOI_EXIT_BITMAP0 = 0x0000201c,
EOI_EXIT_BITMAP0_HIGH = 0x0000201d,
EOI_EXIT_BITMAP1 = 0x0000201e,
EOI_EXIT_BITMAP1_HIGH = 0x0000201f,
EOI_EXIT_BITMAP2 = 0x00002020,
EOI_EXIT_BITMAP2_HIGH = 0x00002021,
EOI_EXIT_BITMAP3 = 0x00002022,
EOI_EXIT_BITMAP3_HIGH = 0x00002023,
EPTP_LIST_ADDRESS = 0x00002024,
EPTP_LIST_ADDRESS_HIGH = 0x00002025,
VMREAD_BITMAP = 0x00002026,
VMREAD_BITMAP_HIGH = 0x00002027,
VMWRITE_BITMAP = 0x00002028,
VMWRITE_BITMAP_HIGH = 0x00002029,
VE_INFORMATION_ADDRESS = 0x0000202A,
VE_INFORMATION_ADDRESS_HIGH = 0x0000202B,
XSS_EXIT_BITMAP = 0x0000202C,
XSS_EXIT_BITMAP_HIGH = 0x0000202D,
ENCLS_EXITING_BITMAP = 0x0000202E,
ENCLS_EXITING_BITMAP_HIGH = 0x0000202F,
TSC_MULTIPLIER = 0x00002032,
TSC_MULTIPLIER_HIGH = 0x00002033,
TERTIARY_VM_EXEC_CONTROL = 0x00002034,
TERTIARY_VM_EXEC_CONTROL_HIGH = 0x00002035,
SHARED_EPT_POINTER = 0x0000203C,
PID_POINTER_TABLE = 0x00002042,
PID_POINTER_TABLE_HIGH = 0x00002043,
GUEST_PHYSICAL_ADDRESS = 0x00002400,
GUEST_PHYSICAL_ADDRESS_HIGH = 0x00002401,
VMCS_LINK_POINTER = 0x00002800,
VMCS_LINK_POINTER_HIGH = 0x00002801,
GUEST_IA32_DEBUGCTL = 0x00002802,
GUEST_IA32_DEBUGCTL_HIGH = 0x00002803,
GUEST_IA32_PAT = 0x00002804,
GUEST_IA32_PAT_HIGH = 0x00002805,
GUEST_IA32_EFER = 0x00002806,
GUEST_IA32_EFER_HIGH = 0x00002807,
GUEST_IA32_PERF_GLOBAL_CTRL = 0x00002808,
GUEST_IA32_PERF_GLOBAL_CTRL_HIGH= 0x00002809,
GUEST_PDPTR0 = 0x0000280a,
GUEST_PDPTR0_HIGH = 0x0000280b,
GUEST_PDPTR1 = 0x0000280c,
GUEST_PDPTR1_HIGH = 0x0000280d,
GUEST_PDPTR2 = 0x0000280e,
GUEST_PDPTR2_HIGH = 0x0000280f,
GUEST_PDPTR3 = 0x00002810,
GUEST_PDPTR3_HIGH = 0x00002811,
GUEST_BNDCFGS = 0x00002812,
GUEST_BNDCFGS_HIGH = 0x00002813,
GUEST_IA32_RTIT_CTL = 0x00002814,
GUEST_IA32_RTIT_CTL_HIGH = 0x00002815,
HOST_IA32_PAT = 0x00002c00,
HOST_IA32_PAT_HIGH = 0x00002c01,
HOST_IA32_EFER = 0x00002c02,
HOST_IA32_EFER_HIGH = 0x00002c03,
HOST_IA32_PERF_GLOBAL_CTRL = 0x00002c04,
HOST_IA32_PERF_GLOBAL_CTRL_HIGH = 0x00002c05,
PIN_BASED_VM_EXEC_CONTROL = 0x00004000,
CPU_BASED_VM_EXEC_CONTROL = 0x00004002,
EXCEPTION_BITMAP = 0x00004004,
PAGE_FAULT_ERROR_CODE_MASK = 0x00004006,
PAGE_FAULT_ERROR_CODE_MATCH = 0x00004008,
CR3_TARGET_COUNT = 0x0000400a,
VM_EXIT_CONTROLS = 0x0000400c,
VM_EXIT_MSR_STORE_COUNT = 0x0000400e,
VM_EXIT_MSR_LOAD_COUNT = 0x00004010,
VM_ENTRY_CONTROLS = 0x00004012,
VM_ENTRY_MSR_LOAD_COUNT = 0x00004014,
VM_ENTRY_INTR_INFO_FIELD = 0x00004016,
VM_ENTRY_EXCEPTION_ERROR_CODE = 0x00004018,
VM_ENTRY_INSTRUCTION_LEN = 0x0000401a,
TPR_THRESHOLD = 0x0000401c,
SECONDARY_VM_EXEC_CONTROL = 0x0000401e,
PLE_GAP = 0x00004020,
PLE_WINDOW = 0x00004022,
NOTIFY_WINDOW = 0x00004024,
VM_INSTRUCTION_ERROR = 0x00004400,
VM_EXIT_REASON = 0x00004402,
VM_EXIT_INTR_INFO = 0x00004404,
VM_EXIT_INTR_ERROR_CODE = 0x00004406,
IDT_VECTORING_INFO_FIELD = 0x00004408,
IDT_VECTORING_ERROR_CODE = 0x0000440a,
VM_EXIT_INSTRUCTION_LEN = 0x0000440c,
VMX_INSTRUCTION_INFO = 0x0000440e,
GUEST_ES_LIMIT = 0x00004800,
GUEST_CS_LIMIT = 0x00004802,
GUEST_SS_LIMIT = 0x00004804,
GUEST_DS_LIMIT = 0x00004806,
GUEST_FS_LIMIT = 0x00004808,
GUEST_GS_LIMIT = 0x0000480a,
GUEST_LDTR_LIMIT = 0x0000480c,
GUEST_TR_LIMIT = 0x0000480e,
GUEST_GDTR_LIMIT = 0x00004810,
GUEST_IDTR_LIMIT = 0x00004812,
GUEST_ES_AR_BYTES = 0x00004814,
GUEST_CS_AR_BYTES = 0x00004816,
GUEST_SS_AR_BYTES = 0x00004818,
GUEST_DS_AR_BYTES = 0x0000481a,
GUEST_FS_AR_BYTES = 0x0000481c,
GUEST_GS_AR_BYTES = 0x0000481e,
GUEST_LDTR_AR_BYTES = 0x00004820,
GUEST_TR_AR_BYTES = 0x00004822,
GUEST_INTERRUPTIBILITY_INFO = 0x00004824,
GUEST_ACTIVITY_STATE = 0x00004826,
GUEST_SYSENTER_CS = 0x0000482A,
VMX_PREEMPTION_TIMER_VALUE = 0x0000482E,
HOST_IA32_SYSENTER_CS = 0x00004c00,
CR0_GUEST_HOST_MASK = 0x00006000,
CR4_GUEST_HOST_MASK = 0x00006002,
CR0_READ_SHADOW = 0x00006004,
CR4_READ_SHADOW = 0x00006006,
CR3_TARGET_VALUE0 = 0x00006008,
CR3_TARGET_VALUE1 = 0x0000600a,
CR3_TARGET_VALUE2 = 0x0000600c,
CR3_TARGET_VALUE3 = 0x0000600e,
EXIT_QUALIFICATION = 0x00006400,
GUEST_LINEAR_ADDRESS = 0x0000640a,
GUEST_CR0 = 0x00006800,
GUEST_CR3 = 0x00006802,
GUEST_CR4 = 0x00006804,
GUEST_ES_BASE = 0x00006806,
GUEST_CS_BASE = 0x00006808,
GUEST_SS_BASE = 0x0000680a,
GUEST_DS_BASE = 0x0000680c,
GUEST_FS_BASE = 0x0000680e,
GUEST_GS_BASE = 0x00006810,
GUEST_LDTR_BASE = 0x00006812,
GUEST_TR_BASE = 0x00006814,
GUEST_GDTR_BASE = 0x00006816,
GUEST_IDTR_BASE = 0x00006818,
GUEST_DR7 = 0x0000681a,
GUEST_RSP = 0x0000681c,
GUEST_RIP = 0x0000681e,
GUEST_RFLAGS = 0x00006820,
GUEST_PENDING_DBG_EXCEPTIONS = 0x00006822,
GUEST_SYSENTER_ESP = 0x00006824,
GUEST_SYSENTER_EIP = 0x00006826,
HOST_CR0 = 0x00006c00,
HOST_CR3 = 0x00006c02,
HOST_CR4 = 0x00006c04,
HOST_FS_BASE = 0x00006c06,
HOST_GS_BASE = 0x00006c08,
HOST_TR_BASE = 0x00006c0a,
HOST_GDTR_BASE = 0x00006c0c,
HOST_IDTR_BASE = 0x00006c0e,
HOST_IA32_SYSENTER_ESP = 0x00006c10,
HOST_IA32_SYSENTER_EIP = 0x00006c12,
HOST_RSP = 0x00006c14,
HOST_RIP = 0x00006c16,
};
/*
* Interruption-information format
*/
#define INTR_INFO_VECTOR_MASK 0xff /* 7:0 */
#define INTR_INFO_INTR_TYPE_MASK 0x700 /* 10:8 */
#define INTR_INFO_DELIVER_CODE_MASK 0x800 /* 11 */
#define INTR_INFO_UNBLOCK_NMI 0x1000 /* 12 */
#define INTR_INFO_VALID_MASK 0x80000000 /* 31 */
#define INTR_INFO_RESVD_BITS_MASK 0x7ffff000
#define VECTORING_INFO_VECTOR_MASK INTR_INFO_VECTOR_MASK
#define VECTORING_INFO_TYPE_MASK INTR_INFO_INTR_TYPE_MASK
#define VECTORING_INFO_DELIVER_CODE_MASK INTR_INFO_DELIVER_CODE_MASK
#define VECTORING_INFO_VALID_MASK INTR_INFO_VALID_MASK
#define INTR_TYPE_EXT_INTR (0 << 8) /* external interrupt */
#define INTR_TYPE_RESERVED (1 << 8) /* reserved */
#define INTR_TYPE_NMI_INTR (2 << 8) /* NMI */
#define INTR_TYPE_HARD_EXCEPTION (3 << 8) /* processor exception */
#define INTR_TYPE_SOFT_INTR (4 << 8) /* software interrupt */
#define INTR_TYPE_PRIV_SW_EXCEPTION (5 << 8) /* ICE breakpoint - undocumented */
#define INTR_TYPE_SOFT_EXCEPTION (6 << 8) /* software exception */
#define INTR_TYPE_OTHER_EVENT (7 << 8) /* other event */
/* GUEST_INTERRUPTIBILITY_INFO flags. */
#define GUEST_INTR_STATE_STI 0x00000001
#define GUEST_INTR_STATE_MOV_SS 0x00000002
#define GUEST_INTR_STATE_SMI 0x00000004
#define GUEST_INTR_STATE_NMI 0x00000008
#define GUEST_INTR_STATE_ENCLAVE_INTR 0x00000010
/* GUEST_ACTIVITY_STATE flags */
#define GUEST_ACTIVITY_ACTIVE 0
#define GUEST_ACTIVITY_HLT 1
#define GUEST_ACTIVITY_SHUTDOWN 2
#define GUEST_ACTIVITY_WAIT_SIPI 3
/*
* Exit Qualifications for MOV for Control Register Access
*/
#define CONTROL_REG_ACCESS_NUM 0x7 /* 2:0, number of control reg.*/
#define CONTROL_REG_ACCESS_TYPE 0x30 /* 5:4, access type */
#define CONTROL_REG_ACCESS_REG 0xf00 /* 10:8, general purpose reg. */
#define LMSW_SOURCE_DATA_SHIFT 16
#define LMSW_SOURCE_DATA (0xFFFF << LMSW_SOURCE_DATA_SHIFT) /* 16:31 lmsw source */
#define REG_EAX (0 << 8)
#define REG_ECX (1 << 8)
#define REG_EDX (2 << 8)
#define REG_EBX (3 << 8)
#define REG_ESP (4 << 8)
#define REG_EBP (5 << 8)
#define REG_ESI (6 << 8)
#define REG_EDI (7 << 8)
#define REG_R8 (8 << 8)
#define REG_R9 (9 << 8)
#define REG_R10 (10 << 8)
#define REG_R11 (11 << 8)
#define REG_R12 (12 << 8)
#define REG_R13 (13 << 8)
#define REG_R14 (14 << 8)
#define REG_R15 (15 << 8)
/*
* Exit Qualifications for MOV for Debug Register Access
*/
#define DEBUG_REG_ACCESS_NUM 0x7 /* 2:0, number of debug reg. */
#define DEBUG_REG_ACCESS_TYPE 0x10 /* 4, direction of access */
#define TYPE_MOV_TO_DR (0 << 4)
#define TYPE_MOV_FROM_DR (1 << 4)
#define DEBUG_REG_ACCESS_REG(eq) (((eq) >> 8) & 0xf) /* 11:8, general purpose reg. */
/*
* Exit Qualifications for APIC-Access
*/
#define APIC_ACCESS_OFFSET 0xfff /* 11:0, offset within the APIC page */
#define APIC_ACCESS_TYPE 0xf000 /* 15:12, access type */
#define TYPE_LINEAR_APIC_INST_READ (0 << 12)
#define TYPE_LINEAR_APIC_INST_WRITE (1 << 12)
#define TYPE_LINEAR_APIC_INST_FETCH (2 << 12)
#define TYPE_LINEAR_APIC_EVENT (3 << 12)
#define TYPE_PHYSICAL_APIC_EVENT (10 << 12)
#define TYPE_PHYSICAL_APIC_INST (15 << 12)
/* segment AR in VMCS -- these are different from what LAR reports */
#define VMX_SEGMENT_AR_L_MASK (1 << 13)
#define VMX_AR_TYPE_ACCESSES_MASK 1
#define VMX_AR_TYPE_READABLE_MASK (1 << 1)
#define VMX_AR_TYPE_WRITEABLE_MASK (1 << 2)
#define VMX_AR_TYPE_CODE_MASK (1 << 3)
#define VMX_AR_TYPE_MASK 0x0f
#define VMX_AR_TYPE_BUSY_64_TSS 11
#define VMX_AR_TYPE_BUSY_32_TSS 11
#define VMX_AR_TYPE_BUSY_16_TSS 3
#define VMX_AR_TYPE_LDT 2
#define VMX_AR_UNUSABLE_MASK (1 << 16)
#define VMX_AR_S_MASK (1 << 4)
#define VMX_AR_P_MASK (1 << 7)
#define VMX_AR_L_MASK (1 << 13)
#define VMX_AR_DB_MASK (1 << 14)
#define VMX_AR_G_MASK (1 << 15)
#define VMX_AR_DPL_SHIFT 5
#define VMX_AR_DPL(ar) (((ar) >> VMX_AR_DPL_SHIFT) & 3)
#define VMX_AR_RESERVD_MASK 0xfffe0f00
#define TSS_PRIVATE_MEMSLOT (KVM_USER_MEM_SLOTS + 0)
#define APIC_ACCESS_PAGE_PRIVATE_MEMSLOT (KVM_USER_MEM_SLOTS + 1)
#define IDENTITY_PAGETABLE_PRIVATE_MEMSLOT (KVM_USER_MEM_SLOTS + 2)
#define VMX_NR_VPIDS (1 << 16)
#define VMX_VPID_EXTENT_INDIVIDUAL_ADDR 0
#define VMX_VPID_EXTENT_SINGLE_CONTEXT 1
#define VMX_VPID_EXTENT_ALL_CONTEXT 2
#define VMX_VPID_EXTENT_SINGLE_NON_GLOBAL 3
#define VMX_EPT_EXTENT_CONTEXT 1
#define VMX_EPT_EXTENT_GLOBAL 2
#define VMX_EPT_EXTENT_SHIFT 24
#define VMX_EPT_EXECUTE_ONLY_BIT (1ull)
#define VMX_EPT_PAGE_WALK_4_BIT (1ull << 6)
#define VMX_EPT_PAGE_WALK_5_BIT (1ull << 7)
#define VMX_EPTP_UC_BIT (1ull << 8)
#define VMX_EPTP_WB_BIT (1ull << 14)
#define VMX_EPT_2MB_PAGE_BIT (1ull << 16)
#define VMX_EPT_1GB_PAGE_BIT (1ull << 17)
#define VMX_EPT_INVEPT_BIT (1ull << 20)
#define VMX_EPT_AD_BIT (1ull << 21)
#define VMX_EPT_EXTENT_CONTEXT_BIT (1ull << 25)
#define VMX_EPT_EXTENT_GLOBAL_BIT (1ull << 26)
#define VMX_VPID_INVVPID_BIT (1ull << 0) /* (32 - 32) */
#define VMX_VPID_EXTENT_INDIVIDUAL_ADDR_BIT (1ull << 8) /* (40 - 32) */
#define VMX_VPID_EXTENT_SINGLE_CONTEXT_BIT (1ull << 9) /* (41 - 32) */
#define VMX_VPID_EXTENT_GLOBAL_CONTEXT_BIT (1ull << 10) /* (42 - 32) */
#define VMX_VPID_EXTENT_SINGLE_NON_GLOBAL_BIT (1ull << 11) /* (43 - 32) */
#define VMX_EPT_MT_EPTE_SHIFT 3
#define VMX_EPTP_PWL_MASK 0x38ull
#define VMX_EPTP_PWL_4 0x18ull
#define VMX_EPTP_PWL_5 0x20ull
#define VMX_EPTP_AD_ENABLE_BIT (1ull << 6)
#define VMX_EPTP_MT_MASK 0x7ull
#define VMX_EPTP_MT_WB 0x6ull
#define VMX_EPTP_MT_UC 0x0ull
#define VMX_EPT_READABLE_MASK 0x1ull
#define VMX_EPT_WRITABLE_MASK 0x2ull
#define VMX_EPT_EXECUTABLE_MASK 0x4ull
#define VMX_EPT_IPAT_BIT (1ull << 6)
#define VMX_EPT_ACCESS_BIT (1ull << 8)
#define VMX_EPT_DIRTY_BIT (1ull << 9)
#define VMX_EPT_SUPPRESS_VE_BIT (1ull << 63)
#define VMX_EPT_RWX_MASK (VMX_EPT_READABLE_MASK | \
VMX_EPT_WRITABLE_MASK | \
VMX_EPT_EXECUTABLE_MASK)
#define VMX_EPT_MT_MASK (7ull << VMX_EPT_MT_EPTE_SHIFT)
static inline u8 vmx_eptp_page_walk_level(u64 eptp)
{
u64 encoded_level = eptp & VMX_EPTP_PWL_MASK;
if (encoded_level == VMX_EPTP_PWL_5)
return 5;
/* @eptp must be pre-validated by the caller. */
WARN_ON_ONCE(encoded_level != VMX_EPTP_PWL_4);
return 4;
}
/* The mask to use to trigger an EPT Misconfiguration in order to track MMIO */
#define VMX_EPT_MISCONFIG_WX_VALUE (VMX_EPT_WRITABLE_MASK | \
VMX_EPT_EXECUTABLE_MASK)
#define VMX_EPT_IDENTITY_PAGETABLE_ADDR 0xfffbc000ul
struct vmx_msr_entry {
u32 index;
u32 reserved;
u64 value;
} __aligned(16);
/*
* Exit Qualifications for entry failure during or after loading guest state
*/
enum vm_entry_failure_code {
ENTRY_FAIL_DEFAULT = 0,
ENTRY_FAIL_PDPTE = 2,
ENTRY_FAIL_NMI = 3,
ENTRY_FAIL_VMCS_LINK_PTR = 4,
};
/*
* Exit Qualifications for EPT Violations
*/
#define EPT_VIOLATION_ACC_READ_BIT 0
#define EPT_VIOLATION_ACC_WRITE_BIT 1
#define EPT_VIOLATION_ACC_INSTR_BIT 2
#define EPT_VIOLATION_RWX_SHIFT 3
#define EPT_VIOLATION_EXEC_R3_LIN_BIT 6
#define EPT_VIOLATION_GVA_IS_VALID_BIT 7
#define EPT_VIOLATION_GVA_TRANSLATED_BIT 8
#define EPT_VIOLATION_ACC_READ (1 << EPT_VIOLATION_ACC_READ_BIT)
#define EPT_VIOLATION_ACC_WRITE (1 << EPT_VIOLATION_ACC_WRITE_BIT)
#define EPT_VIOLATION_ACC_INSTR (1 << EPT_VIOLATION_ACC_INSTR_BIT)
#define EPT_VIOLATION_RWX_MASK (VMX_EPT_RWX_MASK << EPT_VIOLATION_RWX_SHIFT)
#define EPT_VIOLATION_EXEC_FOR_RING3_LIN (1 << EPT_VIOLATION_EXEC_R3_LIN_BIT)
#define EPT_VIOLATION_GVA_IS_VALID (1 << EPT_VIOLATION_GVA_IS_VALID_BIT)
#define EPT_VIOLATION_GVA_TRANSLATED (1 << EPT_VIOLATION_GVA_TRANSLATED_BIT)
/*
* Exit Qualifications for NOTIFY VM EXIT
*/
#define NOTIFY_VM_CONTEXT_INVALID BIT(0)
/*
* VM-instruction error numbers
*/
enum vm_instruction_error_number {
VMXERR_VMCALL_IN_VMX_ROOT_OPERATION = 1,
VMXERR_VMCLEAR_INVALID_ADDRESS = 2,
VMXERR_VMCLEAR_VMXON_POINTER = 3,
VMXERR_VMLAUNCH_NONCLEAR_VMCS = 4,
VMXERR_VMRESUME_NONLAUNCHED_VMCS = 5,
VMXERR_VMRESUME_AFTER_VMXOFF = 6,
VMXERR_ENTRY_INVALID_CONTROL_FIELD = 7,
VMXERR_ENTRY_INVALID_HOST_STATE_FIELD = 8,
VMXERR_VMPTRLD_INVALID_ADDRESS = 9,
VMXERR_VMPTRLD_VMXON_POINTER = 10,
VMXERR_VMPTRLD_INCORRECT_VMCS_REVISION_ID = 11,
VMXERR_UNSUPPORTED_VMCS_COMPONENT = 12,
VMXERR_VMWRITE_READ_ONLY_VMCS_COMPONENT = 13,
VMXERR_VMXON_IN_VMX_ROOT_OPERATION = 15,
VMXERR_ENTRY_INVALID_EXECUTIVE_VMCS_POINTER = 16,
VMXERR_ENTRY_NONLAUNCHED_EXECUTIVE_VMCS = 17,
VMXERR_ENTRY_EXECUTIVE_VMCS_POINTER_NOT_VMXON_POINTER = 18,
VMXERR_VMCALL_NONCLEAR_VMCS = 19,
VMXERR_VMCALL_INVALID_VM_EXIT_CONTROL_FIELDS = 20,
VMXERR_VMCALL_INCORRECT_MSEG_REVISION_ID = 22,
VMXERR_VMXOFF_UNDER_DUAL_MONITOR_TREATMENT_OF_SMIS_AND_SMM = 23,
VMXERR_VMCALL_INVALID_SMM_MONITOR_FEATURES = 24,
VMXERR_ENTRY_INVALID_VM_EXECUTION_CONTROL_FIELDS_IN_EXECUTIVE_VMCS = 25,
VMXERR_ENTRY_EVENTS_BLOCKED_BY_MOV_SS = 26,
VMXERR_INVALID_OPERAND_TO_INVEPT_INVVPID = 28,
};
/*
* VM-instruction errors that can be encountered on VM-Enter, used to trace
* nested VM-Enter failures reported by hardware. Errors unique to VM-Enter
* from a SMI Transfer Monitor are not included as things have gone seriously
* sideways if we get one of those...
*/
#define VMX_VMENTER_INSTRUCTION_ERRORS \
{ VMXERR_VMLAUNCH_NONCLEAR_VMCS, "VMLAUNCH_NONCLEAR_VMCS" }, \
{ VMXERR_VMRESUME_NONLAUNCHED_VMCS, "VMRESUME_NONLAUNCHED_VMCS" }, \
{ VMXERR_VMRESUME_AFTER_VMXOFF, "VMRESUME_AFTER_VMXOFF" }, \
{ VMXERR_ENTRY_INVALID_CONTROL_FIELD, "VMENTRY_INVALID_CONTROL_FIELD" }, \
{ VMXERR_ENTRY_INVALID_HOST_STATE_FIELD, "VMENTRY_INVALID_HOST_STATE_FIELD" }, \
{ VMXERR_ENTRY_EVENTS_BLOCKED_BY_MOV_SS, "VMENTRY_EVENTS_BLOCKED_BY_MOV_SS" }
enum vmx_l1d_flush_state {
VMENTER_L1D_FLUSH_AUTO,
VMENTER_L1D_FLUSH_NEVER,
VMENTER_L1D_FLUSH_COND,
VMENTER_L1D_FLUSH_ALWAYS,
VMENTER_L1D_FLUSH_EPT_DISABLED,
VMENTER_L1D_FLUSH_NOT_REQUIRED,
};
extern enum vmx_l1d_flush_state l1tf_vmx_mitigation;
struct vmx_ve_information {
u32 exit_reason;
u32 delivery;
u64 exit_qualification;
u64 guest_linear_address;
u64 guest_physical_address;
u16 eptp_index;
};
#endif
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| amd | Folder | 0755 |
|
|
| e820 | Folder | 0755 |
|
|
| fpu | Folder | 0755 |
|
|
| numachip | Folder | 0755 |
|
|
| shared | Folder | 0755 |
|
|
| trace | Folder | 0755 |
|
|
| uv | Folder | 0755 |
|
|
| vdso | Folder | 0755 |
|
|
| xen | Folder | 0755 |
|
|
| GEN-for-each-reg.h | File | 345 B | 0644 |
|
| Kbuild | File | 300 B | 0644 |
|
| acenv.h | File | 1.42 KB | 0644 |
|
| acpi.h | File | 5.43 KB | 0644 |
|
| acrn.h | File | 2.12 KB | 0644 |
|
| agp.h | File | 835 B | 0644 |
|
| alternative.h | File | 15.72 KB | 0644 |
|
| amd-ibs.h | File | 4.96 KB | 0644 |
|
| amd_hsmp.h | File | 364 B | 0644 |
|
| amd_nb.h | File | 2.89 KB | 0644 |
|
| apic.h | File | 15.13 KB | 0644 |
|
| apicdef.h | File | 5.52 KB | 0644 |
|
| apm.h | File | 1.73 KB | 0644 |
|
| arch_hweight.h | File | 1.06 KB | 0644 |
|
| archrandom.h | File | 1.46 KB | 0644 |
|
| asm-offsets.h | File | 35 B | 0644 |
|
| asm-prototypes.h | File | 454 B | 0644 |
|
| asm.h | File | 6.1 KB | 0644 |
|
| atomic.h | File | 4.54 KB | 0644 |
|
| atomic64_32.h | File | 6.59 KB | 0644 |
|
| atomic64_64.h | File | 4.45 KB | 0644 |
|
| audit.h | File | 351 B | 0644 |
|
| barrier.h | File | 2.32 KB | 0644 |
|
| bios_ebda.h | File | 914 B | 0644 |
|
| bitops.h | File | 10.96 KB | 0644 |
|
| boot.h | File | 2.64 KB | 0644 |
|
| bootparam_utils.h | File | 2.84 KB | 0644 |
|
| bug.h | File | 2.36 KB | 0644 |
|
| bugs.h | File | 344 B | 0644 |
|
| cache.h | File | 622 B | 0644 |
|
| cacheflush.h | File | 329 B | 0644 |
|
| cacheinfo.h | File | 485 B | 0644 |
|
| ce4100.h | File | 121 B | 0644 |
|
| cfi.h | File | 2.54 KB | 0644 |
|
| checksum.h | File | 323 B | 0644 |
|
| checksum_32.h | File | 4.57 KB | 0644 |
|
| checksum_64.h | File | 5.02 KB | 0644 |
|
| clocksource.h | File | 480 B | 0644 |
|
| cmdline.h | File | 302 B | 0644 |
|
| cmpxchg.h | File | 7.29 KB | 0644 |
|
| cmpxchg_32.h | File | 2.78 KB | 0644 |
|
| cmpxchg_64.h | File | 2.35 KB | 0644 |
|
| coco.h | File | 703 B | 0644 |
|
| compat.h | File | 2.35 KB | 0644 |
|
| cpu.h | File | 2 KB | 0644 |
|
| cpu_device_id.h | File | 9.77 KB | 0644 |
|
| cpu_entry_area.h | File | 4.1 KB | 0644 |
|
| cpufeature.h | File | 9.06 KB | 0644 |
|
| cpufeatures.h | File | 39 KB | 0644 |
|
| cpuid.h | File | 4.2 KB | 0644 |
|
| cpuidle_haltpoll.h | File | 189 B | 0644 |
|
| cpumask.h | File | 903 B | 0644 |
|
| crash.h | File | 300 B | 0644 |
|
| crash_reserve.h | File | 1.28 KB | 0644 |
|
| current.h | File | 1.15 KB | 0644 |
|
| debugreg.h | File | 3.74 KB | 0644 |
|
| delay.h | File | 275 B | 0644 |
|
| desc.h | File | 11.25 KB | 0644 |
|
| desc_defs.h | File | 3.32 KB | 0644 |
|
| device.h | File | 176 B | 0644 |
|
| disabled-features.h | File | 4.25 KB | 0644 |
|
| div64.h | File | 2.4 KB | 0644 |
|
| dma-mapping.h | File | 237 B | 0644 |
|
| dma.h | File | 9.47 KB | 0644 |
|
| dmi.h | File | 556 B | 0644 |
|
| doublefault.h | File | 351 B | 0644 |
|
| dwarf2.h | File | 1.29 KB | 0644 |
|
| edac.h | File | 474 B | 0644 |
|
| efi.h | File | 13.56 KB | 0644 |
|
| elf.h | File | 11.96 KB | 0644 |
|
| elfcore-compat.h | File | 890 B | 0644 |
|
| emergency-restart.h | File | 202 B | 0644 |
|
| emulate_prefix.h | File | 484 B | 0644 |
|
| enclu.h | File | 181 B | 0644 |
|
| entry-common.h | File | 3.11 KB | 0644 |
|
| espfix.h | File | 426 B | 0644 |
|
| exec.h | File | 37 B | 0644 |
|
| extable.h | File | 1.87 KB | 0644 |
|
| extable_fixup_types.h | File | 2.31 KB | 0644 |
|
| fb.h | File | 485 B | 0644 |
|
| fixmap.h | File | 5.95 KB | 0644 |
|
| floppy.h | File | 6.7 KB | 0644 |
|
| frame.h | File | 2.5 KB | 0644 |
|
| fsgsbase.h | File | 2.02 KB | 0644 |
|
| ftrace.h | File | 4.05 KB | 0644 |
|
| futex.h | File | 2.49 KB | 0644 |
|
| gart.h | File | 2.62 KB | 0644 |
|
| genapic.h | File | 22 B | 0644 |
|
| geode.h | File | 693 B | 0644 |
|
| gsseg.h | File | 1.35 KB | 0644 |
|
| hardirq.h | File | 2.22 KB | 0644 |
|
| highmem.h | File | 2.44 KB | 0644 |
|
| hpet.h | File | 2.93 KB | 0644 |
|
| hugetlb.h | File | 243 B | 0644 |
|
| hw_breakpoint.h | File | 2.04 KB | 0644 |
|
| hw_irq.h | File | 3.02 KB | 0644 |
|
| hyperv_timer.h | File | 177 B | 0644 |
|
| hypervisor.h | File | 2.3 KB | 0644 |
|
| i8259.h | File | 2.01 KB | 0644 |
|
| ia32.h | File | 1.75 KB | 0644 |
|
| ia32_unistd.h | File | 313 B | 0644 |
|
| ibt.h | File | 2.5 KB | 0644 |
|
| idtentry.h | File | 22.13 KB | 0644 |
|
| imr.h | File | 1.64 KB | 0644 |
|
| inat.h | File | 6.36 KB | 0644 |
|
| inat_types.h | File | 341 B | 0644 |
|
| init.h | File | 818 B | 0644 |
|
| insn-eval.h | File | 1.67 KB | 0644 |
|
| insn.h | File | 8.38 KB | 0644 |
|
| inst.h | File | 2.02 KB | 0644 |
|
| intel-family.h | File | 10.5 KB | 0644 |
|
| intel-mid.h | File | 624 B | 0644 |
|
| intel_ds.h | File | 947 B | 0644 |
|
| intel_pconfig.h | File | 1.51 KB | 0644 |
|
| intel_pt.h | File | 1.25 KB | 0644 |
|
| intel_punit_ipc.h | File | 4.56 KB | 0644 |
|
| intel_scu_ipc.h | File | 2.18 KB | 0644 |
|
| intel_telemetry.h | File | 3.64 KB | 0644 |
|
| invpcid.h | File | 1.45 KB | 0644 |
|
| io.h | File | 11.83 KB | 0644 |
|
| io_apic.h | File | 5.06 KB | 0644 |
|
| io_bitmap.h | File | 1.34 KB | 0644 |
|
| iomap.h | File | 536 B | 0644 |
|
| iommu.h | File | 965 B | 0644 |
|
| iosf_mbi.h | File | 7.21 KB | 0644 |
|
| irq.h | File | 1.22 KB | 0644 |
|
| irq_remapping.h | File | 1.83 KB | 0644 |
|
| irq_stack.h | File | 7.48 KB | 0644 |
|
| irq_vectors.h | File | 3.94 KB | 0644 |
|
| irq_work.h | File | 397 B | 0644 |
|
| irqdomain.h | File | 1.79 KB | 0644 |
|
| irqflags.h | File | 3.01 KB | 0644 |
|
| ist.h | File | 294 B | 0644 |
|
| jailhouse_para.h | File | 449 B | 0644 |
|
| jump_label.h | File | 1.42 KB | 0644 |
|
| kasan.h | File | 1.26 KB | 0644 |
|
| kaslr.h | File | 398 B | 0644 |
|
| kbdleds.h | File | 454 B | 0644 |
|
| kdebug.h | File | 1.06 KB | 0644 |
|
| kexec-bzimage64.h | File | 195 B | 0644 |
|
| kexec.h | File | 6.57 KB | 0644 |
|
| kfence.h | File | 1.59 KB | 0644 |
|
| kgdb.h | File | 2.09 KB | 0644 |
|
| kmsan.h | File | 2.75 KB | 0644 |
|
| kprobes.h | File | 3.32 KB | 0644 |
|
| kvm-x86-ops.h | File | 4.79 KB | 0644 |
|
| kvm-x86-pmu-ops.h | File | 782 B | 0644 |
|
| kvm_host.h | File | 73.27 KB | 0644 |
|
| kvm_page_track.h | File | 1.94 KB | 0644 |
|
| kvm_para.h | File | 4.13 KB | 0644 |
|
| kvm_types.h | File | 178 B | 0644 |
|
| kvm_vcpu_regs.h | File | 606 B | 0644 |
|
| kvmclock.h | File | 477 B | 0644 |
|
| linkage.h | File | 4.03 KB | 0644 |
|
| livepatch.h | File | 472 B | 0644 |
|
| local.h | File | 3.93 KB | 0644 |
|
| mach_timer.h | File | 1.55 KB | 0644 |
|
| mach_traps.h | File | 1013 B | 0644 |
|
| math_emu.h | File | 395 B | 0644 |
|
| mc146818rtc.h | File | 2.77 KB | 0644 |
|
| mce.h | File | 13.6 KB | 0644 |
|
| mem_encrypt.h | File | 3.43 KB | 0644 |
|
| memtype.h | File | 853 B | 0644 |
|
| microcode.h | File | 2.17 KB | 0644 |
|
| misc.h | File | 143 B | 0644 |
|
| mman.h | File | 412 B | 0644 |
|
| mmconfig.h | File | 374 B | 0644 |
|
| mmu.h | File | 2.03 KB | 0644 |
|
| mmu_context.h | File | 7.07 KB | 0644 |
|
| mmx.h | File | 0 B | 0644 |
|
| mmzone.h | File | 129 B | 0644 |
|
| mmzone_32.h | File | 343 B | 0644 |
|
| mmzone_64.h | File | 430 B | 0644 |
|
| module.h | File | 324 B | 0644 |
|
| mpspec.h | File | 1.86 KB | 0644 |
|
| mpspec_def.h | File | 4.16 KB | 0644 |
|
| mshyperv.h | File | 10.06 KB | 0644 |
|
| msi.h | File | 1.73 KB | 0644 |
|
| msr-index.h | File | 45.92 KB | 0644 |
|
| msr-trace.h | File | 1.35 KB | 0644 |
|
| msr.h | File | 11.26 KB | 0644 |
|
| mtrr.h | File | 5.53 KB | 0644 |
|
| mwait.h | File | 5.36 KB | 0644 |
|
| nmi.h | File | 1.45 KB | 0644 |
|
| nops.h | File | 2.24 KB | 0644 |
|
| nospec-branch.h | File | 17.75 KB | 0644 |
|
| numa.h | File | 2.14 KB | 0644 |
|
| numa_32.h | File | 256 B | 0644 |
|
| olpc.h | File | 2.33 KB | 0644 |
|
| olpc_ofw.h | File | 1.1 KB | 0644 |
|
| orc_lookup.h | File | 1.04 KB | 0644 |
|
| orc_types.h | File | 2.13 KB | 0644 |
|
| page.h | File | 2.45 KB | 0644 |
|
| page_32.h | File | 773 B | 0644 |
|
| page_32_types.h | File | 2.34 KB | 0644 |
|
| page_64.h | File | 2.95 KB | 0644 |
|
| page_64_types.h | File | 3.07 KB | 0644 |
|
| page_types.h | File | 2.01 KB | 0644 |
|
| paravirt.h | File | 17.95 KB | 0644 |
|
| paravirt_api_clock.h | File | 26 B | 0644 |
|
| paravirt_types.h | File | 17.32 KB | 0644 |
|
| parport.h | File | 314 B | 0644 |
|
| pc-conf-reg.h | File | 723 B | 0644 |
|
| pci-direct.h | File | 740 B | 0644 |
|
| pci-functions.h | File | 654 B | 0644 |
|
| pci.h | File | 3.1 KB | 0644 |
|
| pci_x86.h | File | 6.7 KB | 0644 |
|
| percpu.h | File | 23.69 KB | 0644 |
|
| perf_event.h | File | 19.75 KB | 0644 |
|
| perf_event_p4.h | File | 26.12 KB | 0644 |
|
| pgalloc.h | File | 5.19 KB | 0644 |
|
| pgtable-2level.h | File | 3.29 KB | 0644 |
|
| pgtable-2level_types.h | File | 921 B | 0644 |
|
| pgtable-3level.h | File | 6.47 KB | 0644 |
|
| pgtable-3level_types.h | File | 1.09 KB | 0644 |
|
| pgtable-invert.h | File | 1.07 KB | 0644 |
|
| pgtable.h | File | 41.57 KB | 0644 |
|
| pgtable_32.h | File | 2.12 KB | 0644 |
|
| pgtable_32_areas.h | File | 1.54 KB | 0644 |
|
| pgtable_32_types.h | File | 634 B | 0644 |
|
| pgtable_64.h | File | 7.12 KB | 0644 |
|
| pgtable_64_types.h | File | 6.31 KB | 0644 |
|
| pgtable_areas.h | File | 623 B | 0644 |
|
| pgtable_types.h | File | 17.83 KB | 0644 |
|
| pkeys.h | File | 3.13 KB | 0644 |
|
| pkru.h | File | 1.31 KB | 0644 |
|
| platform_sst_audio.h | File | 3.03 KB | 0644 |
|
| pm-trace.h | File | 611 B | 0644 |
|
| posix_types.h | File | 144 B | 0644 |
|
| posted_intr.h | File | 2.28 KB | 0644 |
|
| preempt.h | File | 4.88 KB | 0644 |
|
| probe_roms.h | File | 273 B | 0644 |
|
| processor-cyrix.h | File | 383 B | 0644 |
|
| processor-flags.h | File | 1.79 KB | 0644 |
|
| processor.h | File | 20.29 KB | 0644 |
|
| prom.h | File | 979 B | 0644 |
|
| proto.h | File | 1.12 KB | 0644 |
|
| pti.h | File | 383 B | 0644 |
|
| ptrace.h | File | 10.46 KB | 0644 |
|
| purgatory.h | File | 235 B | 0644 |
|
| pvclock-abi.h | File | 1.49 KB | 0644 |
|
| pvclock.h | File | 2.72 KB | 0644 |
|
| qrwlock.h | File | 199 B | 0644 |
|
| qspinlock.h | File | 2.98 KB | 0644 |
|
| qspinlock_paravirt.h | File | 2.11 KB | 0644 |
|
| realmode.h | File | 2.11 KB | 0644 |
|
| reboot.h | File | 1.25 KB | 0644 |
|
| reboot_fixups.h | File | 183 B | 0644 |
|
| required-features.h | File | 2.89 KB | 0644 |
|
| resctrl.h | File | 5.03 KB | 0644 |
|
| rmwcc.h | File | 2.11 KB | 0644 |
|
| runtime-const.h | File | 1.68 KB | 0644 |
|
| seccomp.h | File | 1.18 KB | 0644 |
|
| sections.h | File | 426 B | 0644 |
|
| segment.h | File | 9.92 KB | 0644 |
|
| serial.h | File | 1.11 KB | 0644 |
|
| set_memory.h | File | 3.88 KB | 0644 |
|
| setup.h | File | 3.58 KB | 0644 |
|
| setup_arch.h | File | 77 B | 0644 |
|
| sev-common.h | File | 6.76 KB | 0644 |
|
| sev.h | File | 13.72 KB | 0644 |
|
| sgx.h | File | 12.85 KB | 0644 |
|
| shmparam.h | File | 193 B | 0644 |
|
| shstk.h | File | 1.36 KB | 0644 |
|
| sigcontext.h | File | 261 B | 0644 |
|
| sigframe.h | File | 2.09 KB | 0644 |
|
| sighandling.h | File | 919 B | 0644 |
|
| signal.h | File | 2.27 KB | 0644 |
|
| simd.h | File | 287 B | 0644 |
|
| smap.h | File | 1.58 KB | 0644 |
|
| smp.h | File | 4.84 KB | 0644 |
|
| softirq_stack.h | File | 216 B | 0644 |
|
| sparsemem.h | File | 1.1 KB | 0644 |
|
| spec-ctrl.h | File | 2.97 KB | 0644 |
|
| special_insns.h | File | 7.18 KB | 0644 |
|
| spinlock.h | File | 1.19 KB | 0644 |
|
| spinlock_types.h | File | 253 B | 0644 |
|
| sta2x11.h | File | 352 B | 0644 |
|
| stackprotector.h | File | 2.65 KB | 0644 |
|
| stacktrace.h | File | 2.78 KB | 0644 |
|
| static_call.h | File | 2.99 KB | 0644 |
|
| string.h | File | 129 B | 0644 |
|
| string_32.h | File | 5.36 KB | 0644 |
|
| string_64.h | File | 2.89 KB | 0644 |
|
| suspend.h | File | 496 B | 0644 |
|
| suspend_32.h | File | 876 B | 0644 |
|
| suspend_64.h | File | 1.79 KB | 0644 |
|
| svm.h | File | 16.5 KB | 0644 |
|
| switch_to.h | File | 2.24 KB | 0644 |
|
| sync_bitops.h | File | 3.26 KB | 0644 |
|
| sync_core.h | File | 3.24 KB | 0644 |
|
| syscall.h | File | 3.34 KB | 0644 |
|
| syscall_wrapper.h | File | 9.14 KB | 0644 |
|
| syscalls.h | File | 374 B | 0644 |
|
| tdx.h | File | 6.99 KB | 0644 |
|
| tdx_global_metadata.h | File | 958 B | 0644 |
|
| text-patching.h | File | 5.51 KB | 0644 |
|
| thermal.h | File | 428 B | 0644 |
|
| thread_info.h | File | 8.03 KB | 0644 |
|
| time.h | File | 355 B | 0644 |
|
| timer.h | File | 1 KB | 0644 |
|
| timex.h | File | 546 B | 0644 |
|
| tlb.h | File | 1.18 KB | 0644 |
|
| tlbbatch.h | File | 332 B | 0644 |
|
| tlbflush.h | File | 11.67 KB | 0644 |
|
| topology.h | File | 8.58 KB | 0644 |
|
| trace_clock.h | File | 406 B | 0644 |
|
| trap_pf.h | File | 881 B | 0644 |
|
| trapnr.h | File | 1.29 KB | 0644 |
|
| traps.h | File | 1.54 KB | 0644 |
|
| tsc.h | File | 1.69 KB | 0644 |
|
| uaccess.h | File | 20.13 KB | 0644 |
|
| uaccess_32.h | File | 1.13 KB | 0644 |
|
| uaccess_64.h | File | 5.55 KB | 0644 |
|
| umip.h | File | 317 B | 0644 |
|
| unaccepted_memory.h | File | 742 B | 0644 |
|
| unistd.h | File | 1.63 KB | 0644 |
|
| unwind.h | File | 3.89 KB | 0644 |
|
| unwind_hints.h | File | 2 KB | 0644 |
|
| uprobes.h | File | 1017 B | 0644 |
|
| user.h | File | 2.2 KB | 0644 |
|
| user32.h | File | 2.11 KB | 0644 |
|
| user_32.h | File | 4.78 KB | 0644 |
|
| user_64.h | File | 5.07 KB | 0644 |
|
| vdso.h | File | 1.36 KB | 0644 |
|
| vermagic.h | File | 1.95 KB | 0644 |
|
| vga.h | File | 740 B | 0644 |
|
| vgtod.h | File | 518 B | 0644 |
|
| vm86.h | File | 2.13 KB | 0644 |
|
| vmalloc.h | File | 560 B | 0644 |
|
| vmware.h | File | 9.36 KB | 0644 |
|
| vmx.h | File | 26.6 KB | 0644 |
|
| vmxfeatures.h | File | 6.43 KB | 0644 |
|
| vsyscall.h | File | 988 B | 0644 |
|
| vvar.h | File | 1.55 KB | 0644 |
|
| word-at-a-time.h | File | 2.3 KB | 0644 |
|
| x86_init.h | File | 11.92 KB | 0644 |
|
| xor.h | File | 10.39 KB | 0644 |
|
| xor_32.h | File | 14.54 KB | 0644 |
|
| xor_64.h | File | 716 B | 0644 |
|
| xor_avx.h | File | 4.53 KB | 0644 |
|