Skip to content

v1.0.4 - The VMware Update

Compare
Choose a tag to compare
@klange klange released this 18 Feb 14:43
· 3162 commits to master since this release

This release has been superseded by a point release, v1.1.0.

With apologies for putting out such a big update only a few days after the last one, this update is focused on providing better support for VMware. See here for instructions on using ToaruOS in VMware. There are also many general improvements and bug fixes in this release.

VMware: Fixes for several device drivers have been implemented to support VMware, including the VMware display driver, the ATA/ATAPI driver, network drivers, network subsystem, PCI subsystem, and more.

VMware Mouse: Support for the VMware backdoor absolute mouse has been added. This is supported in both VMware and QEMU and is enabled by default. In these environments, a panel widget will be displayed to toggle between absolute and relative modes as neither VM seems to provide an interface option for this (perhaps Workstation does, but I only have access to Player).

ISO9660: A very important bugfix, as well as major performance improvement have both been implemented in the ISO9660 filesystem driver.

ToaruPaint: The painting app now uses a damage region system for more efficient drawing.

Network: The network subsystem now has better support for gateways, ARP, and DHCP. It is still not recommended that ToaruOS be run on a live network, mostly due to an insufficient TCP stack. We are working to improve the real-world usability of ToaruOS's network stack.

pcnet: This driver now gracefully handles failures to initialize. Unfortunately, it does not yet work in VMware, but it will at least no longer lock up there...

e1000: Support for other PCI IDs has been added. This enables the remaining Intel PRO/1000 options in VirtualBox and allows the driver to work in VMware (when it is set to use the e1000 device).

ATAPI: A bug in ATAPI polling which caused VMware to lock up has been fixed.

PCI: A bug in recursive PCI bus scanning which caused issues in VMware has been fixed.

Video: An ioctl has been added to the framebuffer to support setting the display mode. A bug in the vmware driver that used the framebuffer size instead of the vram size to calculate how much RAM to map has been fixed, allowing VMware guests to set larger modes.

Panel: The panel should no longer crash when /dev/mixer is not available, so you can disable the audio subsystem and still have a working desktop.

QEMU: An experimental system for notifying the guest of the QEMU window size has been added when using the SDL display backend under Linux. See util/qemu-harness.py for more details. A harness monitors the size of the SDL window and informs the guest over the serial port. The guest runs a script which monitors the serial port for these updates and performs mode setting. The harness then sends a signal to QEMU to have it disable scaling. This provides a very similar, if not better, experience to VirtualBox's display size guest addition.

Known Issues

The VMware mouse driver may report incorrect positioning in VMware if the host window is moved. Resizing the window, and various other WM actions, should resolve the issue. QEMU does not exhibit this bug. It is believed this is an issue with VMware expecting additional signaling mechanisms from guests that enable the absolute mouse cursor, and this issue may not be resolvable on our end without significant effort.