Thursday, April 23, 2015

VMWare Workstation 10 on Linux Kernel 3.18

I finally decided to take a risk to upgrade to the latest update on my main desktop  and everything went OK, until i restarted my machine. VMWare modules didn't work as usual, but normally a rebuild should fix this issue. Unfortunately, not this time. There was an error thrown when i tried to recompile.

If you have VMWare Workstation 11.0, you won't get this problem, but if you are still running 10.x, here's what you can do:
  • Make a backup of /usr/lib/vmware/modules/source/vmnet.tar
  • Go to /usr/lib/vmware/modules/source
  • Extract vmnet.tar (tar xvf vmnet.tar)
  • Change to vmnet-only directory (cd vmnet-only)
  • Open netif.c using your editor (nano netif.c)
  • Find this line 
dev = alloc_netdev(sizeof *netIf, deviceName, VNetNetIfSetup);
  • Change it into :
dev = alloc_netdev(sizeof *netIf, deviceName, NET_NAME_USER, VNetNetIfSetup);
  • Go up one directory (cd ..)
  • Recreate vmnet.tar (tar cvf vmnet.tar vmnet-only/)
  • Recompile VMWare (vmware-modconfig --console --install-all)
  • Optionally, remove vmnet-only directory (rm -rf vmnet-only)
  • It should be working again