diff options
Diffstat (limited to 'tools/arch')
-rw-r--r-- | tools/arch/arm64/include/uapi/asm/kvm.h | 2 | ||||
-rw-r--r-- | tools/arch/s390/include/uapi/asm/kvm.h | 41 | ||||
-rw-r--r-- | tools/arch/s390/include/uapi/asm/sie.h | 1 | ||||
-rw-r--r-- | tools/arch/x86/include/asm/cpufeatures.h | 9 | ||||
-rw-r--r-- | tools/arch/x86/include/asm/disabled-features.h | 2 | ||||
-rw-r--r-- | tools/arch/x86/include/asm/required-features.h | 2 | ||||
-rw-r--r-- | tools/arch/x86/include/uapi/asm/vmx.h | 4 |
7 files changed, 52 insertions, 9 deletions
diff --git a/tools/arch/arm64/include/uapi/asm/kvm.h b/tools/arch/arm64/include/uapi/asm/kvm.h index f209ea151dca..3051f86a9b5f 100644 --- a/tools/arch/arm64/include/uapi/asm/kvm.h +++ b/tools/arch/arm64/include/uapi/asm/kvm.h | |||
@@ -87,9 +87,11 @@ struct kvm_regs { | |||
87 | /* Supported VGICv3 address types */ | 87 | /* Supported VGICv3 address types */ |
88 | #define KVM_VGIC_V3_ADDR_TYPE_DIST 2 | 88 | #define KVM_VGIC_V3_ADDR_TYPE_DIST 2 |
89 | #define KVM_VGIC_V3_ADDR_TYPE_REDIST 3 | 89 | #define KVM_VGIC_V3_ADDR_TYPE_REDIST 3 |
90 | #define KVM_VGIC_ITS_ADDR_TYPE 4 | ||
90 | 91 | ||
91 | #define KVM_VGIC_V3_DIST_SIZE SZ_64K | 92 | #define KVM_VGIC_V3_DIST_SIZE SZ_64K |
92 | #define KVM_VGIC_V3_REDIST_SIZE (2 * SZ_64K) | 93 | #define KVM_VGIC_V3_REDIST_SIZE (2 * SZ_64K) |
94 | #define KVM_VGIC_V3_ITS_SIZE (2 * SZ_64K) | ||
93 | 95 | ||
94 | #define KVM_ARM_VCPU_POWER_OFF 0 /* CPU is started in OFF state */ | 96 | #define KVM_ARM_VCPU_POWER_OFF 0 /* CPU is started in OFF state */ |
95 | #define KVM_ARM_VCPU_EL1_32BIT 1 /* CPU running a 32bit VM */ | 97 | #define KVM_ARM_VCPU_EL1_32BIT 1 /* CPU running a 32bit VM */ |
diff --git a/tools/arch/s390/include/uapi/asm/kvm.h b/tools/arch/s390/include/uapi/asm/kvm.h index 3b8e99ef9d58..a2ffec4139ad 100644 --- a/tools/arch/s390/include/uapi/asm/kvm.h +++ b/tools/arch/s390/include/uapi/asm/kvm.h | |||
@@ -93,6 +93,47 @@ struct kvm_s390_vm_cpu_machine { | |||
93 | __u64 fac_list[256]; | 93 | __u64 fac_list[256]; |
94 | }; | 94 | }; |
95 | 95 | ||
96 | #define KVM_S390_VM_CPU_PROCESSOR_FEAT 2 | ||
97 | #define KVM_S390_VM_CPU_MACHINE_FEAT 3 | ||
98 | |||
99 | #define KVM_S390_VM_CPU_FEAT_NR_BITS 1024 | ||
100 | #define KVM_S390_VM_CPU_FEAT_ESOP 0 | ||
101 | #define KVM_S390_VM_CPU_FEAT_SIEF2 1 | ||
102 | #define KVM_S390_VM_CPU_FEAT_64BSCAO 2 | ||
103 | #define KVM_S390_VM_CPU_FEAT_SIIF 3 | ||
104 | #define KVM_S390_VM_CPU_FEAT_GPERE 4 | ||
105 | #define KVM_S390_VM_CPU_FEAT_GSLS 5 | ||
106 | #define KVM_S390_VM_CPU_FEAT_IB 6 | ||
107 | #define KVM_S390_VM_CPU_FEAT_CEI 7 | ||
108 | #define KVM_S390_VM_CPU_FEAT_IBS 8 | ||
109 | #define KVM_S390_VM_CPU_FEAT_SKEY 9 | ||
110 | #define KVM_S390_VM_CPU_FEAT_CMMA 10 | ||
111 | #define KVM_S390_VM_CPU_FEAT_PFMFI 11 | ||
112 | #define KVM_S390_VM_CPU_FEAT_SIGPIF 12 | ||
113 | struct kvm_s390_vm_cpu_feat { | ||
114 | __u64 feat[16]; | ||
115 | }; | ||
116 | |||
117 | #define KVM_S390_VM_CPU_PROCESSOR_SUBFUNC 4 | ||
118 | #define KVM_S390_VM_CPU_MACHINE_SUBFUNC 5 | ||
119 | /* for "test bit" instructions MSB 0 bit ordering, for "query" raw blocks */ | ||
120 | struct kvm_s390_vm_cpu_subfunc { | ||
121 | __u8 plo[32]; /* always */ | ||
122 | __u8 ptff[16]; /* with TOD-clock steering */ | ||
123 | __u8 kmac[16]; /* with MSA */ | ||
124 | __u8 kmc[16]; /* with MSA */ | ||
125 | __u8 km[16]; /* with MSA */ | ||
126 | __u8 kimd[16]; /* with MSA */ | ||
127 | __u8 klmd[16]; /* with MSA */ | ||
128 | __u8 pckmo[16]; /* with MSA3 */ | ||
129 | __u8 kmctr[16]; /* with MSA4 */ | ||
130 | __u8 kmf[16]; /* with MSA4 */ | ||
131 | __u8 kmo[16]; /* with MSA4 */ | ||
132 | __u8 pcc[16]; /* with MSA4 */ | ||
133 | __u8 ppno[16]; /* with MSA5 */ | ||
134 | __u8 reserved[1824]; | ||
135 | }; | ||
136 | |||
96 | /* kvm attributes for crypto */ | 137 | /* kvm attributes for crypto */ |
97 | #define KVM_S390_VM_CRYPTO_ENABLE_AES_KW 0 | 138 | #define KVM_S390_VM_CRYPTO_ENABLE_AES_KW 0 |
98 | #define KVM_S390_VM_CRYPTO_ENABLE_DEA_KW 1 | 139 | #define KVM_S390_VM_CRYPTO_ENABLE_DEA_KW 1 |
diff --git a/tools/arch/s390/include/uapi/asm/sie.h b/tools/arch/s390/include/uapi/asm/sie.h index 8fb5d4a6dd25..3ac634368939 100644 --- a/tools/arch/s390/include/uapi/asm/sie.h +++ b/tools/arch/s390/include/uapi/asm/sie.h | |||
@@ -140,6 +140,7 @@ | |||
140 | exit_code_ipa0(0xB2, 0x4c, "TAR"), \ | 140 | exit_code_ipa0(0xB2, 0x4c, "TAR"), \ |
141 | exit_code_ipa0(0xB2, 0x50, "CSP"), \ | 141 | exit_code_ipa0(0xB2, 0x50, "CSP"), \ |
142 | exit_code_ipa0(0xB2, 0x54, "MVPG"), \ | 142 | exit_code_ipa0(0xB2, 0x54, "MVPG"), \ |
143 | exit_code_ipa0(0xB2, 0x56, "STHYI"), \ | ||
143 | exit_code_ipa0(0xB2, 0x58, "BSG"), \ | 144 | exit_code_ipa0(0xB2, 0x58, "BSG"), \ |
144 | exit_code_ipa0(0xB2, 0x5a, "BSA"), \ | 145 | exit_code_ipa0(0xB2, 0x5a, "BSA"), \ |
145 | exit_code_ipa0(0xB2, 0x5f, "CHSC"), \ | 146 | exit_code_ipa0(0xB2, 0x5f, "CHSC"), \ |
diff --git a/tools/arch/x86/include/asm/cpufeatures.h b/tools/arch/x86/include/asm/cpufeatures.h index 4a413485f9eb..92a8308b96f6 100644 --- a/tools/arch/x86/include/asm/cpufeatures.h +++ b/tools/arch/x86/include/asm/cpufeatures.h | |||
@@ -225,7 +225,6 @@ | |||
225 | #define X86_FEATURE_RDSEED ( 9*32+18) /* The RDSEED instruction */ | 225 | #define X86_FEATURE_RDSEED ( 9*32+18) /* The RDSEED instruction */ |
226 | #define X86_FEATURE_ADX ( 9*32+19) /* The ADCX and ADOX instructions */ | 226 | #define X86_FEATURE_ADX ( 9*32+19) /* The ADCX and ADOX instructions */ |
227 | #define X86_FEATURE_SMAP ( 9*32+20) /* Supervisor Mode Access Prevention */ | 227 | #define X86_FEATURE_SMAP ( 9*32+20) /* Supervisor Mode Access Prevention */ |
228 | #define X86_FEATURE_PCOMMIT ( 9*32+22) /* PCOMMIT instruction */ | ||
229 | #define X86_FEATURE_CLFLUSHOPT ( 9*32+23) /* CLFLUSHOPT instruction */ | 228 | #define X86_FEATURE_CLFLUSHOPT ( 9*32+23) /* CLFLUSHOPT instruction */ |
230 | #define X86_FEATURE_CLWB ( 9*32+24) /* CLWB instruction */ | 229 | #define X86_FEATURE_CLWB ( 9*32+24) /* CLWB instruction */ |
231 | #define X86_FEATURE_AVX512PF ( 9*32+26) /* AVX-512 Prefetch */ | 230 | #define X86_FEATURE_AVX512PF ( 9*32+26) /* AVX-512 Prefetch */ |
@@ -301,10 +300,6 @@ | |||
301 | #define X86_BUG_FXSAVE_LEAK X86_BUG(6) /* FXSAVE leaks FOP/FIP/FOP */ | 300 | #define X86_BUG_FXSAVE_LEAK X86_BUG(6) /* FXSAVE leaks FOP/FIP/FOP */ |
302 | #define X86_BUG_CLFLUSH_MONITOR X86_BUG(7) /* AAI65, CLFLUSH required before MONITOR */ | 301 | #define X86_BUG_CLFLUSH_MONITOR X86_BUG(7) /* AAI65, CLFLUSH required before MONITOR */ |
303 | #define X86_BUG_SYSRET_SS_ATTRS X86_BUG(8) /* SYSRET doesn't fix up SS attrs */ | 302 | #define X86_BUG_SYSRET_SS_ATTRS X86_BUG(8) /* SYSRET doesn't fix up SS attrs */ |
304 | #define X86_BUG_NULL_SEG X86_BUG(9) /* Nulling a selector preserves the base */ | ||
305 | #define X86_BUG_SWAPGS_FENCE X86_BUG(10) /* SWAPGS without input dep on GS */ | ||
306 | |||
307 | |||
308 | #ifdef CONFIG_X86_32 | 303 | #ifdef CONFIG_X86_32 |
309 | /* | 304 | /* |
310 | * 64-bit kernels don't use X86_BUG_ESPFIX. Make the define conditional | 305 | * 64-bit kernels don't use X86_BUG_ESPFIX. Make the define conditional |
@@ -312,5 +307,7 @@ | |||
312 | */ | 307 | */ |
313 | #define X86_BUG_ESPFIX X86_BUG(9) /* "" IRET to 16-bit SS corrupts ESP/RSP high bits */ | 308 | #define X86_BUG_ESPFIX X86_BUG(9) /* "" IRET to 16-bit SS corrupts ESP/RSP high bits */ |
314 | #endif | 309 | #endif |
315 | 310 | #define X86_BUG_NULL_SEG X86_BUG(10) /* Nulling a selector preserves the base */ | |
311 | #define X86_BUG_SWAPGS_FENCE X86_BUG(11) /* SWAPGS without input dep on GS */ | ||
312 | #define X86_BUG_MONITOR X86_BUG(12) /* IPI required to wake up remote CPU */ | ||
316 | #endif /* _ASM_X86_CPUFEATURES_H */ | 313 | #endif /* _ASM_X86_CPUFEATURES_H */ |
diff --git a/tools/arch/x86/include/asm/disabled-features.h b/tools/arch/x86/include/asm/disabled-features.h index 911e9358ceb1..85599ad4d024 100644 --- a/tools/arch/x86/include/asm/disabled-features.h +++ b/tools/arch/x86/include/asm/disabled-features.h | |||
@@ -56,5 +56,7 @@ | |||
56 | #define DISABLED_MASK14 0 | 56 | #define DISABLED_MASK14 0 |
57 | #define DISABLED_MASK15 0 | 57 | #define DISABLED_MASK15 0 |
58 | #define DISABLED_MASK16 (DISABLE_PKU|DISABLE_OSPKE) | 58 | #define DISABLED_MASK16 (DISABLE_PKU|DISABLE_OSPKE) |
59 | #define DISABLED_MASK17 0 | ||
60 | #define DISABLED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 18) | ||
59 | 61 | ||
60 | #endif /* _ASM_X86_DISABLED_FEATURES_H */ | 62 | #endif /* _ASM_X86_DISABLED_FEATURES_H */ |
diff --git a/tools/arch/x86/include/asm/required-features.h b/tools/arch/x86/include/asm/required-features.h index 4916144e3c42..fac9a5c0abe9 100644 --- a/tools/arch/x86/include/asm/required-features.h +++ b/tools/arch/x86/include/asm/required-features.h | |||
@@ -99,5 +99,7 @@ | |||
99 | #define REQUIRED_MASK14 0 | 99 | #define REQUIRED_MASK14 0 |
100 | #define REQUIRED_MASK15 0 | 100 | #define REQUIRED_MASK15 0 |
101 | #define REQUIRED_MASK16 0 | 101 | #define REQUIRED_MASK16 0 |
102 | #define REQUIRED_MASK17 0 | ||
103 | #define REQUIRED_MASK_CHECK BUILD_BUG_ON_ZERO(NCAPINTS != 18) | ||
102 | 104 | ||
103 | #endif /* _ASM_X86_REQUIRED_FEATURES_H */ | 105 | #endif /* _ASM_X86_REQUIRED_FEATURES_H */ |
diff --git a/tools/arch/x86/include/uapi/asm/vmx.h b/tools/arch/x86/include/uapi/asm/vmx.h index 5b15d94a33f8..37fee272618f 100644 --- a/tools/arch/x86/include/uapi/asm/vmx.h +++ b/tools/arch/x86/include/uapi/asm/vmx.h | |||
@@ -78,7 +78,6 @@ | |||
78 | #define EXIT_REASON_PML_FULL 62 | 78 | #define EXIT_REASON_PML_FULL 62 |
79 | #define EXIT_REASON_XSAVES 63 | 79 | #define EXIT_REASON_XSAVES 63 |
80 | #define EXIT_REASON_XRSTORS 64 | 80 | #define EXIT_REASON_XRSTORS 64 |
81 | #define EXIT_REASON_PCOMMIT 65 | ||
82 | 81 | ||
83 | #define VMX_EXIT_REASONS \ | 82 | #define VMX_EXIT_REASONS \ |
84 | { EXIT_REASON_EXCEPTION_NMI, "EXCEPTION_NMI" }, \ | 83 | { EXIT_REASON_EXCEPTION_NMI, "EXCEPTION_NMI" }, \ |
@@ -127,8 +126,7 @@ | |||
127 | { EXIT_REASON_INVVPID, "INVVPID" }, \ | 126 | { EXIT_REASON_INVVPID, "INVVPID" }, \ |
128 | { EXIT_REASON_INVPCID, "INVPCID" }, \ | 127 | { EXIT_REASON_INVPCID, "INVPCID" }, \ |
129 | { EXIT_REASON_XSAVES, "XSAVES" }, \ | 128 | { EXIT_REASON_XSAVES, "XSAVES" }, \ |
130 | { EXIT_REASON_XRSTORS, "XRSTORS" }, \ | 129 | { EXIT_REASON_XRSTORS, "XRSTORS" } |
131 | { EXIT_REASON_PCOMMIT, "PCOMMIT" } | ||
132 | 130 | ||
133 | #define VMX_ABORT_SAVE_GUEST_MSR_FAIL 1 | 131 | #define VMX_ABORT_SAVE_GUEST_MSR_FAIL 1 |
134 | #define VMX_ABORT_LOAD_HOST_MSR_FAIL 4 | 132 | #define VMX_ABORT_LOAD_HOST_MSR_FAIL 4 |