Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 1 | # |
| 2 | # KVM configuration |
| 3 | # |
| 4 | |
Avi Kivity | 0ba12d1 | 2009-05-21 16:45:19 +0300 | [diff] [blame] | 5 | source "virt/kvm/Kconfig" |
Avi Kivity | 5d9b8e3 | 2009-01-04 18:04:18 +0200 | [diff] [blame] | 6 | |
Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 7 | menuconfig VIRTUALIZATION |
| 8 | bool "Virtualization" |
| 9 | ---help--- |
| 10 | Say Y here to get to see options for using your Linux host to run |
| 11 | other operating systems inside virtual machines (guests). |
| 12 | This option alone does not add any kernel code. |
| 13 | |
| 14 | If you say N, all options in this submenu will be skipped and |
| 15 | disabled. |
| 16 | |
| 17 | if VIRTUALIZATION |
| 18 | |
| 19 | config KVM |
Hollis Blanchard | 74ef740 | 2008-11-07 13:15:13 -0600 | [diff] [blame] | 20 | bool |
Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 21 | select PREEMPT_NOTIFIERS |
| 22 | select ANON_INODES |
Alexander Graf | 0e673fb | 2012-10-09 00:06:20 +0200 | [diff] [blame] | 23 | select HAVE_KVM_EVENTFD |
Hollis Blanchard | 74ef740 | 2008-11-07 13:15:13 -0600 | [diff] [blame] | 24 | |
Alexander Graf | c14dea0 | 2010-04-16 00:11:41 +0200 | [diff] [blame] | 25 | config KVM_BOOK3S_HANDLER |
| 26 | bool |
| 27 | |
Alexander Graf | 4f84139 | 2010-04-16 00:11:58 +0200 | [diff] [blame] | 28 | config KVM_BOOK3S_32_HANDLER |
| 29 | bool |
| 30 | select KVM_BOOK3S_HANDLER |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 31 | select KVM_MMIO |
Alexander Graf | 4f84139 | 2010-04-16 00:11:58 +0200 | [diff] [blame] | 32 | |
Alexander Graf | c4f9c77 | 2009-10-30 05:47:24 +0000 | [diff] [blame] | 33 | config KVM_BOOK3S_64_HANDLER |
| 34 | bool |
Alexander Graf | c14dea0 | 2010-04-16 00:11:41 +0200 | [diff] [blame] | 35 | select KVM_BOOK3S_HANDLER |
Alexander Graf | c4f9c77 | 2009-10-30 05:47:24 +0000 | [diff] [blame] | 36 | |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 37 | config KVM_BOOK3S_PR |
| 38 | bool |
| 39 | select KVM_MMIO |
Alexander Graf | 9b0cb3c | 2012-08-10 13:23:55 +0200 | [diff] [blame] | 40 | select MMU_NOTIFIER |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 41 | |
Alexander Graf | 4f84139 | 2010-04-16 00:11:58 +0200 | [diff] [blame] | 42 | config KVM_BOOK3S_32 |
| 43 | tristate "KVM support for PowerPC book3s_32 processors" |
| 44 | depends on EXPERIMENTAL && PPC_BOOK3S_32 && !SMP && !PTE_64BIT |
| 45 | select KVM |
| 46 | select KVM_BOOK3S_32_HANDLER |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 47 | select KVM_BOOK3S_PR |
Alexander Graf | 4f84139 | 2010-04-16 00:11:58 +0200 | [diff] [blame] | 48 | ---help--- |
| 49 | Support running unmodified book3s_32 guest kernels |
| 50 | in virtual machines on book3s_32 host processors. |
| 51 | |
| 52 | This module provides access to the hardware capabilities through |
| 53 | a character device node named /dev/kvm. |
| 54 | |
| 55 | If unsure, say N. |
| 56 | |
Alexander Graf | c4f9c77 | 2009-10-30 05:47:24 +0000 | [diff] [blame] | 57 | config KVM_BOOK3S_64 |
| 58 | tristate "KVM support for PowerPC book3s_64 processors" |
Alexander Graf | 00c3a37 | 2010-04-16 00:11:42 +0200 | [diff] [blame] | 59 | depends on EXPERIMENTAL && PPC_BOOK3S_64 |
Alexander Graf | c4f9c77 | 2009-10-30 05:47:24 +0000 | [diff] [blame] | 60 | select KVM_BOOK3S_64_HANDLER |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 61 | select KVM |
Alexander Graf | c4f9c77 | 2009-10-30 05:47:24 +0000 | [diff] [blame] | 62 | ---help--- |
| 63 | Support running unmodified book3s_64 and book3s_32 guest kernels |
| 64 | in virtual machines on book3s_64 host processors. |
| 65 | |
| 66 | This module provides access to the hardware capabilities through |
| 67 | a character device node named /dev/kvm. |
| 68 | |
| 69 | If unsure, say N. |
| 70 | |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 71 | config KVM_BOOK3S_64_HV |
Paul Mackerras | 9e368f2 | 2011-06-29 00:40:08 +0000 | [diff] [blame] | 72 | bool "KVM support for POWER7 and PPC970 using hypervisor mode in host" |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 73 | depends on KVM_BOOK3S_64 |
Paul Mackerras | 342d3db | 2011-12-12 12:38:05 +0000 | [diff] [blame] | 74 | select MMU_NOTIFIER |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 75 | ---help--- |
| 76 | Support running unmodified book3s_64 guest kernels in |
Paul Mackerras | 9e368f2 | 2011-06-29 00:40:08 +0000 | [diff] [blame] | 77 | virtual machines on POWER7 and PPC970 processors that have |
| 78 | hypervisor mode available to the host. |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 79 | |
| 80 | If you say Y here, KVM will use the hardware virtualization |
| 81 | facilities of POWER7 (and later) processors, meaning that |
| 82 | guest operating systems will run at full hardware speed |
| 83 | using supervisor and user modes. However, this also means |
| 84 | that KVM is not usable under PowerVM (pHyp), is only usable |
Paul Mackerras | 9e368f2 | 2011-06-29 00:40:08 +0000 | [diff] [blame] | 85 | on POWER7 (or later) processors and PPC970-family processors, |
| 86 | and cannot emulate a different processor from the host processor. |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 87 | |
| 88 | If unsure, say N. |
| 89 | |
| 90 | config KVM_BOOK3S_64_PR |
| 91 | def_bool y |
| 92 | depends on KVM_BOOK3S_64 && !KVM_BOOK3S_64_HV |
| 93 | select KVM_BOOK3S_PR |
| 94 | |
Scott Wood | d30f6e4 | 2011-12-20 15:34:43 +0000 | [diff] [blame] | 95 | config KVM_BOOKE_HV |
| 96 | bool |
| 97 | |
Hollis Blanchard | 74ef740 | 2008-11-07 13:15:13 -0600 | [diff] [blame] | 98 | config KVM_440 |
| 99 | bool "KVM support for PowerPC 440 processors" |
| 100 | depends on EXPERIMENTAL && 44x |
| 101 | select KVM |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 102 | select KVM_MMIO |
Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 103 | ---help--- |
Hollis Blanchard | 74ef740 | 2008-11-07 13:15:13 -0600 | [diff] [blame] | 104 | Support running unmodified 440 guest kernels in virtual machines on |
| 105 | 440 host processors. |
Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 106 | |
| 107 | This module provides access to the hardware capabilities through |
| 108 | a character device node named /dev/kvm. |
| 109 | |
| 110 | If unsure, say N. |
| 111 | |
Hollis Blanchard | 73e75b4 | 2008-12-02 15:51:57 -0600 | [diff] [blame] | 112 | config KVM_EXIT_TIMING |
| 113 | bool "Detailed exit timing" |
Alexander Graf | bf7ca4b | 2012-02-15 23:40:00 +0000 | [diff] [blame] | 114 | depends on KVM_440 || KVM_E500V2 || KVM_E500MC |
Hollis Blanchard | 73e75b4 | 2008-12-02 15:51:57 -0600 | [diff] [blame] | 115 | ---help--- |
| 116 | Calculate elapsed time for every exit/enter cycle. A per-vcpu |
| 117 | report is available in debugfs kvm/vm#_vcpu#_timing. |
| 118 | The overhead is relatively small, however it is not recommended for |
| 119 | production environments. |
| 120 | |
| 121 | If unsure, say N. |
| 122 | |
Alexander Graf | bf7ca4b | 2012-02-15 23:40:00 +0000 | [diff] [blame] | 123 | config KVM_E500V2 |
| 124 | bool "KVM support for PowerPC E500v2 processors" |
Alexander Graf | b2e19b2 | 2012-02-15 23:41:20 +0000 | [diff] [blame] | 125 | depends on EXPERIMENTAL && E500 && !PPC_E500MC |
Hollis Blanchard | bc8080c | 2009-01-03 16:23:10 -0600 | [diff] [blame] | 126 | select KVM |
Paul Mackerras | de56a94 | 2011-06-29 00:21:34 +0000 | [diff] [blame] | 127 | select KVM_MMIO |
Alexander Graf | 862d31f | 2012-07-31 00:19:50 +0200 | [diff] [blame] | 128 | select MMU_NOTIFIER |
Hollis Blanchard | bc8080c | 2009-01-03 16:23:10 -0600 | [diff] [blame] | 129 | ---help--- |
| 130 | Support running unmodified E500 guest kernels in virtual machines on |
Alexander Graf | bf7ca4b | 2012-02-15 23:40:00 +0000 | [diff] [blame] | 131 | E500v2 host processors. |
Hollis Blanchard | bc8080c | 2009-01-03 16:23:10 -0600 | [diff] [blame] | 132 | |
| 133 | This module provides access to the hardware capabilities through |
| 134 | a character device node named /dev/kvm. |
| 135 | |
| 136 | If unsure, say N. |
| 137 | |
Scott Wood | 73196cd3 | 2011-12-20 15:34:47 +0000 | [diff] [blame] | 138 | config KVM_E500MC |
| 139 | bool "KVM support for PowerPC E500MC/E5500 processors" |
| 140 | depends on EXPERIMENTAL && PPC_E500MC |
| 141 | select KVM |
| 142 | select KVM_MMIO |
| 143 | select KVM_BOOKE_HV |
Alexander Graf | 862d31f | 2012-07-31 00:19:50 +0200 | [diff] [blame] | 144 | select MMU_NOTIFIER |
Scott Wood | 73196cd3 | 2011-12-20 15:34:47 +0000 | [diff] [blame] | 145 | ---help--- |
| 146 | Support running unmodified E500MC/E5500 (32-bit) guest kernels in |
| 147 | virtual machines on E500MC/E5500 host processors. |
| 148 | |
| 149 | This module provides access to the hardware capabilities through |
| 150 | a character device node named /dev/kvm. |
| 151 | |
| 152 | If unsure, say N. |
| 153 | |
Michael S. Tsirkin | 3a4d5c9 | 2010-01-14 06:17:27 +0000 | [diff] [blame] | 154 | source drivers/vhost/Kconfig |
Hollis Blanchard | bbf45ba | 2008-04-16 23:28:09 -0500 | [diff] [blame] | 155 | |
| 156 | endif # VIRTUALIZATION |