Bug 1789545 - Can't auto-resize display on Fedora 31 guest VM
Summary: Can't auto-resize display on Fedora 31 guest VM
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: virtualbox-guest-additions
Version: 31
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-01-09 19:06 UTC by Michel Lind
Modified: 2020-06-08 15:31 UTC (History)
13 users (show)

Fixed In Version: virtualbox-guest-additions-6.1.4-3.fc30 virtualbox-guest-additions-6.1.4-3.fc31 virtualbox-guest-additions-6.1.8-2.fc32 virtualbox-guest-additions-6.1.8-2.fc31
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-25 02:46:30 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
notify-send (190.29 KB, image/png)
2020-03-27 18:34 UTC, Sergio Basto
no flags Details
Resizing in VBosSVGA mode after kernel-5.6.13 upgrade (796.24 KB, image/png)
2020-05-19 07:47 UTC, Ian Laurie
no flags Details

Description Michel Lind 2020-01-09 19:06:14 UTC
Description of problem:
Even after upgrading virtualbox-guest-additions to 6.1.0-1, my guest VM desktop does not automatically change resolution when I resize the display. Tested with both the normal GNOME and GNOME on Xorg.

Also, the display is really sluggish until I bump the video RAM to 128MB from the VirtualBox default of 26MB.

Version-Release number of selected component (if applicable):
$ rpm -q virtualbox-guest-additions
virtualbox-guest-additions-6.1.0-1.fc31.x86_64

How reproducible:
Always


Steps to Reproduce:
1. Install Fedora 31 in VirtualBox.
2. Boot
3. Resize the guest VM window

Actual results:
White bounding box, guest VM stays in original resolution


Expected results:
Resolution updated.

