https://www.techandme.se/how-to-install-vmware-workstation-12-on-linux-4-10-kernel/INSTALL VMWARE AS NORMAL
In our case we installed VMware with a bundle file. To get the bundle to run you have to chmod a+x it to be executable then run this as root:
wget https://download3.vmware.com/software/wkst/file/VMware-Workstation-Full-12.5.9-7535481.x86_64.bundle
$~: sudo ./VMware-Workstation-Full-12.5.9-7535481.x86_64.bundle
INSTALL GCC AND BUILD-ESSENTIALS$~: sudo apt install gcc build-essential
It should install gcc 6.3.0. You can check by typing this in CLI
$~: gcc -v
PATCH VMWAREIt may seem hard, but really, it’s easy. It’s all about patching the VM installation files. Though we want to say; do it at your own risk.
$~: sudo tar -xf /usr/lib/vmware/modules/source/vmmon.tar
$~: xed vmmon-only/linux/hostif.c
In vmmon-only/linux/hostif.c, around line 1162, change
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
#else
retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
numPages, 0, 0, ppages, NULL);
#endif
to
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, ppages, NULL);
#else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
#else
retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
numPages, 0, 0, ppages, NULL);
#endif
#endif
A por otro módulo
$~: sudo tar -cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only/
$~: sudo tar -xf /usr/lib/vmware/modules/source/vmnet.tar
$~: sudo xed vmnet-only/userif.c
In vmnet-only/userif.c, around line 113, change#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
#else
retval = get_user_pages(current, current->mm, addr,
1, 1, 0, &page, NULL);
#endif
to
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 10, 0)
retval = get_user_pages(addr, 1, 0, &page, NULL);
#else
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
#else
retval = get_user_pages(current, current->mm, addr,
1, 1, 0, &page, NULL);
#endif
#endif
Crear el módulo
$~: sudo tar -cf /usr/lib/vmware/modules/source/vmnet.tar vmnet-only/
RUN VMWARE AGAINNow just start VMware as normal and it should install vmon and vmnet correctly.
Este parche lo testado con el vmware que hay para bajar en las instrucciones, lo único diferente es el GGC que tengo la "5.4.0 20160609", el progama arrancaa perfectamente y no se queja
Linux mint-EP35-DS3 4.10.0-38-generic #42~16.04.1-Ubuntu