On Fri, 7 Jun 2019 12:26:27 +0100 Dave Martin <Dave.Martin@xxxxxxx> wrote: > Will says that the command-line arguments for controlling optional > vcpu features are superfluous: we don't attempt to support > migration, and this isn't QEMU. > > So, remove the command-line arguments and just default pointer auth > to on if supported. > > Signed-off-by: Dave Martin <Dave.Martin@xxxxxxx> > > --- > > Changes since v3: > > * New patch. This should probably be folded into the previous one. Yes, absolutely! Those two merged become a so much simpler patch. For the stashed version: Reviewed-by: Andre Przywara <andre.przywara@xxxxxxx> Cheers, Andre. > --- > arm/aarch64/include/kvm/kvm-config-arch.h | 6 +----- > arm/include/arm-common/kvm-config-arch.h | 2 -- > arm/kvm-cpu.c | 19 ++++--------------- > 3 files changed, 5 insertions(+), 22 deletions(-) > > diff --git a/arm/aarch64/include/kvm/kvm-config-arch.h b/arm/aarch64/include/kvm/kvm-config-arch.h > index 0279b13..04be43d 100644 > --- a/arm/aarch64/include/kvm/kvm-config-arch.h > +++ b/arm/aarch64/include/kvm/kvm-config-arch.h > @@ -8,11 +8,7 @@ > "Create PMUv3 device"), \ > OPT_U64('\0', "kaslr-seed", &(cfg)->kaslr_seed, \ > "Specify random seed for Kernel Address Space " \ > - "Layout Randomization (KASLR)"), \ > - OPT_BOOLEAN('\0', "enable-ptrauth", &(cfg)->enable_ptrauth, \ > - "Enables pointer authentication"), \ > - OPT_BOOLEAN('\0', "disable-ptrauth", &(cfg)->disable_ptrauth, \ > - "Disables pointer authentication"), > + "Layout Randomization (KASLR)"), > > #include "arm-common/kvm-config-arch.h" > > diff --git a/arm/include/arm-common/kvm-config-arch.h b/arm/include/arm-common/kvm-config-arch.h > index 1b4287d..5734c46 100644 > --- a/arm/include/arm-common/kvm-config-arch.h > +++ b/arm/include/arm-common/kvm-config-arch.h > @@ -10,8 +10,6 @@ struct kvm_config_arch { > bool aarch32_guest; > bool has_pmuv3; > u64 kaslr_seed; > - bool enable_ptrauth; > - bool disable_ptrauth; > enum irqchip_type irqchip; > u64 fw_addr; > }; > diff --git a/arm/kvm-cpu.c b/arm/kvm-cpu.c > index acd1d5f..fff8494 100644 > --- a/arm/kvm-cpu.c > +++ b/arm/kvm-cpu.c > @@ -68,16 +68,9 @@ struct kvm_cpu *kvm_cpu__arch_init(struct kvm *kvm, unsigned long cpu_id) > vcpu_init.features[0] |= (1UL << KVM_ARM_VCPU_PSCI_0_2); > } > > - /* Check Pointer Authentication command line arguments. */ > - if (kvm->cfg.arch.enable_ptrauth && kvm->cfg.arch.disable_ptrauth) > - die("Both enable-ptrauth and disable-ptrauth option cannot be present"); > - /* > - * Always enable Pointer Authentication if system supports > - * this extension unless disable-ptrauth option is present. > - */ > + /* Enable pointer authentication if available */ > if (kvm__supports_extension(kvm, KVM_CAP_ARM_PTRAUTH_ADDRESS) && > - kvm__supports_extension(kvm, KVM_CAP_ARM_PTRAUTH_GENERIC) && > - !kvm->cfg.arch.disable_ptrauth) > + kvm__supports_extension(kvm, KVM_CAP_ARM_PTRAUTH_GENERIC)) > vcpu_init.features[0] |= ARM_VCPU_PTRAUTH_FEATURE; > > /* > @@ -118,12 +111,8 @@ struct kvm_cpu *kvm_cpu__arch_init(struct kvm *kvm, unsigned long cpu_id) > die("Unable to find matching target"); > } > > - if (err || target->init(vcpu)) { > - if (kvm->cfg.arch.enable_ptrauth) > - die("Unable to initialise vcpu with pointer authentication feature"); > - else > - die("Unable to initialise vcpu"); > - } > + if (err || target->init(vcpu)) > + die("Unable to initialise vcpu"); > > coalesced_offset = ioctl(kvm->sys_fd, KVM_CHECK_EXTENSION, > KVM_CAP_COALESCED_MMIO); _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm