virtio: expose for non-virtualization users too
authorOhad Ben-Cohen <ohad@wizery.com>
Tue, 5 Jul 2011 14:06:14 +0000 (17:06 +0300)
committerRusty Russell <rusty@rustcorp.com.au>
Sat, 23 Jul 2011 06:50:30 +0000 (16:20 +0930)
virtio has been so far used only in the context of virtualization,
and the virtio Kconfig was sourced directly by the relevant arch
Kconfigs when VIRTUALIZATION was selected.

Now that we start using virtio for inter-processor communications,
we need to source the virtio Kconfig outside of the virtualization
scope too.

Moreover, some architectures might use virtio for both virtualization
and inter-processor communications, so directly sourcing virtio
might yield unexpected results due to conflicting selections.

The simple solution offered by this patch is to always source virtio's
Kconfig in drivers/Kconfig, and remove it from the appropriate arch
Kconfigs. Additionally, a virtio menu entry has been added so virtio
drivers don't show up in the general drivers menu.

This way anyone can use virtio, though it's arguably less accessible
(and neat!) for virtualization users now.

Note: some architectures (mips and sh) seem to have a VIRTUALIZATION
menu merely for sourcing virtio's Kconfig, so that menu is removed too.

Signed-off-by: Ohad Ben-Cohen <ohad@wizery.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
arch/ia64/kvm/Kconfig
arch/mips/Kconfig
arch/powerpc/kvm/Kconfig
arch/s390/kvm/Kconfig
arch/sh/Kconfig
arch/tile/kvm/Kconfig
arch/x86/kvm/Kconfig
drivers/Kconfig
drivers/virtio/Kconfig

index fa4d1e59deb05c21281011cc07fe5fecfd8a3fb4..9806e55f91bee93671203beeacbcf41a0050cc07 100644 (file)
@@ -49,6 +49,5 @@ config KVM_INTEL
          extensions.
 
 source drivers/vhost/Kconfig
-source drivers/virtio/Kconfig
 
 endif # VIRTUALIZATION
index 6cb60adb7b30e7641d25bf4fb4660c931ab31d3f..177cdaf835644fdf613dbafd203a8e2dcf0e08d3 100644 (file)
@@ -2493,20 +2493,4 @@ source "security/Kconfig"
 
 source "crypto/Kconfig"
 
-menuconfig VIRTUALIZATION
-       bool "Virtualization"
-       default n
-       ---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
-
-source drivers/virtio/Kconfig
-
-endif # VIRTUALIZATION
-
 source "lib/Kconfig"
index b7baff78f90ca174fd24c66675cdffe0250cb702..105b6918b23e8108402cd3babafc4969e450aa93 100644 (file)
@@ -99,6 +99,5 @@ config KVM_E500
          If unsure, say N.
 
 source drivers/vhost/Kconfig
-source drivers/virtio/Kconfig
 
 endif # VIRTUALIZATION
index f66a1bdbb61dfe127a14cb282201cb40bef33777..a21634173a6612f4491c884a989c7673c9958138 100644 (file)
@@ -37,6 +37,5 @@ config KVM
 # OK, it's a little counter-intuitive to do this, but it puts it neatly under
 # the virtualization menu.
 source drivers/vhost/Kconfig
-source drivers/virtio/Kconfig
 
 endif # VIRTUALIZATION
index bbdeb48bbf8e40fb80cdf4cd3d4c0b3e132dc6b1..748ff1920068ae679131b8b8b9f80076c2a1f104 100644 (file)
@@ -897,20 +897,4 @@ source "security/Kconfig"
 
 source "crypto/Kconfig"
 
-menuconfig VIRTUALIZATION
-       bool "Virtualization"
-       default n
-       ---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
-
-source drivers/virtio/Kconfig
-
-endif # VIRTUALIZATION
-
 source "lib/Kconfig"
index b88f9c047781321fd786622124ec4ce182c691f8..669fcdba31ea2dc55e58e215036b113b5fadf5bf 100644 (file)
@@ -33,6 +33,5 @@ config KVM
          If unsure, say N.
 
 source drivers/vhost/Kconfig
-source drivers/virtio/Kconfig
 
 endif # VIRTUALIZATION
index 50f63648ce1bb2dbe10efa36c31d3b3937d33ce2..65cf8233d25cb97a8eff7364876b57dc6cb3e0cb 100644 (file)
@@ -76,6 +76,5 @@ config KVM_MMU_AUDIT
 # the virtualization menu.
 source drivers/vhost/Kconfig
 source drivers/lguest/Kconfig
-source drivers/virtio/Kconfig
 
 endif # VIRTUALIZATION
index 52e306dd50106f7f623f2583c7c8df73e1fb4e3b..9e7a4f5b5c2ee6f2b11c026d09e3c40c10a887aa 100644 (file)
@@ -112,6 +112,8 @@ source "drivers/uio/Kconfig"
 
 source "drivers/vlynq/Kconfig"
 
+source "drivers/virtio/Kconfig"
+
 source "drivers/xen/Kconfig"
 
 source "drivers/staging/Kconfig"
index 3dd6294d10b64066b1660a33542ce2c726c2aa84..57e493b1bd209d7663821b60e29ddfd0bc719684 100644 (file)
@@ -7,6 +7,8 @@ config VIRTIO_RING
        tristate
        depends on VIRTIO
 
+menu "Virtio drivers"
+
 config VIRTIO_PCI
        tristate "PCI driver for virtio devices (EXPERIMENTAL)"
        depends on PCI && EXPERIMENTAL
@@ -33,3 +35,4 @@ config VIRTIO_BALLOON
 
         If unsure, say M.
 
+endmenu