VirtualBox display VBoxSVGA vs VMSVGA

Is there something in Manjaro's handling of display type that needs adjustment?

In this topic (original title speculated on a connection between ssd flag and chosen display driver)

The user raised the question on the VirtualBox forum and got the message that VBoxSVGA is for Windows and VMSVGA is for Linux.

However for quite some time I have had the custom of choosing VBoxSVGA because using this setup the vm adapts to changes in window size.

Another thing mentioned through the replies on the vbox forum thread is that vboxservice is obsolete - I couldn't figure out if this was relating to all Linux guests or just the Linux Mint the user had issues with.

What are your thoughts?


2020-01-05T13:00:00Z
It seems there is more questions than answers.

As I understand, this is a service to load some modules in the guest and sync time.
This service exists in Arch. A service can be created from anyone for anything.
I assume there must be a similar service or other auto-install feature on Ubuntu-related systems, as designed from their developers.
Anyway, for a guest, you should read instructions from the guest provider, not the host :wink:.

I suppose the (Greek) customer support guy is specialized on Virtual Box, so we should assume he knows better (being Greek is sort of confidence :stuck_out_tongue_winking_eye:).
But as he himself said,

The Arch community is one of the most knowledgeable out there, don't know too much about the Manjaro one...

So we may need to test this driver for some time and see how it behaves in several host/guest combinations.
We know better, after all! :wink::sunglasses:

1 Like
  • When I was 15 I thought my parents didn't know anything
  • When I was 25 I was surprised how much they had learned
  • At age 59 - I realize how little I know

I just realized how much I didn't remember from the Arch wiki.

https://wiki.archlinux.org/index.php/VirtualBox#Installation_steps_for_Arch_Linux_guests


Going over the Arch Wiki - too much time has gone by :slight_smile: .

The following is the result of testing the VirtualBox Client on a live ISO (no installation) - using VMSVGA display emulator.

/var/log/pacman.log reveals that the necessary packages are installed correct. Most notably

  • xf86-input-vmware
  • xf86-input-vmmouse
  • xf86-video-vmware
  • open-vm-tools
  • KERNEL-virtualbox-guest-modules

The service vboxservice.service is an inherited Arch service which load the necessary modules vboxguest vboxsf vboxvideo and synchronize time on guest start.

When a VirtualBox VM loads Manjaro from ISO seamless mode is not available (the vm adapting to window resize) because the package virtualbox-guest-utils is not installed.

Starting the service and installing the guest-utils then running the provided script VBoxClient-all yields with a message on failing to connect to the VirtualBox kernel module - and as such the seamless window cannot be utilized.

Loading the modules manually and rerunning the VBoxClient-all script does not work either but results in the same message.

The script contains a test for the device /dev/vboxclient and that test does not fail as the message is repeated several times for VBoxClient actions in the script.

As the above is read from the Arch Wiki - and supposedly works within an Arch guest - the question is - what makes Manjaro different in this regard?


Testing the script commands - one by one

$ VBoxClient --clipboard
$ VBoxClient --draganddrop
$ VBoxClient --seamless
$ VBoxClient --display
$ VBoxClient --checkhostversion
$ VBoxClient --vmsvga-x11

Only the --display and the --vmsvga-x11 returns without the connection error.

Conclusion

2019-12-03T13:23:00Z

After a manual install of Arch Linux in a VirtualBox VM I am know confident that the current display emulator recommendation for a Manjaro VirtualBox guest is the best.

Following the Arch Wiki (which do not recommend either) - but choosing a VMSVGA emulation - yields the same results as Manjaro. No matter what, the display do not adapt to changes in window size.

Changing the display emulation from VMSVGA to VBoxSVGA changed the VM display behavior on next boot.

So no matter what the wise folks at VirtualBox Forum says - for an Arch based distribution - the wise choice is VBoxSVGA.

So the answer to the question above- what makes Manjaro different in this regard is: Nothing! A Manjaro install behaves as an Arch install with respect to the testpoints of a VirtualBox install and the used display emulation.

Now that can change in the future - so if in doubt - test it.

1 Like

Accoring to the manual:

  • VBoxSVGA: The default graphics controller for new VMs that use Windows 7 or later. This graphics controller improves performance and 3D support when compared to the legacy VBoxVGA option.
  • VMSVGA: Use this graphics controller to emulate a VMware SVGA graphics device. This is the default graphics controller for Linux guests.

So VMSVGA tries to present a VMWare device to the guest. Perhaps in the hopes of better out-of-the-box support?

1 Like

I am completely mystified - but fact is, using Manjaro and Arch - dynamic adaption of monitor size to window size do not work with VMSVGA only VBoxSVGA.

13 posts were split to a new topic: ISO 18.1.5 - loading time

I already sent this here before this topic got split, but this happens because of https://bugs.archlinux.org/task/65053?project=5&string=virtualbox-guest-dkms.

For me, VMSVGA on VBox 6.1.2 gets a black screen for Manjaro guest. I have to choose VBoxSVGA. By doing so, the VBox setting warns that I am not using the recommended controller. There appears a conflict somewhere.

In my experience, that warning can be safely ignored. It would be nice if upstream would fix the issue (by changing one line of code) but I doubt that will happen.

1 Like

It is correct there is a warning - for the time being you can ignore it - I think it is a little mysterious why VirtualBox devs insist you should use a VMSVGA.

But yet again Arch and be inheritance Manjaro - has this weird issue - and I think it is because the display driver is included in the kernel.

The kernel includes vboxvideo (not sure whether it is VBoxVGA or SVGA?) and vmwgfx (VMSVGA?).
From my understanding, this means that VBox uses the built-in kernel drivers and not the ones included in the additions.

VMSVGA works well here, and with VBox 6.1.2 the window resizing issue seems to be fixed too; from changelog:

Linux guest: improve resize and multi-monitor handling for VMs using VMSVGA (known remaining issue: do not disable a monitor "in the middle", causes confusion)

I can't reproduce resizing working with VMSVGA using VBox 6.1.2 on Manjaro testing. I'm guessing this assumes that you're running the official guest extensions.

Yes, that's entirely possible.
Maybe I should check this with a custom kernel without the drivers...

Did you use Manjaro's guest modules, or VBox's guest additions? I had to remove the former and install the latter for shared folders to work. Not sure if that's related to the controller.

You are referring to VBox's guest additions? That's what I am using, but I get a black screen

1 Like

The screen resize does not work with an Arch guest using VMSVGA.

Running on a Manjaro host.

I'm not sure how that is supposed to help. The in-kernel vboxguest module simply doesn't support resizing. Arch doesn't build VBox's vboxguest module for kernels since 4.16 and relies on the in-kernel module instead.

Will be fixed in Manjaro ISOs 19.x. Mhwd was detecting VMSVGA as Vmware and started the Vmware guest additions instead.

You're right.
Probably because the in-kernel vboxguest module is older than the normal Additions' one - and with the Additions' module, resizing doesn't work either here.

Sure did last time I tried it (before implementing video-virtualmachine in mhwd).

Maybe because I'm running this VMSVGA Manjaro guest on a MacOS host?
It's not an issue for me because I normally do not use auto-resize, I was just investigating what could be the cause (kernels 4.19 and 5.4, both with Manjaro modules + guest-utils as well as with VirtualBox' Additions).

Forum kindly sponsored by