VirtualBox

Opened 14 years ago

Closed 14 years ago

Last modified 14 years ago

#5840 closed enhancement (fixed)

[feature-request] Support seamless mode with older Linux guests -> fixed in SVN after version 3.1

Reported by: Technologov Owned by:
Component: GUI/seamless Version: VirtualBox 3.1.2
Keywords: Cc:
Guest type: Linux Host type: other

Description

In the last weekend I looked at VMware Workstation 7 and realized that they support Seamless mode and dynamic resolution resizing on ancient Linux guests, such as RHEL 3.9.

This was absolutely shocking news to me, because, in contrast VBox requires some Randr X11 extensions which only exist in recent Linux guests.

Some traces of VMware source code do exist:

http://open-vm-tools.sourceforge.net/faq.php

http://ir.vmware.com/phoenix.zhtml?c=193221&p=irol-newsArticle&ID=1050251&highlight=

Supporting dyn. resolution resizing and seamless mode for older Linux guests is important for the workflow, esp. because running legacy OSes is one of major use cases for virtualization.

-Technologov, 25.12.2009

Attachments (3)

XF86Config (4.6 KB ) - added by Technologov 14 years ago.
/etc/X11/XF86Config from RHEL 3/32-bit
XFree86.0.log (18.3 KB ) - added by Technologov 14 years ago.
XFree86.0.log from RHEL 3/32-bit
RHEL3 32-bit-2010-04-01-00-01-45.log (43.2 KB ) - added by Technologov 14 years ago.
VBox log of RHEL 3/32-bit guest

Download all attachments as: .zip

Change History (18)

comment:1 by Michael Thayer, 14 years ago

Resolution: wontfix
Status: newclosed

I'm sorry, but I had a quick look here and I don't think that the effort involved is really worth the gain, given the number of higher priority things I could be doing instead. (In particular, it would mean a lot of testing, as I would be doing things which were never really intended to work in those old servers, and I can't really offload the testing to other people because it would make the feedback loop impracticably long.)

comment:2 by Michael Thayer, 14 years ago

Resolution: wontfix
Status: closedreopened
Summary: [feature-request] Support seamless mode with older Linux guests[feature-request] Support seamless mode with older Linux guests -> fixed in SVN after version 3.1

You will be glad to hear that there has been a slight change of priorities, and this feature has been added to the development branch.

comment:3 by Technologov, 14 years ago

Yes, indeed, I am very glad to hear about that, and willing to co-operate :)

comment:4 by Michael Thayer, 14 years ago

Alexey, if you are interested in testing you can find the updated Guest Additions ISO on the download page.

comment:5 by Technologov, 14 years ago

Test results for GuestAdditions 3.1.7r59489 - Old X Server:

The goal of this release was to provide seamless mode for old Linux guest OSes.

Host: WinXP + VBox 3.1.4.

Results (Red Family):

  • RHEL 3.9/32-bit - FAILS (1)
  • RHEL 3.9/64-bit - FAILS (1)
  • RHEL 4.8/32-bit - FAILS (1)
  • RHEL 4.8/64-bit - FAILS (1)
  • RHEL 5.3/32-bit - Works !
  • RHEL 5.3/64-bit - Works !

(Green Family):

  • openSUSE 10.2/32-bit - Works !
  • openSUSE 10.2/64-bit - Works !
  • openSUSE 10.3/32-bit - Works !
  • openSUSE 10.3/64-bit - VMM failure - Bug #5457 (bug unrelated to GuestAdditions)

(1) Driver installed, and mouse integration works fine, but no dynamic resolution resizing and no seamless mode. I.e. this works like the old 3.1.2 drivers.

Personally I am most interested in openSUSE 10.3 and RHEL 5 guests with seamless mode.

Thanks a lot for this feature !

--

  • "Technologov", 30.3.2010.

comment:6 by Michael Thayer, 14 years ago

Rather strange, seeing that CentOS 3.9 (32bit) is the system I used for developing and testing the feature. I will investigate further. Perhaps though you could attach an XFree86.0.log (or whatever it was called...) from one of the failing guests, as well as trying sending mode hints through VBoxManage? Thanks.

by Technologov, 14 years ago

Attachment: XF86Config added

/etc/X11/XF86Config from RHEL 3/32-bit

by Technologov, 14 years ago

Attachment: XFree86.0.log added

XFree86.0.log from RHEL 3/32-bit

by Technologov, 14 years ago

VBox log of RHEL 3/32-bit guest

comment:7 by Technologov, 14 years ago

Is this helpful?

-"Technologov"

comment:8 by Technologov, 14 years ago

How is the progress here? Any new version to test on RHEL 3 & 4 ?

-"Technologov"

comment:9 by Michael Thayer, 14 years ago

OK, I know what is happening. Up until now we have had separate drivers for XFree86 (and old X.Org versions), for X.Org 7.0/7.1 and for X.Org server 1.3+. In the development code I merged the XFree86 and X.Org 7.x drivers, but I didn't backport this change to 3.1. I will not do this, as I think the risks are not worth the benefits, but if you would like to test XFree86 with dynamic resizing I can provide you with a development version of the Additions (sometime next week after I have committed more fixes).

comment:10 by Michael Thayer, 14 years ago

Try http://www.virtualbox.org/download/testcase/VBoxGuestAdditions-r59861.iso

All the usual warnings about development code apply :)

comment:11 by Technologov, 14 years ago

Yes, thanks.

This works on both RHEL 3+4+5 (tested 32-bit guests only).

comment:12 by Technologov, 14 years ago

Few questions:

  1. Was the VMware code (links I provided) useful for you?
  1. Is this was huge amount of work compared to supporting newer distros (with Randr extension) ?
  1. So we had 3 backends in the past (XFree 4.3 + Xorg 6.7/6.8/6.9), Xorg 7/7.1, X.Org server 1.3+ and now we have two?
  1. As for me, I am quite happy to have this experimental code away from v3.1 line, but available as separate download for current users.

-Technologov

comment:13 by Michael Thayer, 14 years ago

  1. Yes. In fact, I took a closer look at the VMWare X.Org driver to see what they were doing.
  1. Most of the work involved was in studying the rather intractable X Server source code and the VMWare driver to work out how this could be done. It turned out that the older version of the RandR extension introduced in XFree86 was also designed to support adding new modes at runtime (this was intended for future extensions, as in fact happened with RandR 1.2, but is enough to provide usable support for the older distributions). In fact the amount of code required is smaller than when using the new extensions. What the older servers do lack is a way to "jig" the server to update the mode list. I used a slightly unclean hack, but which works well (we update when the mouse cursor is changed, and VBoxClient changes it briefly to a "waiting" cursor when new modes are available), while VMWare uses a cleaner but more heavy-weight approach.
  1. Yes, but that was done independently to simplify maintanance. We will probably merge the two remaining ones to reduce the amount of code to be maintained and the scope for bugs.
  1. Part of it should be in any future 3.1 release after having been tested outside of 3.1.6.

comment:14 by Frank Mehnert, 14 years ago

Resolution: fixed
Status: reopenedclosed

Fixed in 3.1.8

comment:15 by Technologov, 14 years ago

Partially Fixed in 3.1.8. Full Fix in 3.2.0.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use