Page 1 of 1

Change screen resolution from host doesn't work with VMSVGA and RHEL guest (patch included)

Posted: 5. Dec 2018, 13:33
by thebell
My environment:

VirtualBox: 6.0.0 beta 3 126907
Host: RHEL 7.6
Guest: RHEL 6.10

After I switch graphics controller to VMSVGA, change screen resolution from host no longer works, but still works inside the guest. I already found the reason, because the monitor name for VBoxVGA is VGA-0, but for VMSVGA it's Virtual1.

The following patch solve the problem, it maybe a wrong fix but just for a hint :mrgreen: .

Code: Select all

--- a/src/VBox/Additions/x11/VBoxClient/display.cpp
+++ b/src/VBox/Additions/x11/VBoxClient/display.cpp
@@ -124,7 +124,11 @@ static void doResize(struct DISPLAYSTATE *pState)
                "--output VGA-24 --auto --right-of VGA-23 --output VGA-25 --auto --right-of VGA-24 "
                "--output VGA-26 --auto --right-of VGA-25 --output VGA-27 --auto --right-of VGA-26 "
                "--output VGA-28 --auto --right-of VGA-27 --output VGA-29 --auto --right-of VGA-28 "
-               "--output VGA-30 --auto --right-of VGA-29 --output VGA-31 --auto --right-of VGA-30";
+               "--output VGA-30 --auto --right-of VGA-29 --output VGA-31 --auto --right-of VGA-30 "
+               "--output Virtual1 --auto --output Virtual2 --auto --right-of Virtual1 "
+               "--output Virtual3 --auto --right-of Virtual2 --output Virtual4 --auto --right-of Virtual3 "
+               "--output Virtual5 --auto --right-of Virtual4 --output Virtual6 --auto --right-of Virtual5 "
+               "--output Virtual7 --auto --right-of Virtual6 --output Virtual8 --auto --right-of Virtual7 ";
         char szCommand[sizeof(szCommandBase) + 256];
         RTStrPrintf(szCommand, sizeof(szCommand), szCommandBase, pState->pcszXrandr);
         int rcShutUpGcc = system(szCommand); RT_NOREF_PV(rcShutUpGcc);

Re: Change screen resolution from host doesn't work with VMSVGA and RHEL guest (patch included)

Posted: 5. Dec 2018, 16:58
by socratis
thebell wrote:change screen resolution from host no longer works, but still works inside the guest
When you refer to "change screen resolution from host", do you mean the drop-down menu under View » Virtual Screen N » Resize to AxB?

Re: Change screen resolution from host doesn't work with VMSVGA and RHEL guest (patch included)

Posted: 6. Dec 2018, 14:10
by thebell
Yes, I mean "drop-down menu under View » Virtual Screen N » Resize to AxB", this function will make guest addition calls xrandr to resize the screen, but the screen name is not matched after use VMSVGA.

Re: Change screen resolution from host doesn't work with VMSVGA and RHEL guest (patch included)

Posted: 6. May 2019, 15:21
by Melebius
I am experiencing a similar behavior in Xubuntu 16.04 guests on VirtualBox 6.0.6 on Windows 7.

With the default VBoxVGA option (and VBoxSVGA as well), the text screens (boot screen without splash, virtual console) of Xubuntu 16.04 are very unresponsive – they don’t refresh for several seconds after an action (e.g. typing) happens. Unlike that, the preview in the main VirtualBox window seems to update much more often. This problem does not affect the GRUB menu and early boot phase.

When I switch the graphics controller to VMSVGA, the text screens are updated smoothly. However, the auto-resize feature stops working for the GUI view. I can resize the view by changing the screen resolution in the guest’s system settings but the view does not automatically resize when I resize the window or switch to full-screen or seamless mode. This makes the seamless mode hardly usable as the view does not fill the space available on the host screen.

This problem does not affect Xubuntu 18.04 which works well for both text and GUI with the VMSVGA option.

Re: Change screen resolution from host doesn't work with VMSVGA and RHEL guest (patch included)

Posted: 6. May 2019, 16:38
by mpack
Please don't post to the beta sections about a problem with a VirtualBox release version.