diff mbox

arm64: KVM: Kconfig integration

Message ID 1372939377-24657-1-git-send-email-marc.zyngier@arm.com (mailing list archive)
State New, archived
Headers show

Commit Message

Marc Zyngier July 4, 2013, 12:02 p.m. UTC
Finally plug KVM/arm64 into the config system, making it possible
to enable KVM support on AArch64 CPUs.

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
---
 arch/arm64/Kconfig              |  2 ++
 arch/arm64/kernel/asm-offsets.c |  1 +
 arch/arm64/kvm/Kconfig          | 54 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 57 insertions(+)
 create mode 100644 arch/arm64/kvm/Kconfig

Comments

Peter Maydell July 4, 2013, 12:11 p.m. UTC | #1
On 4 July 2013 13:02, Marc Zyngier <marc.zyngier@arm.com> wrote:
> Finally plug KVM/arm64 into the config system, making it possible
> to enable KVM support on AArch64 CPUs.
>
> +config KVM
> +       bool "Kernel-based Virtual Machine (KVM) support"
> +       select MMU_NOTIFIER
> +       select PREEMPT_NOTIFIERS
> +       select ANON_INODES
> +       select KVM_MMIO
> +       select KVM_ARM_HOST
> +       select KVM_ARM_VGIC
> +       select KVM_ARM_TIMER
> +       ---help---
> +         Support hosting virtualized guest machines.
> +
> +         This module provides access to the hardware capabilities through
> +         a character device node named /dev/kvm.

"This module" ? I didn't think we supported KVM-as-a-module on ARM...

> +
> +         If unsure, say N.
> +
> +config KVM_ARM_HOST
> +       bool
> +       ---help---
> +         Provides host support for ARM processors.
> +
> +config KVM_ARM_VGIC
> +        bool
> +       depends on KVM_ARM_HOST && OF
> +       select HAVE_KVM_IRQCHIP
> +       ---help---
> +         Adds support for a hardware assisted, in-kernel GIC emulation.
> +
> +config KVM_ARM_TIMER
> +        bool
> +       depends on KVM_ARM_VGIC
> +       ---help---
> +         Adds support for the Architected Timers in virtual machines

Trailing '.' would be consistent with the other config options.

thanks
-- PMM
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Paolo Bonzini July 4, 2013, 12:18 p.m. UTC | #2
Il 04/07/2013 14:02, Marc Zyngier ha scritto:
> Finally plug KVM/arm64 into the config system, making it possible
> to enable KVM support on AArch64 CPUs.
> 
> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> ---
>  arch/arm64/Kconfig              |  2 ++
>  arch/arm64/kernel/asm-offsets.c |  1 +
>  arch/arm64/kvm/Kconfig          | 54 +++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 57 insertions(+)
>  create mode 100644 arch/arm64/kvm/Kconfig
> 
> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> index 4143d9b..9737e97 100644
> --- a/arch/arm64/Kconfig
> +++ b/arch/arm64/Kconfig
> @@ -270,6 +270,8 @@ source "drivers/Kconfig"
>  
>  source "fs/Kconfig"
>  
> +source "arch/arm64/kvm/Kconfig"
> +
>  source "arch/arm64/Kconfig.debug"
>  
>  source "security/Kconfig"
> diff --git a/arch/arm64/kernel/asm-offsets.c b/arch/arm64/kernel/asm-offsets.c
> index 49c162c..666e231 100644
> --- a/arch/arm64/kernel/asm-offsets.c
> +++ b/arch/arm64/kernel/asm-offsets.c
> @@ -21,6 +21,7 @@
>  #include <linux/sched.h>
>  #include <linux/mm.h>
>  #include <linux/dma-mapping.h>
> +#include <linux/kvm_host.h>
>  #include <asm/thread_info.h>
>  #include <asm/memory.h>
>  #include <asm/cputable.h>
> diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
> new file mode 100644
> index 0000000..84f54f0
> --- /dev/null
> +++ b/arch/arm64/kvm/Kconfig
> @@ -0,0 +1,54 @@
> +#
> +# KVM configuration
> +#
> +
> +source "virt/kvm/Kconfig"
> +
> +menuconfig VIRTUALIZATION
> +	bool "Virtualization"
> +	---help---
> +	  Say Y here to get to see options for using your Linux host to run
> +	  other operating systems inside virtual machines (guests).
> +	  This option alone does not add any kernel code.
> +
> +	  If you say N, all options in this submenu will be skipped and
> +	  disabled.
> +
> +if VIRTUALIZATION
> +
> +config KVM
> +	bool "Kernel-based Virtual Machine (KVM) support"
> +	select MMU_NOTIFIER
> +	select PREEMPT_NOTIFIERS
> +	select ANON_INODES
> +	select KVM_MMIO
> +	select KVM_ARM_HOST
> +	select KVM_ARM_VGIC
> +	select KVM_ARM_TIMER
> +	---help---
> +	  Support hosting virtualized guest machines.
> +
> +	  This module provides access to the hardware capabilities through
> +	  a character device node named /dev/kvm.
> +
> +	  If unsure, say N.
> +
> +config KVM_ARM_HOST
> +	bool
> +	---help---
> +	  Provides host support for ARM processors.
> +
> +config KVM_ARM_VGIC
> +        bool

