[vbox-dev] [PROPOSAL] Mainline vboxguest Kernel Module for Linux

Frank Mehnert frank.mehnert at oracle.com
Mon May 29 08:59:50 GMT 2017


Alex,

On Freitag, 26. Mai 2017 01:21:29 CEST Alex Pavel wrote:
> Hello! I have been looking again at how to implement the passing of a
> config file to our Ignition first boot provisioner, which would allow us to
> fully, officially support VirtualBox. For reference, see
> https://www.virtualbox.org/pipermail/vbox-dev/2016-September/014057.html.
> 
> We would like to be able to use Guest Properties to accomplish this, but
> the Guest Additions module being out-of-tree is a big problem for us, as we
> only ship vanilla kernel (no out-of-tree modules). This leaves us with two
> options:
> 1. Mainline the VirtualBox guest modules into the Linux kernel
> (specifically vboxguest, as that exposes the guest properties interface)

there is always the problem between the compatibility of a specific VirtualBox
version and the API of the guest kernel modules. Newer VirtualBox versions
usually can live with older guest kernel modules and the other way around
but sometimes there might be changes necessary breaking this compatibility.
The problem is that a specific Linux kernel could provide only a specific
API of the VirtualBox guest kernel modules. Effort is going on to at least
submit certain parts of the VirtualBox guest kernel modules to the Linux
kernel but this work will most likely not cover your request.

> 2. Modify the hypervisor to allow the passing of data from the host to the
> guest without the need for a special driver, allowing us to access the data
> directly from userspace without having to go through a special driver and
> thus require an out of tree driver. Perhaps we could make a simpler device
> that we can only read from and can be accessed using more generic kernel
> modules that exist in the mainline kernel.

We don't intend to do this. The communication between the guest and the
VirtualBox hypervisor is done using a virtual PCI device. That device needs
a special guest driver and the VirtualBox Guest Additions implement this
driver. The IRQ of this PCI device can be used for asynchronous guest
notification. Implementing a simpler device would either result in loss
of functionality or in a hack, sorry.

> This brings us to the main question/proposal. Would it be a possibility to
> submit the VirtualBox guest modules to be merged into the mainline kernel?
> Thank you in advance.

See above.

Kind regards,

Frank
-- 
Dr.-Ing. Frank Mehnert | Software Development Director, VirtualBox
ORACLE Deutschland B.V. & Co. KG | Werkstr. 24 | 71384 Weinstadt, Germany

ORACLE Deutschland B.V. & Co. KG
Hauptverwaltung: Riesstraße 25, D-80992 München
Registergericht: Amtsgericht München, HRA 95603

Komplementärin: ORACLE Deutschland Verwaltung B.V.
Hertogswetering 163/167, 3543 AS Utrecht, Niederlande
Handelsregister der Handelskammer Midden-Niederlande, Nr. 30143697
Geschäftsführer: Alexander van der Ven, Jan Schultheiss, Val Maher



More information about the vbox-dev mailing list