[PATCH] vbox: add HAS_IOPORT dependency

Arnd Bergmann posted 1 patch 11 months ago
drivers/virt/vboxguest/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] vbox: add HAS_IOPORT dependency
Posted by Arnd Bergmann 11 months ago
From: Arnd Bergmann <arnd@arndb.de>

The vboxguest driver depends on port I/O for debug output:

include/asm-generic/io.h:626:15: error: call to '_outl' declared with attribute error: outl() requires CONFIG_HAS_IOPORT
  626 | #define _outl _outl
include/asm-generic/io.h:663:14: note: in expansion of macro '_outl'
  663 | #define outl _outl
      |              ^~~~~
drivers/virt/vboxguest/vboxguest_utils.c:102:9: note: in expansion of macro 'outl'
  102 |         outl(phys_req, gdev->io_port + VMMDEV_PORT_OFF_REQUEST);
      |         ^~~~

Most arm64 platforms don't actually support port I/O, though it is
currently enabled unconditionally. Refine the vbox dependency to allow
turning it HAS_IOPORT off in the future when building for platforms
without port I/O and allow compile-testing on all architectures.

Fixes: 5cf8f938bf5c ("vbox: Enable VBOXGUEST and VBOXSF_FS on ARM64")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/virt/vboxguest/Kconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/virt/vboxguest/Kconfig b/drivers/virt/vboxguest/Kconfig
index 11b153e7454e..eaba28c95e73 100644
--- a/drivers/virt/vboxguest/Kconfig
+++ b/drivers/virt/vboxguest/Kconfig
@@ -1,7 +1,8 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config VBOXGUEST
 	tristate "Virtual Box Guest integration support"
-	depends on (ARM64 || X86) && PCI && INPUT
+	depends on (ARM64 || X86 || COMPILE_TEST) && PCI && INPUT
+	depends on HAS_IOPORT
 	help
 	  This is a driver for the Virtual Box Guest PCI device used in
 	  Virtual Box virtual machines. Enabling this driver will add
-- 
2.39.5
Re: [PATCH] vbox: add HAS_IOPORT dependency
Posted by Maciej W. Rozycki 10 months, 4 weeks ago
On Wed, 22 Jan 2025, Arnd Bergmann wrote:

> Most arm64 platforms don't actually support port I/O, though it is
> currently enabled unconditionally. Refine the vbox dependency to allow
> turning it HAS_IOPORT off in the future when building for platforms
          ^^
 Leftover from an in-progress version of the text?

  Maciej
Re: [PATCH] vbox: add HAS_IOPORT dependency
Posted by Hans de Goede 11 months ago
Hi,

On 22-Jan-25 7:54 AM, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@arndb.de>
> 
> The vboxguest driver depends on port I/O for debug output:
> 
> include/asm-generic/io.h:626:15: error: call to '_outl' declared with attribute error: outl() requires CONFIG_HAS_IOPORT
>   626 | #define _outl _outl
> include/asm-generic/io.h:663:14: note: in expansion of macro '_outl'
>   663 | #define outl _outl
>       |              ^~~~~
> drivers/virt/vboxguest/vboxguest_utils.c:102:9: note: in expansion of macro 'outl'
>   102 |         outl(phys_req, gdev->io_port + VMMDEV_PORT_OFF_REQUEST);
>       |         ^~~~
> 
> Most arm64 platforms don't actually support port I/O, though it is
> currently enabled unconditionally. Refine the vbox dependency to allow
> turning it HAS_IOPORT off in the future when building for platforms
> without port I/O and allow compile-testing on all architectures.
> 
> Fixes: 5cf8f938bf5c ("vbox: Enable VBOXGUEST and VBOXSF_FS on ARM64")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Thanks, patch looks good to me:

Reviewed-by: Hans de Goede <hdegoede@redhat.com>

Regards,

Hans


> ---
>  drivers/virt/vboxguest/Kconfig | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/virt/vboxguest/Kconfig b/drivers/virt/vboxguest/Kconfig
> index 11b153e7454e..eaba28c95e73 100644
> --- a/drivers/virt/vboxguest/Kconfig
> +++ b/drivers/virt/vboxguest/Kconfig
> @@ -1,7 +1,8 @@
>  # SPDX-License-Identifier: GPL-2.0-only
>  config VBOXGUEST
>  	tristate "Virtual Box Guest integration support"
> -	depends on (ARM64 || X86) && PCI && INPUT
> +	depends on (ARM64 || X86 || COMPILE_TEST) && PCI && INPUT
> +	depends on HAS_IOPORT
>  	help
>  	  This is a driver for the Virtual Box Guest PCI device used in
>  	  Virtual Box virtual machines. Enabling this driver will add