VMware Workstation and OpenSUSE 12.2

Perhaps you've seen this error:

Version mismatch with VMCI driver: expecting 11, got 10.

I get this every time I upgrade a kernel, and this is how I fix it.

What is happening:

  1. When you apply a kernel update, new VMware modules are linked into /lib/modules/$KERNEL_VERSION/weak-updates/updates .
  2. When you compile new modules through vmware-modconfig, they get dropped into /lib/modules/$KERNEL_VERSION/misc.
  3. When Workstation launches, it is the modules in 'weak-updates' that get loaded, and they're the wrong version.
  4. You start a VM, get the error message even though you know you compiled the right ones.
  5. You start googling.

The fix is pretty straight forward, but it does have to be done every time you update kernel versions.

  1. Close Workstation if it is open.
  2. Stop the vmware service, service vmware stop.
  3. Check lsmod to ensure the VMware modules are not loaded (vmmon, vmci, vmnet, vsock, vmblock)
    1. If they are loaded, check ps output to see if any vmnet and vmware- processes are running. Kill those processes. Once those processes are unloaded rmmod each of the listed modules.
  4. Compile the new modules through vmware-modconfig --console --install-all
  5. Remove the modules from /lib/modules/$KERNEL_VERSION/weak-updates/updates
  6. Restart the vmware service, service vmware start.
  7. Launch Workstation.