Additional info:
Host is VirtualBox 6.1.0 r135406 on macOS 10.15, guest is using the VMSVGA graphics controller (VirtualBox won't let me switch to another) and I tried enabling and disabling 3D acceleration

Comment 1 Francesco Giancane 2020-02-10 11:50:30 UTC
Hi,

I can also confirm the same behavior on VirtualBox 6.1.2 on Windows 10 Host and VMSVGA Video Adapter selected. No problem at all when using VBoxSVGA graphic adapter.
Guest running is Fedora 31 with latest updates.

I double-checked with Ubuntu 19.10 (where the VMSVGA works correctly both on X11 and Wayland/DRM backends) and the difference is in the VirtualBox service.
In fact, the difference is that on Fedora the /usr/bin/VBoxClient --vmsvga command is not launched. That program is in charge of auto resizing under VMSVGA graphic adapter.

If you run /usr/bin/VBoxClient --vmsvga manually, the screen goes black. I suspect it needs to be run under the daemon manager (systemd).

Comment 2 Fedora Update System 2020-02-23 05:48:25 UTC
FEDORA-2020-f6b78979e5 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2020-f6b78979e5

Comment 3 Fedora Update System 2020-02-23 05:48:56 UTC
FEDORA-2020-1635d1d46f has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-1635d1d46f

Comment 4 Fedora Update System 2020-02-24 02:07:33 UTC
virtualbox-guest-additions-6.1.4-1.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-f6b78979e5

Comment 5 Fedora Update System 2020-02-24 02:08:32 UTC
virtualbox-guest-additions-6.1.4-1.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-1635d1d46f

Comment 6 Francesco Giancane 2020-02-24 09:54:31 UTC
Hi,

Updated Fedora 30 box with latest updates and virtualbox-guest-additions-6.1.4-1.fc30.

Problem still persists.

On configuration with VMSVGA,
/usr/bin/VBoxClient --vmsvga-x11 is launched by my user (while before did not even start) but fails to resize correctly the screen.

No regressions with VBoxSVGA (guest resize still works as expected).

Comment 7 Francesco Giancane 2020-02-24 10:48:55 UTC
Hi,

Tested on a fresh installation of Fedora 31.
Updated to latest kernel, installed testing version of virtualbox-guest-additions but still the problem persists. No autoresize of the window to fullscreen so far.

Please find here some information about my box:

Kernel 5.5.5

VBoxService 6.1.4_Fedora_r136177

Comment 8 Sergio Basto 2020-02-28 04:59:30 UTC
(In reply to Francesco Giancane from comment #1)
> Hi,
> 
> I can also confirm the same behavior on VirtualBox 6.1.2 on Windows 10 Host
> and VMSVGA Video Adapter selected. No problem at all when using VBoxSVGA
> graphic adapter.
> Guest running is Fedora 31 with latest updates.
> 
> I double-checked with Ubuntu 19.10 (where the VMSVGA works correctly both on
> X11 and Wayland/DRM backends) and the difference is in the VirtualBox
> service.
> In fact, the difference is that on Fedora the /usr/bin/VBoxClient --vmsvga
> command is not launched. That program is in charge of auto resizing under
> VMSVGA graphic adapter.
> 
> If you run /usr/bin/VBoxClient --vmsvga manually, the screen goes black. I
> suspect it needs to be run under the daemon manager (systemd).

Aaaah, you give me the solution:  VBoxClient --vmsvga

Thanks , I will be back with a new package

Comment 9 Fedora Update System 2020-03-03 20:28:30 UTC
virtualbox-guest-additions-6.1.4-2.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-3561d3ec62

Comment 10 Fedora Update System 2020-03-03 20:46:45 UTC
virtualbox-guest-additions-6.1.4-2.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-8a8206dcae

Comment 11 Sergio Basto 2020-03-04 00:44:25 UTC
OK This update fix the other bug. 
About this bug, VirtualBox-6.1.4 -> settings, forces VMSVGA driver , as I always used VBOXSVGA I went and edit [1] and replace to this line with [2] and Seamless mode is activated and auto-resize works, clipboard seems is not working but is another bug ... 

with VMSVGA still don't get Seamless mode when login on windows manager and auto-resize doesn't work.


[1] 
"VirtualBox VMs/F20fresh F31/F20fresh F31.vbox"


[2]
 <Display controller="VBoxSVGA" VRAMSize="128" accelerate3D="true"/>

Comment 12 Francesco Giancane 2020-03-04 09:39:57 UTC
Hi Sergio,

Clipboard and Autoresize works correctly with the VBoxSVGA driver (which is software-rendered) while up to now did not work with the VMSVGA (hardware accelerated) driver.

I did a quick install of a fresh Ubuntu latest and on their side everything works. The VBoxClient --vmsvga is run also under systemd for resizing screen under root (gdm), while on Fedora we run it differently.

I will report back to you as soon as I update my VM.

Francesco

Comment 13 Sergio Basto 2020-03-04 09:46:57 UTC
(In reply to Francesco Giancane from comment #12)
> Hi Sergio,
> 
> Clipboard and Autoresize works correctly with the VBoxSVGA driver (which is
> software-rendered) while up to now did not work with the VMSVGA (hardware
> accelerated) driver.
> 
> I did a quick install of a fresh Ubuntu latest and on their side everything
> works. The VBoxClient --vmsvga is run also under systemd for resizing screen
> under root (gdm), while on Fedora we run it differently.
> 
> I will report back to you as soon as I update my VM.
> 
> Francesco

Hi, 

How do you install virtualbox-guest-additions on ubuntu ? is with iso provide by Oracle [1] ? 

Thanks 

[1]
https://itsfoss.com/virtualbox-guest-additions-ubuntu/

Comment 14 Francesco Giancane 2020-03-04 09:51:21 UTC
Hi Sergio,
(In reply to Sergio Basto from comment #13)
> (In reply to Francesco Giancane from comment #12)
> > Hi Sergio,
> > 
> > Clipboard and Autoresize works correctly with the VBoxSVGA driver (which is
> > software-rendered) while up to now did not work with the VMSVGA (hardware
> > accelerated) driver.
> > 
> > I did a quick install of a fresh Ubuntu latest and on their side everything
> > works. The VBoxClient --vmsvga is run also under systemd for resizing screen
> > under root (gdm), while on Fedora we run it differently.
> > 
> > I will report back to you as soon as I update my VM.
> > 
> > Francesco
> 
> Hi, 
> 
> How do you install virtualbox-guest-additions on ubuntu ? is with iso
> provide by Oracle [1] ? 

I use packages provided by Ubuntu repositories. virtualbox-guest-utils and virtualbox-guest-x11
> Thanks 
You're welcome :)
> [1]
> https://itsfoss.com/virtualbox-guest-additions-ubuntu/

Comment 15 Francesco Giancane 2020-03-05 09:29:35 UTC
(In reply to Sergio Basto from comment #11)
> OK This update fix the other bug. 
> About this bug, VirtualBox-6.1.4 -> settings, forces VMSVGA driver , as I
> always used VBOXSVGA I went and edit [1] and replace to this line with [2]
> and Seamless mode is activated and auto-resize works, clipboard seems is not
> working but is another bug ... 
> 
> with VMSVGA still don't get Seamless mode when login on windows manager and
> auto-resize doesn't work.
> 
> 
> [1] 
> "VirtualBox VMs/F20fresh F31/F20fresh F31.vbox"
> 
> 
> [2]
>  <Display controller="VBoxSVGA" VRAMSize="128" accelerate3D="true"/>

Hi Sergio,

tested again the clipboard and yes you are right it is not working.

ps aux | grep VBox shows that VBoxClient --clipboard is not running. I tried to run manually from my user in a shell and even if the daemon starts, clipboard does not work. Probably it is a bug VirtualBox side. With 6.1.2 it was working.

Comment 16 Hans de Goede 2020-03-05 14:14:55 UTC
(In reply to Francesco Giancane from comment #15)
> (In reply to Sergio Basto from comment #11)
> > OK This update fix the other bug. 
> > About this bug, VirtualBox-6.1.4 -> settings, forces VMSVGA driver , as I
> > always used VBOXSVGA I went and edit [1] and replace to this line with [2]
> > and Seamless mode is activated and auto-resize works, clipboard seems is not
> > working but is another bug ... 
> > 
> > with VMSVGA still don't get Seamless mode when login on windows manager and
> > auto-resize doesn't work.
> > 
> > 
> > [1] 
> > "VirtualBox VMs/F20fresh F31/F20fresh F31.vbox"
> > 
> > 
> > [2]
> >  <Display controller="VBoxSVGA" VRAMSize="128" accelerate3D="true"/>
> 
> Hi Sergio,
> 
> tested again the clipboard and yes you are right it is not working.

This is a known issue with Linux guests using the 6.1.4 additions. Bewteen this and the continuous crashing it feels as if 6.1.4 was not really tested with Linux guests :|

See: https://www.virtualbox.org/ticket/19336 for the upstream bug for the clipboard issue.

Comment 17 Ian Laurie 2020-03-17 01:40:16 UTC
@Hans is the game plan to stick with VBoxSVGA for Fedora or is the intention to get the VMSVGA driver working as well eventually?

With VBoxSVGA it isn't possible in the current version of the VirtualBox GUI to enable 3D as it reverts the main setting to VMSVGA.  

As suggested by Sergio in comment #11 it is possible to "doctor" the .vbox configuration file, but I am not sure if that actually does anything real, or if it is just an invalid setting that gets silently ignored.

If we're sticking with VBoxSVGA then we should ask Oracle to no longer flag the setting as an error in the GUI, and if 3D does work with that mode, ask that the ability to set 3D be reinstated in the GUI.

Comment 18 Bruno Vernay 2020-03-18 08:52:01 UTC
Same on Fedora 32 beta : No resizing with VMSVGA.

Comment 19 Sergio Basto 2020-03-19 14:19:39 UTC
dmesg says "Denying userspace vmm call type 0x000051" when call /usr/bin/VBoxClient --vmsvga when [1] , any idea ? 

[1] 

cat /etc/X11/xorg.conf.d/01-Video.conf 
Section "Device"
  BoardName    "VirtualBox Graphics"
  Driver       "vmware"
  Identifier   "Device[0]"
  VendorName   "Oracle Corporation"
EndSection

Comment 20 rgorosito@gmail.com 2020-03-19 15:20:18 UTC
virtualbox-guest-additions-6.1.4-3.fc31 from testing fix this issue for me

Comment 21 Francesco Giancane 2020-03-19 16:08:23 UTC
(In reply to Sergio Basto from comment #19)
> dmesg says "Denying userspace vmm call type 0x000051" when call
> /usr/bin/VBoxClient --vmsvga when [1] , any idea ? 
> 
> [1] 
> 
> cat /etc/X11/xorg.conf.d/01-Video.conf 
> Section "Device"
>   BoardName    "VirtualBox Graphics"
>   Driver       "vmware"
>   Identifier   "Device[0]"
>   VendorName   "Oracle Corporation"
> EndSection

Hi Sergio,

this is what happened to me too. I think it may be another system component affecting the package, or there is some build-time switch missing.

Francesco

Comment 22 Francesco Giancane 2020-03-19 16:09:26 UTC
(In reply to rgorosito from comment #20)
> virtualbox-guest-additions-6.1.4-3.fc31 from testing fix this issue for me

Hi,

do you mean clipboard issue or auto resize with vmsvga? I will create a fresh vm and test asap.

Thanks,
Francesco

Comment 23 Fedora Update System 2020-03-20 01:39:39 UTC
virtualbox-guest-additions-6.1.4-3.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 24 Fedora Update System 2020-03-20 01:47:58 UTC
virtualbox-guest-additions-6.1.4-3.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.

Comment 25 Ian Laurie 2020-03-20 03:16:34 UTC
virtualbox-guest-additions-6.1.4-3.fc31 doesn't fix the screen resizing issue with VMSVGA mode.

Comment 26 Bruno Vernay 2020-03-20 07:41:06 UTC
Still no resizing with VMSVGA in Fedora 32 too
Name         : virtualbox-guest-additions
Version      : 6.1.4
Release      : 4.fc32
Architecture : x86_6

Comment 27 Sergio Basto 2020-03-26 04:13:16 UTC
(In reply to Sergio Basto from comment #19)
> dmesg says "Denying userspace vmm call type 0x000051" when call
> /usr/bin/VBoxClient --vmsvga when [1] , any idea ? 
> 
> [1] 
> 
> cat /etc/X11/xorg.conf.d/01-Video.conf 
> Section "Device"
>   BoardName    "VirtualBox Graphics"
>   Driver       "vmware"
>   Identifier   "Device[0]"
>   VendorName   "Oracle Corporation"
> EndSection

and after add to vboxservice.service [1] still not working. 
dmesg errors [2]

[1]
ExecStartPre=-/usr/bin/modprobe vboxguest
ExecStartPre=-/usr/bin/modprobe vboxvideo
ExecStartPre=-/usr/bin/modprobe vboxsf
ExecStartPre=-/usr/bin/VBoxClient --vmsvga

[2] 
[   18.868609] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   18.868621] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.132175] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.132183] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.652622] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.652639] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.883023] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   22.883035] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   24.046761] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   24.046789] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   26.228232] Denying userspace vmm call type 0x000051
[   34.667906] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.
[   34.667914] [drm:vmw_msg_ioctl [vmwgfx]] *ERROR* Failed to open channel.

Comment 28 Sergio Basto 2020-03-27 18:34:56 UTC
Created attachment 1674128 [details]
notify-send

Please take a look on image attached, rc=VERR_INVALID_FUNCTION , HTH seems to me it is the main problem ...

Comment 29 Sergio Basto 2020-03-27 23:18:59 UTC
From https://forums.mageia.org/en/viewtopic.php?f=15&t=12828#p75137 [1] .


[1]
For resizing via the VBox window controls to work, you need to configure your VM to use either the VBoxVGA or VBoxSVGA graphics controller. With VBox 6.0, the default is the VMSVGA graphics controller, which only supports resizing using the guest system display controls.

Comment 30 Anssi Hannula 2020-04-03 13:36:06 UTC
I haven't actually tested a newer version, but I had assumed the resizing issue was because Fedora's vmware X.org driver is an old release 13.2.1 from 2016, and there have been a lot of changes since then, including in RandR (resize) support:

https://cgit.freedesktop.org/xorg/driver/xf86-video-vmware/

Comment 31 Francesco Giancane 2020-04-15 16:56:14 UTC
Dear all,

VirtualBox 6.1.6 was released today, including in changelog:
https://www.virtualbox.org/wiki/Changelog-6.1#v6

Graphics: Fixed monitor resizing and multi-monitor handling bugs on X11 guests with VMSVGA graphics adapter

Maybe the patchset that was included in Ubuntu is now upstreamed. I am ready to test it: if you please build the updated virtualbox additions (6.1.6) and push in test repository, I can report back.

Thanks,
Francesco

Comment 32 Jeff Kayser 2020-05-08 05:02:59 UTC
Running Virtualbox 6.1.6, VMSVGA driver, Fedora 32 latest packages.  Resizing still doesn't work.  Dang it.

Comment 33 Ian Laurie 2020-05-13 03:56:25 UTC
Perhaps interestingly VMSVGA mode has just broken in the Debian-Testing stream (beta for Debian 11 Bullseye).  This has only just happened with the update to the 5.6.0-1 kernel.  Debian has been one of the very few distributions (besides RHEL/CentOS) that I have experience with that has for some while worked in VMSVGA mode (Stretch and Buster).  So it's now broken even in Debian.

Comment 34 Fedora Update System 2020-05-16 21:24:42 UTC
FEDORA-2020-e6c5235aa7 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-e6c5235aa7

Comment 35 Fedora Update System 2020-05-16 21:25:55 UTC
FEDORA-2020-ca2b704d66 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-ca2b704d66

Comment 36 Fedora Update System 2020-05-16 21:26:17 UTC
FEDORA-2020-06916b7f13 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2020-06916b7f13

Comment 37 Fedora Update System 2020-05-17 03:59:09 UTC
FEDORA-2020-e6c5235aa7 has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-e6c5235aa7`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-e6c5235aa7

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 38 Fedora Update System 2020-05-17 05:05:38 UTC
FEDORA-2020-ca2b704d66 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-ca2b704d66`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-ca2b704d66

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 39 Fedora Update System 2020-05-17 05:31:02 UTC
FEDORA-2020-06916b7f13 has been pushed to the Fedora 30 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-06916b7f13`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-06916b7f13

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 40 Seth Goldin 2020-05-18 16:42:18 UTC
Tried installing those three updates from the updates-testing repo from the 17th, to no avail. Resizing still not working.

Comment 41 Ian Laurie 2020-05-19 07:36:09 UTC
For me at least, latest updates out of updates-testing now breaks resizing in VBoxVGA and VBoxSVGA mode as well.  In fact I booted to a black screen, I had to get a virtual console and kill lightdm to get a visible login.  Screen can be manually set to a resolution thankfully, or my VMs would be toast.

kernel-5.6.13-300.fc32.x86_64
virtualbox-guest-additions-6.1.8-1.fc32.x86_64

agorax$ lsmod | grep vbox
vboxguest              45056  5
vboxvideo              32768  1
drm_vram_helper        28672  1 vboxvideo
drm_kms_helper        241664  3 vboxvideo
drm                   598016  7 drm_kms_helper,drm_vram_helper,vboxvideo,drm_ttm_helper,ttm
agorax$

Comment 42 Ian Laurie 2020-05-19 07:47:50 UTC
Created attachment 1689795 [details]
Resizing in VBosSVGA mode after kernel-5.6.13 upgrade

Resizing in all VirtualBox video modes appears broken after upgrade to kernel-5.6.13.

Comment 43 Sergio Basto 2020-05-19 07:49:22 UTC
same here :( , nothing I can do

Comment 44 Sergio Basto 2020-05-19 09:55:58 UTC
if disable 3d and add file /etc/X11/xorg.conf.d/01-Video.conf  [1] -> login gnome wayland , we can configure the display size in displays of gnome-center 

is the best I can have now .

[1]
Section "Device"
  BoardName    "VirtualBox Graphics"
  Driver       "vmware"
  Identifier   "Device[0]"
  VendorName   "Oracle Corporation"
EndSection

Comment 45 Hans de Goede 2020-05-19 10:21:08 UTC
I guess you have all already updates to VirtualBox-6.1.8 as Hypervisor?  I tried updating a Fedora 32 VM to the latest Fedora kernel + guest additions on a VirtualBox-6.1.6 Hypervisor and then things work fine.

There are a bunch of error messages due to the mainline version of the vboxguest kernel module not supporting some new vmmdev request types which vboxclient now seems to make even when using VBoxSVGA as video adapter for the VM.

Interestingly enough allowing these vmmdev requests breaks resizing on top of a 6.1.6 host.

Note I'm working on a kernel fix to allow the new vmmdev request types + 2 new ioctls which VirtualBox upstream have recently added without notifying me. With those in place I hope we can get the new VMSVGA default to work, and hopefully these will also fix VboxSVGA support in combination with the latest host + guest-tools versions.

Comment 46 Hans de Goede 2020-05-19 16:23:19 UTC
Ok, good news.

First of all the issues when sticking with vboxsvga as virtual GPU, AFAICT these are being caused by "VBoxClient --vmsvga-x11" running even when using vboxsvga and that is causing issues, commenting it out from the VBoxClient-all script should fix this (note I only tried killing it, that also helps).

Then the issue of things not working with the VMSVGA virtual GPU, this is due to the upstream version of the vboxguest guest <-> host IPC driver missing support for a new ioctl. I've just finished adding this and now, it does work.

Under a X11 session it works with both "VBoxClient --vmsvga-x11" or (as root) "VBoxClient --vmsvga", under a Wayland session, "VBoxClient --vmsvga-x11" pops up an annoying error that the session is not X11 using the GNOME notifications, so very in your face..., "VBoxClient --vmsvga" OTOH does work with a Wayland session too.

So my plan is to prepare a virtualbox-guest-additions update which drops "VBoxClient --vmsvga-x11" from the VBoxClient-all, that should fix 3 issues with it:

1. It seems to mess up VboxSVGA resizing
2. It gives an annoying in your face error when running under Wayland
3. It does not work under Wayland

The plan is to replace it with a systemd service which starts "VBoxClient --vmsvga". I will probably make this hardware activated, so that systemd does not even try to run it on VboxSVGA VMs.

These virtualbox-guest-additions fixes, *combined* with the kernel fixes should fix this bug.

I plan to run a final set of tests when I'm done preparing the new virtualbox-guest-additions package, once that is done I will submit the kernel patches upstream.

I will also add the kernel-patches as downstream patches to the Fedora kernel for now, then they will get picked up with the next official Fedora kernel build.

Comment 47 Sergio Basto 2020-05-19 20:17:54 UTC
Thank you for all .

VboxSVGA is deprecated, we need an hack on F32.vbox file to use it , so we may focus just in VMSVGA ...
If we use VMSVGA (vmware drive) don't forget that I also need add /etc/X11/xorg.conf.d/01-Video.conf with [1] as oracle script does .

Don't forget, VMSVGA graphics controller only supports resizing using the guest system display controls . 

I'm testing your suggestions and I got good results ... 

[1]
Section "Device"
  BoardName    "VirtualBox Graphics"
  Driver       "vmware"
  Identifier   "Device[0]"
  VendorName   "Oracle Corporation"
EndSection

Comment 48 Sergio Basto 2020-05-20 12:15:43 UTC
(In reply to Sergio Basto from comment #47)

Just update info .

I updated virtualbox-guest-additions for el7 on RPMFusion and apparently we do not need 01-Video.conf anymore and also VMSVGA graphics controller supports resize from outside ...

Comment 49 Hans de Goede 2020-05-20 19:16:46 UTC
(In reply to Sergio Basto from comment #48)
> I updated virtualbox-guest-additions for el7 on RPMFusion and apparently we
> do not need 01-Video.conf anymore

Right, I don't think that was ever necessary for any remotely recent Xserver.

> and also VMSVGA graphics controller
> supports resize from outside ...

I guess you are using this together with the out of tree guest modules build as an akmod ?

The out-of-tree vboxguest kernel module implements the ioctl which the mainline kernel vboxguest module is missing, and since VBoxClient-all starts "VBoxClient --vmsvga-x11" and el7 does not do wayland, so yes that combination should work.

I'm finalizing testing of a new Fedora 32 virtualbox-guest-additions pkg, which runs "VBoxClient --vmsvga" as a systemd service, so that it will work with both X11 and Wayland sessions. Combined with a kernel update which I have prepared which adds the missing ioctl to the mainline vboxguest. The combination should fix all resize issues with Fedora 32 guests.

Comment 50 Fedora Update System 2020-05-20 20:11:56 UTC
FEDORA-2020-5bb17d820e has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2020-5bb17d820e

Comment 51 Fedora Update System 2020-05-20 20:11:58 UTC
FEDORA-2020-51e95104c0 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-51e95104c0

Comment 52 Hans de Goede 2020-05-20 20:19:15 UTC
Note that for VMSVGA resizing to work you VM not only needs the virtualbox-guest-additions-6.1.8-2 update, but it also needs the kernel fixes.

These fixes will be included in the 5.6.14 Fedora kernel update which is building now and will show up in updates-testing in about a day or so.

Comment 53 Ian Laurie 2020-05-21 01:44:09 UTC
I downloaded the updates from Koji.

https://koji.fedoraproject.org/koji/buildinfo?buildID=1509161 (virtualbox-guest-additions)
https://koji.fedoraproject.org/koji/buildinfo?buildID=1509099 (kernel)


agorax$ uname -r
5.6.14-300.fc32.x86_64
agorax$ rpm -qa | grep virtualbox
virtualbox-guest-additions-6.1.8-2.fc32.x86_64
agorax$

I have interesting results.  For me everything is reversed, now VMSVGA works with resizing, but VBoxSVGA and VBoxVGA modes do not.

However, to make things work before the update I had manually selected 1920x1080 resolution through the GUI's display settings.  Now when I use VBoxVGA or VBoxSVGA modes the GUI (Xfce or MATE) seem to remember that setting, and force it, meaning I get scroll bars if I am not full screen.  I can set the resolution, but it won't scale dynamically.  

Before I seem to recall the display setting in the GUI was blank for the resolution.  Of course I cannot select it to be blank.  I cannot seem to locate where this setting is actually stored, presumable in ~/.config somewhere but I cannot find it. If I were to remove this setting, perhaps I may un-stick it somehow and make it dynamic?  Short of rebuilding a VM from an ISO image not sure how to test this.

I guess in some ways it is a bit academic since VMSVGA is the way forward now, but it would be nicer if all modes could be made to work.

If someone can tell me where the resolution is stored for a user, I will try and clear the setting and retest.

Comment 54 Ian Laurie 2020-05-21 03:04:03 UTC
What I will say is that I cannot believe how fast it is to resize the display in VMSVGA mode.  

Before with VBoxSVGA mode you sometimes had to try resize a couple of times for it to "wake up" and warm to the idea of actually doing it, even when it decided to do it, it often took several seconds (on my system) for it to respond, now it is instant.  It is a *massive* step forward for Fedora VirtualBox users.

Comment 55 Fedora Update System 2020-05-21 03:42:42 UTC
FEDORA-2020-5bb17d820e has been pushed to the Fedora 30 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-5bb17d820e`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-5bb17d820e

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 56 Fedora Update System 2020-05-21 04:16:33 UTC
FEDORA-2020-2cbef85a14 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-2cbef85a14`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-2cbef85a14

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 57 Fedora Update System 2020-05-21 05:23:48 UTC
FEDORA-2020-51e95104c0 has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-51e95104c0`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-51e95104c0

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 58 Fedora Update System 2020-05-21 13:41:20 UTC
FEDORA-2020-57bf620276 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-57bf620276

Comment 59 Fedora Update System 2020-05-21 13:41:43 UTC
FEDORA-2020-0c0b5d9004 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2020-0c0b5d9004

Comment 60 Fedora Update System 2020-05-21 13:42:09 UTC
FEDORA-2020-320f05784e has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2020-320f05784e

Comment 61 Sergio Basto 2020-05-21 22:09:15 UTC
(In reply to Hans de Goede from comment #49)
> (In reply to Sergio Basto from comment #48)
> > I updated virtualbox-guest-additions for el7 on RPMFusion and apparently we
> > do not need 01-Video.conf anymore
> 
> Right, I don't think that was ever necessary for any remotely recent Xserver.
> 
> > and also VMSVGA graphics controller
> > supports resize from outside ...
> 
> I guess you are using this together with the out of tree guest modules build
> as an akmod ?

yes , I built vbox modules with akmods , and my last commit is here [1] 

[1]
https://pkgs.rpmfusion.org/cgit/free/VirtualBox.git/commit/?id=d390ad764126ad5faab01d5623c8fb2bbd026e73 


> The out-of-tree vboxguest kernel module implements the ioctl which the
> mainline kernel vboxguest module is missing, and since VBoxClient-all starts
> "VBoxClient --vmsvga-x11" and el7 does not do wayland, so yes that
> combination should work.
> 
> I'm finalizing testing of a new Fedora 32 virtualbox-guest-additions pkg,
> which runs "VBoxClient --vmsvga" as a systemd service, so that it will work
> with both X11 and Wayland sessions. Combined with a kernel update which I
> have prepared which adds the missing ioctl to the mainline vboxguest. The
> combination should fix all resize issues with Fedora 32 guests.


Excellent ! Now with the new kernel, that have your fixes, all seems works as expected  .

The problem is we need require kernels that have in-tree vboxguest updated , we need that Oracle send the updates of kernel side to main kernel or this will be a mess , VirtualBox 6.1.x doesn't work with any kernel prior of https://bodhi.fedoraproject.org/updates/FEDORA-2020-57bf620276 

Many distros also use in-tree vboxguest and vboxvideo

Comment 62 Fedora Update System 2020-05-22 03:02:19 UTC
FEDORA-2020-0c0b5d9004 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-0c0b5d9004`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-0c0b5d9004

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 63 Fedora Update System 2020-05-22 04:24:01 UTC
FEDORA-2020-57bf620276 has been pushed to the Fedora 32 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-57bf620276`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-57bf620276

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 64 Ian Laurie 2020-05-22 04:43:43 UTC
Regarding comment #53 I have 2 VMs (GNOME & KDE) that dynamically resize now in all 3 VirtualBox video modes.  

However my main VM running both MATE and Xfce does not dynamically resize in VBoxVGA or VBoxSVGA modes (but does work in VMSVGA mode).  

As explained in comment #53 I was forced to set a video resolution to make the VM usable, I do not know if that is the cause of the problem.  But dynamic resizing is not working on that machine.  It wants to "stick" to whatever I set it to in the GUI's Display settings tool, or stick to whatever the size happened to be set to when the greeter logs in.

Any ideas?

Comment 65 Fedora Update System 2020-05-22 04:54:35 UTC
FEDORA-2020-320f05784e has been pushed to the Fedora 30 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-320f05784e`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-320f05784e

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 66 Sergio Basto 2020-05-22 04:59:08 UTC
(In reply to Sergio Basto from comment #61)
> The problem is we need require kernels that have in-tree vboxguest updated ,
> we need that Oracle send the updates of kernel side to main kernel or this
> will be a mess , VirtualBox 6.1.x doesn't work with any kernel prior of
> https://bodhi.fedoraproject.org/updates/FEDORA-2020-57bf620276 

I mean the same situation also happened with VirtualBox-6.0.2 , the next main version update I will be more careful :) 


(In reply to Ian Laurie from comment #64)
> Regarding comment #53 I have 2 VMs (GNOME & KDE) that dynamically resize now
> in all 3 VirtualBox video modes.  
> 
> However my main VM running both MATE and Xfce does not dynamically resize in
> VBoxVGA or VBoxSVGA modes (but does work in VMSVGA mode).  
> 
> As explained in comment #53 I was forced to set a video resolution to make
> the VM usable, I do not know if that is the cause of the problem.  But
> dynamic resizing is not working on that machine.  It wants to "stick" to
> whatever I set it to in the GUI's Display settings tool, or stick to
> whatever the size happened to be set to when the greeter logs in.
> 
> Any ideas?

Try force vboxvideo drive on /etc/X11/xorg.conf.d/01-Video.conf [1] the idea came from Oracle official scripts somewhere, but I don't know if change anything TBH, I think Oracle want delete VBoxSVGA and VBoxVGA in future versions. 

[1]
Section "Device"
  BoardName    "VirtualBox Graphics"
  Driver       "vboxvideo"
  Identifier   "Device[0]"
  VendorName   "Oracle Corporation"
EndSection

Comment 67 Ian Laurie 2020-05-22 06:42:11 UTC
@Sergio Thanks but as you suspected it didn't fix it, actually with that /etc/X11/xorg.conf.d/01-Video.conf file I got no greeter at all, had to revert via a virtual console.

As you say, VMSVGA is the way forward so I am not going to worry about it.

Comment 68 Fedora Update System 2020-05-25 02:46:30 UTC
FEDORA-2020-51e95104c0 has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 69 Fedora Update System 2020-05-25 02:46:38 UTC
FEDORA-2020-57bf620276 has been pushed to the Fedora 32 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 70 Francesco Giancane 2020-05-25 10:30:43 UTC
Hello,

Fedora 32 here. I can confirm that after update resizing and fullscreen both work as expected with VMWSVGA. Tested Wayland and X11 Gnome session.

Thanks!

Comment 71 Ian Laurie 2020-05-26 09:00:32 UTC
Does rc7 fix Rawhide?

Comment 72 Hans de Goede 2020-05-26 12:26:04 UTC
(In reply to Ian Laurie from comment #71)
> Does rc7 fix Rawhide?

Unfortunately not. For the 5.7 kernel we are using a new gitlab merge-req based workflow for adding downstream patches. I've submitted the patches: https://gitlab.com/cki-project/kernel-ark/-/merge_requests/385

And they have been accepted but they did not make the rc7 build, a while ago I did a Cherry Trail PWM fix the same way and that showed up in the rpm changelog as:

* Tue May 19 2020 CKI@GitLab <cki-project> [5.7.0-0.rc6.20200519git642b151f45dd.1]
- 642b151f45dd rebase
- pwm: lpss: Fix get_state runtime-pm reference handling (Hans de Goede)
- Updated changelog for the release based on v5.7-rc6 ("CKI@GitLab")

As can be seen here:

https://koji.fedoraproject.org/koji/buildinfo?buildID=1511257

There is no changelog entry for the vboxguest fixes, so I believe that they are not included yet. I expect them to get picked up by the next rawhide kernel build.

Comment 73 barsnick 2020-05-27 13:08:38 UTC
(In reply to Ian Laurie from comment #64)
> However my main VM running both MATE and Xfce does not dynamically resize in
> VBoxVGA or VBoxSVGA modes (but does work in VMSVGA mode).  
> 
> As explained in comment #53 I was forced to set a video resolution to make
> the VM usable, I do not know if that is the cause of the problem.  But
> dynamic resizing is not working on that machine.  It wants to "stick" to
> whatever I set it to in the GUI's Display settings tool, or stick to
> whatever the size happened to be set to when the greeter logs in.
> 
> Any ideas?

(I came here via the kernel package's changelog.)

I wondered the same thing. Actually, I had always wondered where I could set a nicer resolution for the (old, apparently buggy) non-resizing case, because none of the offered resolutions nicely fit within my client on a 1920x1200 monitor.

I found the resolution entry in this file on the Fedora 32 guest:
~/.config/monitors.xml.orig
I deleted the <mode>..</mode> section for the "Virtual-l" monitor, rebooted, and Fedora launched with a very small default resolution. I then resized the fullscreen VirtualBox client twice, and *magic* I got a properly sized Fedora guest. Extremely nice.

Hope this helps.

Comment 74 Fedora Update System 2020-05-29 02:26:45 UTC
FEDORA-2020-2cbef85a14 has been pushed to the Fedora 31 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 75 Ian Laurie 2020-05-30 01:54:49 UTC
5.7.0-0.rc7.20200529gitb0c3ba31be3e.1.fc33.x86_64 from Koji here:

https://koji.fedoraproject.org/koji/buildinfo?buildID=1517327

Fixes Rawhide.  Works great!

Comment 76 Fedora Update System 2020-05-30 02:04:09 UTC
FEDORA-2020-5436586091 has been pushed to the Fedora 31 testing repository.
In short time you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2020-5436586091`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2020-5436586091

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 77 Fedora Update System 2020-06-02 03:13:37 UTC
FEDORA-2020-5436586091 has been pushed to the Fedora 31 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 78 Sergio Basto 2020-06-06 19:37:29 UTC
(In reply to Hans de Goede from comment #46)
> Under a X11 session it works with both "VBoxClient --vmsvga-x11" or (as
> root) "VBoxClient --vmsvga", under a Wayland session, "VBoxClient
> --vmsvga-x11" pops up an annoying error that the session is not X11 using
> the GNOME notifications, so very in your face..., "VBoxClient --vmsvga" OTOH
> does work with a Wayland session too.
> 
> So my plan is to prepare a virtualbox-guest-additions update which drops
> "VBoxClient --vmsvga-x11" from the VBoxClient-all, that should fix 3 issues
> with it:


Hans, 

The new upstream version, VirtualBox-6.1.10 , changed "VBoxClient --vmsvga-x11" to "VBoxClient --vmsvga" in the VBoxClient-all .

virtualbox-guest-additions-6.1.10-1.fc31 ATM runs VBoxClient --vmsvga in VBoxClient-all and in vboxclient.service , is what you expect ? or should we remove "VBoxClient --vmsvga" from the VBoxClient-all ? 


Thank you

Comment 79 Hans de Goede 2020-06-08 09:47:45 UTC
(In reply to Sergio Basto from comment #78)
> Hans, 
> 
> The new upstream version, VirtualBox-6.1.10 , changed "VBoxClient
> --vmsvga-x11" to "VBoxClient --vmsvga" in the VBoxClient-all .
> 
> virtualbox-guest-additions-6.1.10-1.fc31 ATM runs VBoxClient --vmsvga in
> VBoxClient-all and in vboxclient.service , is what you expect ? or should we
> remove "VBoxClient --vmsvga" from the VBoxClient-all ? 

So I've been taking a look at this this morning it seems that the new "VBoxClient --vmsvga" is intended for both X11 and Wayland sessions, it detects what type of session it is running under and depending on that behaves either like the old "VBoxClient --vmsvga-x11" or tries to launch /usr/bin/VBoxDRMClient.

Note it TRIES to launch this, because currently that is not in the Fedora package.

Sergio, I appreciate all the work you do on VirtualBox. I really appreciate it a lot, thank you for everything you do! But, can we next time please be a little bit slower in pushing out a new version ?   Esp. when you notice there are changes like this one, with unanswered questions around them ?

The update currently in updates-testing breaks resizing under VMSVGA again. I guess you have tested this only with a X11 session?

There are 4 variations of resizing which I test (and which really should be tested before pushing out an update when the upstream changelog indicates resizing changes):

1. Wayland guest session on a VM using VMSVGA graphics
2. X11     guest session on a VM using VMSVGA graphics
3. Wayland guest session on a VM using VMSVGA graphics
4. X11     guest session on a VM using VMSVGA graphics

Note that 1. reflect the defaults for the VM graphics + Fedora workstation session type and that is currently broken in updates-testing because of the new /usr/bin/VBoxDRMClient not being packaged.

I'm currently testing a fix for this and I will build a fixed -2 version (and push it to bodhi) when I'm done with this.

Comment 80 Hans de Goede 2020-06-08 10:19:19 UTC
Correction to the list of test cases, it should be:

1. Wayland guest session on a VM using VMSVGA graphics
2. X11     guest session on a VM using VMSVGA graphics
3. Wayland guest session on a VM using VboxSVGA graphics
4. X11     guest session on a VM using VboxSVGA graphics

Comment 81 Sergio Basto 2020-06-08 15:07:45 UTC
Hi,
I tested before commit , and it works for me, with qt-wayland ... ,

we may unpush all updates .

> Note that 1. reflect the defaults for the VM graphics + Fedora workstation session type and that is currently broken in updates-testing because of the new /usr/bin/VBoxDRMClient not being packaged.

ah , sorry , unfortunately svn source code is not updated for 2 months ( https://www.virtualbox.org/browser/vbox/ ) so it is more difficult to follow the modifications .

yes, please update it all. 


Thank you

Comment 82 Hans de Goede 2020-06-08 15:31:55 UTC
Quick status update:

The new VBoxDRMClient binary needs roots right, just like "VBoxClient --vmsvga" did before it. I guess the upstream version of the additions installs it suid-root.

I don't think Fedora should install it as suid-root. We ship virtualbox-guest-additions as part of the default workstation install and I would like to avoid adding another suid root binary to the default install. This also is not necessary, VBoxDRMClient works fine with the hw-activated service approach used with the 6.1.8-2 version of the additions.

So I've prepared a 6.1.10-2 update, modifying the service to start VBoxDRMClient and dropping the "VBoxClient --vmsvga" call from VBoxClient-all.

I'm running one final set of tests, then I will build the new version and push it out to bodhi.


Note You need to log in before you can comment on or make changes to this bug.