Message ID | 1391078479-7406-2-git-send-email-anup.patel@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Thu, Jan 30, 2014 at 04:11:17PM +0530, Anup Patel wrote: > User space (i.e. QEMU or KVMTOOL) should be able to check whether KVM > ARM/ARM64 supports in-kernel PSCI v0.2 emulation. For this purpose, we > define KVM_CAP_ARM_PSCI_0_2 in KVM user space interface header. > > Signed-off-by: Anup Patel <anup.patel@linaro.org> > Signed-off-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> > --- > include/uapi/linux/kvm.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h > index 902f124..d64349e 100644 > --- a/include/uapi/linux/kvm.h > +++ b/include/uapi/linux/kvm.h > @@ -674,6 +674,7 @@ struct kvm_ppc_smmu_info { > #define KVM_CAP_ARM_EL1_32BIT 93 > #define KVM_CAP_SPAPR_MULTITCE 94 > #define KVM_CAP_EXT_EMUL_CPUID 95 > +#define KVM_CAP_ARM_PSCI_0_2 96 > > #ifdef KVM_CAP_IRQ_ROUTING > > -- > 1.7.9.5 > Acked-by: Christoffer Dall <christoffer.dall@linaro.org>
On Thu, Jan 30, 2014 at 10:41:17AM +0000, Anup Patel wrote: > User space (i.e. QEMU or KVMTOOL) should be able to check whether KVM > ARM/ARM64 supports in-kernel PSCI v0.2 emulation. For this purpose, we > define KVM_CAP_ARM_PSCI_0_2 in KVM user space interface header. > > Signed-off-by: Anup Patel <anup.patel@linaro.org> > Signed-off-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> > --- > include/uapi/linux/kvm.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h > index 902f124..d64349e 100644 > --- a/include/uapi/linux/kvm.h > +++ b/include/uapi/linux/kvm.h > @@ -674,6 +674,7 @@ struct kvm_ppc_smmu_info { > #define KVM_CAP_ARM_EL1_32BIT 93 > #define KVM_CAP_SPAPR_MULTITCE 94 > #define KVM_CAP_EXT_EMUL_CPUID 95 > +#define KVM_CAP_ARM_PSCI_0_2 96 To reiterate the point I made on patch 2, this does not do what it says on the tin, and does not make sense without mandatory PSCI 0.2 functionality being present, as no software can derive any value from this flag until such functionality is implemented. Thanks, Mark.
On Mon, Feb 3, 2014 at 5:18 PM, Mark Rutland <mark.rutland@arm.com> wrote: > On Thu, Jan 30, 2014 at 10:41:17AM +0000, Anup Patel wrote: >> User space (i.e. QEMU or KVMTOOL) should be able to check whether KVM >> ARM/ARM64 supports in-kernel PSCI v0.2 emulation. For this purpose, we >> define KVM_CAP_ARM_PSCI_0_2 in KVM user space interface header. >> >> Signed-off-by: Anup Patel <anup.patel@linaro.org> >> Signed-off-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> >> --- >> include/uapi/linux/kvm.h | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h >> index 902f124..d64349e 100644 >> --- a/include/uapi/linux/kvm.h >> +++ b/include/uapi/linux/kvm.h >> @@ -674,6 +674,7 @@ struct kvm_ppc_smmu_info { >> #define KVM_CAP_ARM_EL1_32BIT 93 >> #define KVM_CAP_SPAPR_MULTITCE 94 >> #define KVM_CAP_EXT_EMUL_CPUID 95 >> +#define KVM_CAP_ARM_PSCI_0_2 96 > > To reiterate the point I made on patch 2, this does not do what it says > on the tin, and does not make sense without mandatory PSCI 0.2 > functionality being present, as no software can derive any value from > this flag until such functionality is implemented. I handle this situation I would suggest to not advertise PSCI v0.2 capability to user space till all mandatory PSCI v0.2 functions are implemented. We will also need to defer the change in arch/arm/kvm/arm.c done by patch 2. Regards, Anup > > Thanks, > Mark. > _______________________________________________ > kvmarm mailing list > kvmarm@lists.cs.columbia.edu > https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm
On Mon, Feb 03, 2014 at 12:09:22PM +0000, Anup Patel wrote: > On Mon, Feb 3, 2014 at 5:18 PM, Mark Rutland <mark.rutland@arm.com> wrote: > > On Thu, Jan 30, 2014 at 10:41:17AM +0000, Anup Patel wrote: > >> User space (i.e. QEMU or KVMTOOL) should be able to check whether KVM > >> ARM/ARM64 supports in-kernel PSCI v0.2 emulation. For this purpose, we > >> define KVM_CAP_ARM_PSCI_0_2 in KVM user space interface header. > >> > >> Signed-off-by: Anup Patel <anup.patel@linaro.org> > >> Signed-off-by: Pranavkumar Sawargaonkar <pranavkumar@linaro.org> > >> --- > >> include/uapi/linux/kvm.h | 1 + > >> 1 file changed, 1 insertion(+) > >> > >> diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h > >> index 902f124..d64349e 100644 > >> --- a/include/uapi/linux/kvm.h > >> +++ b/include/uapi/linux/kvm.h > >> @@ -674,6 +674,7 @@ struct kvm_ppc_smmu_info { > >> #define KVM_CAP_ARM_EL1_32BIT 93 > >> #define KVM_CAP_SPAPR_MULTITCE 94 > >> #define KVM_CAP_EXT_EMUL_CPUID 95 > >> +#define KVM_CAP_ARM_PSCI_0_2 96 > > > > To reiterate the point I made on patch 2, this does not do what it says > > on the tin, and does not make sense without mandatory PSCI 0.2 > > functionality being present, as no software can derive any value from > > this flag until such functionality is implemented. > > I handle this situation I would suggest to not advertise PSCI v0.2 > capability to user space till all mandatory PSCI v0.2 functions > are implemented. We will also need to defer the change in > arch/arm/kvm/arm.c done by patch 2. Until all the mandatory PSCI 0.2 functions are implemented it should not be possible to ask the kernel for a partial implementation, yes. Thanks, Mark.
diff --git a/include/uapi/linux/kvm.h b/include/uapi/linux/kvm.h index 902f124..d64349e 100644 --- a/include/uapi/linux/kvm.h +++ b/include/uapi/linux/kvm.h @@ -674,6 +674,7 @@ struct kvm_ppc_smmu_info { #define KVM_CAP_ARM_EL1_32BIT 93 #define KVM_CAP_SPAPR_MULTITCE 94 #define KVM_CAP_EXT_EMUL_CPUID 95 +#define KVM_CAP_ARM_PSCI_0_2 96 #ifdef KVM_CAP_IRQ_ROUTING