mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
x86: Drop opt_pku entirely
This option is particularly dubious as Xen does not use Protection Keys, owing to the sharing of pagetables with PV guests. All this option does is hide PKU by default from HVM guests, and is therefore redundant with the more generic cpuid=no-pku. The variable ought to be in __initdata given it's single user, but deleting it entirely looks to be a better course of action. Visibility of PKU to guests should be handled via its vm.cfg file. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Jan Beulich <jbeulich@suse.com> Acked-by: Henry Wang <Henry.Wang@arm.com>
This commit is contained in:
1 parent
767d1a2cfd
commit
65f0d6fc80
3 files changed
+4
-17
No files matched your search
@@ -25,6 +25,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
|
||||
- Add support for AVX512-FP16 on x86.
|
||||
- On Arm, Xen supports guests running SVE/SVE2 instructions. (Tech Preview)
|
||||
|
||||
### Removed
|
||||
- On x86, the "pku" command line option has been removed. It has never
|
||||
behaved precisely as described, and was redundant with the unsupported
|
||||
"cpuid=no-pku". Visibility of PKU to guests should be via its vm.cfg file.
|
||||
|
||||
## [4.17.0](https://xenbits.xen.org/gitweb/?p=xen.git;a=shortlog;h=RELEASE-4.17.0) - 2022-12-12
|
||||
|
||||
|
||||
@@ -1950,16 +1950,6 @@ for all of them (`true`), only for those subject to XPTI (`xpti`) or for
|
||||
those not subject to XPTI (`no-xpti`). The feature is used only in case
|
||||
INVPCID is supported and not disabled via `invpcid=false`.
|
||||
|
||||
### pku (x86)
|
||||
> `= <boolean>`
|
||||
|
||||
> Default: `true`
|
||||
|
||||
Flag to enable Memory Protection Keys.
|
||||
|
||||
The protection-key feature provides an additional mechanism by which IA-32e
|
||||
paging controls access to usermode addresses.
|
||||
|
||||
### ple_gap
|
||||
> `= <integer>`
|
||||
|
||||
|
||||
@@ -29,10 +29,6 @@ bool __read_mostly opt_dom0_cpuid_faulting = true;
|
||||
bool opt_arat = true;
|
||||
boolean_param("arat", opt_arat);
|
||||
|
||||
/* pku: Flag to enable Memory Protection Keys (default on). */
|
||||
static bool opt_pku = true;
|
||||
boolean_param("pku", opt_pku);
|
||||
|
||||
unsigned int opt_cpuid_mask_ecx = ~0u;
|
||||
integer_param("cpuid_mask_ecx", opt_cpuid_mask_ecx);
|
||||
unsigned int opt_cpuid_mask_edx = ~0u;
|
||||
@@ -522,9 +518,6 @@ void identify_cpu(struct cpuinfo_x86 *c)
|
||||
this_cpu->c_init(c);
|
||||
|
||||
|
||||
if (c == &boot_cpu_data && !opt_pku)
|
||||
setup_clear_cpu_cap(X86_FEATURE_PKU);
|
||||
|
||||
/*
|
||||
* The vendor-specific functions might have changed features. Now
|
||||
* we do "generic changes."
|
||||
|
||||