Re: [PATCH V9 1/9] vhost: refine vhost and vringh kconfig

From: Michael S. Tsirkin
Date: Wed Apr 01 2020 - 12:05:50 EST


On Wed, Apr 01, 2020 at 10:29:32PM +0800, Jason Wang wrote:
> >From 9b3a5d23b8bf6b0a11e65e688335d782f8e6aa5c Mon Sep 17 00:00:00 2001
> From: Jason Wang <jasowang@xxxxxxxxxx>
> Date: Wed, 1 Apr 2020 22:17:27 +0800
> Subject: [PATCH] vhost: let CONFIG_VHOST to be selected by drivers
>
> The defconfig on some archs enable vhost_net or vhost_vsock by
> default. So instead of adding CONFIG_VHOST=m to all of those files,
> simply letting CONFIG_VHOST to be selected by all of the vhost
> drivers. This fixes the build on the archs with CONFIG_VHOST_NET=m in
> their defconfig.
>
> Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
> ---
> drivers/vhost/Kconfig | 15 +++++++++++----
> 1 file changed, 11 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/vhost/Kconfig b/drivers/vhost/Kconfig
> index 2523a1d4290a..362b832f5338 100644
> --- a/drivers/vhost/Kconfig
> +++ b/drivers/vhost/Kconfig
> @@ -11,19 +11,23 @@ config VHOST_RING
> This option is selected by any driver which needs to access
> the host side of a virtio ring.
>
> -menuconfig VHOST
> - tristate "Host kernel accelerator for virtio (VHOST)"
> - depends on EVENTFD
> +config VHOST
> + tristate
> select VHOST_IOTLB
> help
> This option is selected by any driver which needs to access
> the core of vhost.


OK so don't we need the dependency on EVENTFD though?
I recall there was a bug this was supposed to fix ...


> -if VHOST
> +menuconfig VHOST_MENU
> + bool "VHOST drivers"
> + default y
> +
> +if VHOST_MENU
>
> config VHOST_NET
> tristate "Host kernel accelerator for virtio net"
> depends on NET && EVENTFD && (TUN || !TUN) && (TAP || !TAP)
> + select VHOST
> ---help---
> This kernel module can be loaded in host kernel to accelerate
> guest networking with virtio_net. Not to be confused with virtio_net
> @@ -35,6 +39,7 @@ config VHOST_NET
> config VHOST_SCSI
> tristate "VHOST_SCSI TCM fabric driver"
> depends on TARGET_CORE && EVENTFD
> + select VHOST
> default n
> ---help---
> Say M here to enable the vhost_scsi TCM fabric module
> @@ -43,6 +48,7 @@ config VHOST_SCSI
> config VHOST_VSOCK
> tristate "vhost virtio-vsock driver"
> depends on VSOCKETS && EVENTFD
> + select VHOST
> select VIRTIO_VSOCKETS_COMMON
> default n
> ---help---
> @@ -56,6 +62,7 @@ config VHOST_VSOCK
> config VHOST_VDPA
> tristate "Vhost driver for vDPA-based backend"
> depends on EVENTFD
> + select VHOST
> select VDPA
> help
> This kernel module can be loaded in host kernel to accelerate
> --
> 2.20.1
>