VMware – Odd Behaviour with Kernel 4.18-rc1, and a Workaround?
VMware 14.1.2 worked OK with Kernel 4.17, on my Fedora 28 test system, but after updating to 4.18-rc1 the following occurred:
Modules (vmmon/vmnet) compiled OK, but – after further testing – appeared to have a runtime problem.. I applied the vmmon patches from Michal Kubeček, at https://github.com/mkubecek/vmware-host-modules/commit/3f2a6c720f68 and this also compiled cleanly.
When I ran # vmware-modconfig …. I got the following ‘error’:
# vmware-modconfig --console --install-all .......................... Received option outside of allowed bounds. Option was -1 ........................ Must use a valid mode. Use one of: ............................
So, I tried a manual compile/install of vmmon and vmnet, into /lib/modules/4.18.0-rc1/misc (after creating the ~/misc sub-directory), and then #depmod -a
and # modprobe vmmon
# modprobe vmnet
..
But then:
# service vmware start Starting vmware (via systemctl): Job for vmware.service failed because the control process exited with error code. See "systemctl status vmware.service" and "journalctl -xe" for details. [FAILED]
and:
# systemctl status vmware.service ● vmware.service - SYSV: This service starts and stops VMware services Loaded: loaded (/etc/rc.d/init.d/vmware; generated) Active: failed (Result: exit-code) since Mon 2018-06-18 01:02:04 PDT; 3min 7s ago Docs: man:systemd-sysv-generator(8) Process: 5663 ExecStart=/etc/rc.d/init.d/vmware start (code=exited, status=1/FAILURE) CGroup: /system.slice/vmware.service ├─3879 /usr/bin/vmnet-bridge -s 6 -d /var/run/vmnet-bridge-0.pid -n 0 ├─3933 /usr/bin/vmnet-netifup -s 6 -d /var/run/vmnet-netifup-vmnet1.pid /dev/vmnet1 vmnet1 ├─3953 /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet1/dhcpd/dhcpd.conf -lf /etc/vmware/vmnet1/dhcpd/dhcpd.leases -pf /var/> ├─3964 /usr/bin/vmnet-natd -s 6 -m /etc/vmware/vmnet8/nat.mac -c /etc/vmware/vmnet8/nat/nat.conf ├─3969 /usr/bin/vmnet-netifup -s 6 -d /var/run/vmnet-netifup-vmnet8.pid /dev/vmnet8 vmnet8 ├─3985 /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet8/dhcpd/dhcpd.conf -lf /etc/vmware/vmnet8/dhcpd/dhcpd.leases -pf /var/> └─4025 /usr/sbin/vmware-authdlauncher Jun 18 01:02:03 rgtest vmware[5663]: Blocking file system[FAILED] Jun 18 01:02:04 rgtest vmware[5663]: Virtual ethernet[ OK ] Jun 18 01:02:04 rgtest vmware[5663]: VMware Authentication Daemon[ OK ] Jun 18 01:02:04 rgtest systemd[1]: vmware.service: Control process exited, code=exited status=1 Jun 18 01:02:04 rgtest systemd[1]: vmware.service: Failed with result 'exit-code'. Jun 18 01:02:04 rgtest systemd[1]: Failed to start SYSV: This service starts and stops VMware services.
The userland # vmware
command did nothing, and just returned to a command prompt..
After more testing, I found that using the # /usr/lib/vmware/bin/vmware start
command actually worked, and resulted in the normal VMware graphical window appearing, and guest o/s (WinXP, and Fedora) started OK, and guest networking seemed to work correctly..
So.. It would appear that the various error messages are somewhat confused, and VMware does actually work, although not in the normal way..
Robert Gadsdon. June 18, 2018
Not sure if it’s related but I had a strange problem with Player 14.1.2 on openSUSE Leap 15.0: vmplayer always failed with exit code 1 without any error message and with not much info in logs (only some warnings about unresolved symbols). For unknown reason, when started as “vmplayer –help” (I just wanted to check if there is some –debug or –verbose option), it starts and works without a problem (once vmmon is patched for the null pointer dereference). But I also updated quite a lot of userspace packages, not only kernel so I’ll need to test some more to find out what is going on.
I had assumed at first that it was a problem with userland packages, similar to the one a few releases back – with library versions and a new release of Xorg, but when I reverted to Kernel 4.17 on the same system, everything worked as it should..
RG.
I’m trying to get 12.5.9 up on openSuse LEAP 15.0. Doing this,
“sed -i ‘/export PRODUCT_NAME=”VMware Workstation”/s/.*/&\nexport VMWARE_USE_SHIPPED_LIBS=”yes”/’ /usr/bin/vmware” gets me past segfault error and this, https://github.com/mkubecek/vmware-host-modules/archive/workstation-12.5.9.tar.gz, produces the following errors in /tmp/vmware-user,
“28T21:27:37.258-08:00| appLoader| W115: Unable to load libfontconfig.so.1 from /usr/lib/vmware/lib/libfontconfig.so.1/libfontconfig.so.1: libexpat.so.0: cannot open shared object file: No such file or directory
2018-06-28T21:27:37.258-08:00| appLoader| W115: Unable to load dependencies for /usr/lib/vmware/lib/libvmware-modconfig.so/libvmware-modconfig.so
2018-06-28T21:27:37.258-08:00| appLoader| W115: Unable to execute /usr/lib/vmware/bin/vmware-modconfig.”
Curiously, I was able to run WS 12.5.7 prior to the last update after installing opensuse 15.0 using this method, “https://stackoverflow.com/questions/50885615/vmware-workstation-12-5-9-throws-segfault-error-14-on-host-linux-4-16-12-kerne”
Thanks for the patches Michal and the website Robert!
Okay, got 12.5.9 working on openSuse 15.0 LEAP. Did a clean install followed by,
“sed -i ‘/export PRODUCT_NAME=”VMware Workstation”/s/.*/&\nexport VMWARE_USE_SHIPPED_LIBS=”yes”/’ /usr/bin/vmware”,
and then,
“cd /usr/lib/vmware/lib/libfontconfig.so.1
mv libfontconfig.so.1 libfontconfig.so.1.old
ln -s /usr/lib64/libfontconfig.so.1”
Nice website! Thanks.
Hey!
Could you please help me?
I’m on fedora 28, kernel 4.17.7-200.fc28.x86_64
using VMware workstation 14.0.0 build-6661328
installed patch https://github.com/mkubecek/vmware-host-modules/commit/3f2a6c720f68
and now i have an error
“Version mismatch with vmmon module: expecting 329.0, got 330.0.
You have an incorrect version of the ‘vmmon’ kernel module.
Try reinstalling VMware Workstation.”
Can you suggest me an older patch or something ?
Thank you!