Linux / Gentoo Linux

Fixing Vmware mouse flicker

After upgrading a VM from Ubuntu 9.04 to Xubuntu 9.10 I noticed that the mouse cursor works fine in a certain region (say 640×480) but outside that region, it flickers between the actual mouse position and the edge of the region.

After reinstalling X a few times and upgrading the VMware tools I found the solution: it is a bug in the newer GTK versions. Since I amd running Gentoo (unstable aka bleeding edge) I am one of the lucky owners of this new bug.

The solution seems to be to instruct VMWare Player or Workstation (I use 6.5.x) to use its bundled GTK instead of the system one:

echo "VMWARE_USE_SHIPPED_GTK=yes" >> /etc/vmware/bootstrap
Linux / Gentoo Linux

Migrating from VMware Server to KVM on Ubuntu

After being let down by VMware one too many times (this time after upgrading Ubuntu to the latest beta and finding out that kernel 2.6.30+ is not supported), I decided to move on to KVM. After all, my server has full visualization support in the CPU so why not put that to good use.

I’ve started off by making sure visualization support is enabled in the BIOS. In my case it was nowhere to be found and a quick search for the MSI KA780G (MS-7551) showed that users had varying experience finding the feature but everyone seemed to agree that a BIOS upgrade should help (most of the time). A quick ‘lshw’ showed that I indeed was using the 16.0 version of the BIOS which is more than a year old.

Next, how to flash the BIOS? I do not (like the guide from MSI suggest) have a floppy drive installed in my server nor do I have Windows installed. Luckily, updating the BIOS of the KA780G is pretty easy as it is supported by the Linux programmer ‘flashrom’:

apt-get install flashrom
flashrom -r backup.bin
flashrom -w newbios.bin

Warning: the last command actually programs the new BIOS into your computer. Make sure you have the right BIOS for your motherboard and do not interrupt the flashing.

Linux / Gentoo Linux

VMware Server 2.x on Ubuntu 9.10 (Karmic Koala)

Many have taken the plunge and updated to the new Ubuntu due for release late October: Ubuntu 9.10 code-name Karmic Koala. And even on my my 64-bit system pretty much everything updated without a hitch. Sure, I had to reinstall the nVidia drivers again for the new kernel but besides that – all was well.

Until I noticed my virtual machines were down. A manual start gave the dreaded ‘vmware is not configured for your system’ message and after invoking I found myself looking at some compile errors about the ‘vmmon’ module.

As usual, the guys at VMware haven’t released a single update for their free flag ship in half a year now. Hence they have no support for newer kernels found on Ubuntu 9.10 but also for example in Gentoo Linux.

Luckily, someone has put together a fix that you can find here. Basically it is a patch set derived from a long thread on a forum somewhere but hey – it does the job.

It does make me seriously consider moving to an alternative visualization platform like Xen or KVM which seems to be part of the kernels and as such will always work after an upgrade…

Update: this did not work for me. Either the virtual machine does not start at all and the control panel is broken as well or the entire system goes down with a kernel crash after a few minutes… Guess I am migrating to KVM after all, good bye VMware, it was fun while it lasted…

Linux / Gentoo Linux

Solving VMware HD trashing

VMware Server 1.x and 2.x are great for some quick and easy visualization. Granted, they lack some options their big brothers have (live migration for example) but overall they are fine. It is quite annoying to find one of your virtual servers trashing the IO on your host in such a way that all systems (virtual and physical) come crawling to a halt.

Note that I am not talking about actual throughput caused by a heavy loaded system. I am talking about a few hundred kilobytes to a few megabytes of disk throughput that manage to clog up the host system while the virtual system is not doing anything (no network activity, no CPU activity, no disk IO on the virtual side and still the host gets trashed).

It seems like the trashing can come from clashes between the memory manager of VMware and your virtual OS and/or the virtual drive controller and the guest disk driver. The result seems a looping ‘optimization’ which never ends and instead of speeding up the system, it completely grinds down to a halt.

The solution? Well there isn’t a clear cut solution to all the problems out there but so far this one seems to work for me. It tells VMware to allocate all the memory it could be needing (instead of allocating it when its needed) and disables the paging of memory completely (as everything fits in one go).

File /etc/vmware/config:

prefvmx.useRecommendedLockedMemSize = "TRUE"
prefvmx.minVmMemPct = "100"

Guest “.vmx” file:

sched.mem.pshare.enable = "FALSE"
mainMem.useNamedFile = "FALSE"
MemTrimRate = "0"
MemAllowAutoScaleDown = "FALSE"