Spaces instead of tabs (another occurrence below).

Paolo

> +	depends on KVM_ARM_HOST && OF
> +	select HAVE_KVM_IRQCHIP
> +	---help---
> +	  Adds support for a hardware assisted, in-kernel GIC emulation.
> +
> +config KVM_ARM_TIMER
> +        bool
> +	depends on KVM_ARM_VGIC
> +	---help---
> +	  Adds support for the Architected Timers in virtual machines
> +
> +endif # VIRTUALIZATION
> 

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marc Zyngier July 4, 2013, 12:38 p.m. UTC | #3
On 04/07/13 13:18, Paolo Bonzini wrote:
> Il 04/07/2013 14:02, Marc Zyngier ha scritto:
>> Finally plug KVM/arm64 into the config system, making it possible
>> to enable KVM support on AArch64 CPUs.
>>
>> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
>> ---
>>  arch/arm64/Kconfig              |  2 ++
>>  arch/arm64/kernel/asm-offsets.c |  1 +
>>  arch/arm64/kvm/Kconfig          | 54 +++++++++++++++++++++++++++++++++++++++++
>>  3 files changed, 57 insertions(+)
>>  create mode 100644 arch/arm64/kvm/Kconfig
>>
>> diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
>> index 4143d9b..9737e97 100644
>> --- a/arch/arm64/Kconfig
>> +++ b/arch/arm64/Kconfig
>> @@ -270,6 +270,8 @@ source "drivers/Kconfig"
>>  
>>  source "fs/Kconfig"
>>  
>> +source "arch/arm64/kvm/Kconfig"
>> +
>>  source "arch/arm64/Kconfig.debug"
>>  
>>  source "security/Kconfig"
>> diff --git a/arch/arm64/kernel/asm-offsets.c b/arch/arm64/kernel/asm-offsets.c
>> index 49c162c..666e231 100644
>> --- a/arch/arm64/kernel/asm-offsets.c
>> +++ b/arch/arm64/kernel/asm-offsets.c
>> @@ -21,6 +21,7 @@
>>  #include <linux/sched.h>
>>  #include <linux/mm.h>
>>  #include <linux/dma-mapping.h>
>> +#include <linux/kvm_host.h>
>>  #include <asm/thread_info.h>
>>  #include <asm/memory.h>
>>  #include <asm/cputable.h>
>> diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
>> new file mode 100644
>> index 0000000..84f54f0
>> --- /dev/null
>> +++ b/arch/arm64/kvm/Kconfig
>> @@ -0,0 +1,54 @@
>> +#
>> +# KVM configuration
>> +#
>> +
>> +source "virt/kvm/Kconfig"
>> +
>> +menuconfig VIRTUALIZATION
>> +	bool "Virtualization"
>> +	---help---
>> +	  Say Y here to get to see options for using your Linux host to run
>> +	  other operating systems inside virtual machines (guests).
>> +	  This option alone does not add any kernel code.
>> +
>> +	  If you say N, all options in this submenu will be skipped and
>> +	  disabled.
>> +
>> +if VIRTUALIZATION
>> +
>> +config KVM
>> +	bool "Kernel-based Virtual Machine (KVM) support"
>> +	select MMU_NOTIFIER
>> +	select PREEMPT_NOTIFIERS
>> +	select ANON_INODES
>> +	select KVM_MMIO
>> +	select KVM_ARM_HOST
>> +	select KVM_ARM_VGIC
>> +	select KVM_ARM_TIMER
>> +	---help---
>> +	  Support hosting virtualized guest machines.
>> +
>> +	  This module provides access to the hardware capabilities through
>> +	  a character device node named /dev/kvm.
>> +
>> +	  If unsure, say N.
>> +
>> +config KVM_ARM_HOST
>> +	bool
>> +	---help---
>> +	  Provides host support for ARM processors.
>> +
>> +config KVM_ARM_VGIC
>> +        bool
> 
> Spaces instead of tabs (another occurrence below).

