Slackware-current kernel 4.14.15 and VMware workstation 12.5. vmnet/vmmon modules issues

Since my recent kernel upgrades to the 4.14. tree, got troubles using vmware workstation. Especially logs about unable to build kernels modules, VMNET and VMMON.

First… the UI would not start after install of WS12.5.9.  From logs, got the `Unable to load` classic problem.

Solution found here several month ago, and it’s still works:

# cd /usr/lib/vmware/lib/
# mv
# ln -s /usr/lib64/ .

Then I could start the  Workstation GUI, but with my new kernel, got a message about rebuilding kernel modules, makes sense:

Tested on VMware Workstation 12.5.7 and latest 12.5.9 ( got no license for 14.1 )

From net searches, seems to be related to kernel code change since 4.13 tree. It’s fixed in workstation 14.0/1 from the VMware release notes, but it’s not backported in 12.5….

To fix, got no credit but I hope to make you save some time…

Found a lot of discussion on VMware forum, with various patches and so on, finally, I ended up just cloning the repos from mkubecek on github:

It has done magic for me, cause it just worked out of the box  🙂

#clone repos
:~/vmware # git clone
Cloning into 'vmware-host-modules'...
remote: Counting objects: 639, done.
remote: Total 639 (delta 0), reused 0 (delta 0), pack-reused 639
Receiving objects: 100% (639/639), 657.40 KiB | 1.46 MiB/s, done.
Resolving deltas: 100% (445/445), done.
:~/vmware #
:~/vmware # cd vmware-host-modules/
:~/vmware/vmware-host-modules (master) #

# checkout the branch matching your release.
:~/vmware/vmware-host-modules (master) # git checkout origin/workstation-12.5.9
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) # ls
LICENSE README vmmon-only/ vmnet-only/
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) #

I’ve been to vmnet-only and vmmon-only directory then try to `make` module ( if  it won’t build here, it will not build as well with vmware tool – it was building fine 😉 )

If it builds okay, then you can replace the vmnet/vmmom from upstream.

# build the archive
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) # tar cf vmmon.tar vmmon-only
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) # tar cf vmnet.tar vmnet-only

# backup the old module source ( just in case.. )
cp /usr/lib/vmware/modules/source/vmmon.tar /usr/lib/vmware/modules/source/vmmon.tar.12.5.9.bk
cp /usr/lib/vmware/modules/source/vmnet.tar /usr/lib/vmware/modules/source/vmnet.tar.12.5.9.bk

# replace upstream module source
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) # cp vmmon.tar /usr/lib/vmware/modules/source/
:~/vmware/vmware-host-modules ((w12.5.9-k4.15)) # cp vmnet.tar /usr/lib/vmware/modules/source/


Then you can try to build and install the modules with the vmware-modconfig utility

# vmware-modconfig --console --install-all

vmare-modconfig restart vmware services at the end of the module install, all green

Starting VMware services:
   Virtual machine monitor                  [ OK ]
   Virtual machine communication interface  [ OK ]
   VM communication interface socket family [ OK ]
   Blocking file system                     [ OK ]
   Virtual ethernet                         [ OK ]
   VMware Authentication Daemon             [ OK ]
   Shared Memory Available                  [ OK ]
:/usr/lib/vmware/modules/source #

Then you can start vmware, the GUI popped up for me 🙂