Sent v2 with fixes. If you're pleased with it, do you want another pull
request? Or will you just pick that patch?

Thanks,

	M.
Paolo Bonzini July 4, 2013, 12:40 p.m. UTC | #4
Il 04/07/2013 14:38, Marc Zyngier ha scritto:
> Sent v2 with fixes. If you're pleased with it, do you want another pull
> request? Or will you just pick that patch?

Since it would be a fast forward, I can (and did) just pick that patch.

Paolo
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marc Zyngier July 4, 2013, 12:42 p.m. UTC | #5
On 04/07/13 13:40, Paolo Bonzini wrote:
> Il 04/07/2013 14:38, Marc Zyngier ha scritto:
>> Sent v2 with fixes. If you're pleased with it, do you want another pull
>> request? Or will you just pick that patch?
> 
> Since it would be a fast forward, I can (and did) just pick that patch.

Thanks,

	M.
diff mbox

Patch

diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 4143d9b..9737e97 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -270,6 +270,8 @@  source "drivers/Kconfig"
 
 source "fs/Kconfig"
 
+source "arch/arm64/kvm/Kconfig"
+
 source "arch/arm64/Kconfig.debug"
 
 source "security/Kconfig"
diff --git a/arch/arm64/kernel/asm-offsets.c b/arch/arm64/kernel/asm-offsets.c
index 49c162c..666e231 100644
--- a/arch/arm64/kernel/asm-offsets.c
+++ b/arch/arm64/kernel/asm-offsets.c
@@ -21,6 +21,7 @@ 
 #include <linux/sched.h>
 #include <linux/mm.h>
 #include <linux/dma-mapping.h>
+#include <linux/kvm_host.h>
 #include <asm/thread_info.h>
 #include <asm/memory.h>
 #include <asm/cputable.h>
diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
new file mode 100644
index 0000000..84f54f0
--- /dev/null
+++ b/arch/arm64/kvm/Kconfig
@@ -0,0 +1,54 @@ 
+#
+# KVM configuration
+#
+
+source "virt/kvm/Kconfig"
+
+menuconfig VIRTUALIZATION
+	bool "Virtualization"
+	---help---
+	  Say Y here to get to see options for using your Linux host to run
+	  other operating systems inside virtual machines (guests).
+	  This option alone does not add any kernel code.
+
+	  If you say N, all options in this submenu will be skipped and
+	  disabled.
+
+if VIRTUALIZATION
+
+config KVM
+	bool "Kernel-based Virtual Machine (KVM) support"
+	select MMU_NOTIFIER
+	select PREEMPT_NOTIFIERS
+	select ANON_INODES
+	select KVM_MMIO
+	select KVM_ARM_HOST
+	select KVM_ARM_VGIC
+	select KVM_ARM_TIMER
+	---help---
+	  Support hosting virtualized guest machines.
+
+	  This module provides access to the hardware capabilities through
+	  a character device node named /dev/kvm.
+
+	  If unsure, say N.
+
+config KVM_ARM_HOST
+	bool
+	---help---
+	  Provides host support for ARM processors.
+
+config KVM_ARM_VGIC
+        bool
+	depends on KVM_ARM_HOST && OF
+	select HAVE_KVM_IRQCHIP
+	---help---
+	  Adds support for a hardware assisted, in-kernel GIC emulation.
+
+config KVM_ARM_TIMER
+        bool
+	depends on KVM_ARM_VGIC
+	---help---
+	  Adds support for the Architected Timers in virtual machines
+
+endif # VIRTUALIZATION