Kernel – 4.6 Final – OK with Patched VMware and NVIDIA..

Installed Kernel 4.6 Final on the test system, and the patched versions of VMware 12.1.0 (vmnet and vmmon patched) and NVIDIA driver 364.19 all compile OK..     Details of changes since -rc7 are here:  http://lkml.iu.edu/hypermail/linux/kernel/1605.1/05030.html , and VMware / NVIDIA patch details are in a previous article – http://rglinuxtech.com/?p=1709

$ uname -a
Linux rgtest 4.6.0 #1 SMP Mon May 16 10:55:27 PDT 2016 x86_64 x86_64 x86_64 GNU/Linux

Robert Gadsdon.   May 16, 2016.


Comments

Kernel – 4.6 Final – OK with Patched VMware and NVIDIA.. — 4 Comments

  1. when i compile the VMware Modules, i don’t even get as far as the vmmon and vmnet modules, it errors out at vmblock

    /var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only/linux/inode.c:69:16: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
    .get_link = InodeOpFollowlink,
    ^
    /var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only/linux/inode.c:69:16: note: (near initialization for ‘LinkInodeOps.get_link’)
    cc1: some warnings being treated as errors
    /usr/src/linux-4.6.0-gentoo/scripts/Makefile.build:291: recipe for target ‘/var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only/linux/inode.o’ failed
    make[3]: *** [/var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only/linux/inode.o] Error 1
    make[3]: *** Waiting for unfinished jobs….
    /usr/src/linux-4.6.0-gentoo/Makefile:1428: recipe for target ‘_module_/var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only’ failed
    make[2]: *** [_module_/var/tmp/portage/app-emulation/vmware-modules-308.1.1/work/vmblock-only] Error 2
    make[2]: Leaving directory ‘/usr/src/linux-4.6.0-gentoo’
    Makefile:146: recipe for target ‘sub-make’ failed
    make[1]: *** [sub-make] Error 2
    make[1]: Leaving directory ‘/usr/src/linux-4.6.0-gentoo’
    Makefile:120: recipe for target ‘vmblock.ko’ failed
    make: *** [vmblock.ko] Error 2

    • this patch solves that

      — a/vmblock-only/linux/inode.c 2016-05-16 23:42:41.379866914 -0400
      +++ b/vmblock-only/linux/inode.c 2016-05-16 23:41:46.952863118 -0400
      @@ -65,10 +65,10 @@
      struct inode_operations LinkInodeOps = {
      #endif
      .readlink = InodeOpReadlink,
      -#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 4, 99)
      – .get_link = InodeOpFollowlink,
      -#else
      – .follow_link = InodeOpFollowlink,
      +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 22)
      + .follow_link = InodeOpFollowlink
      +#elif LINUX_VERSION_CODE < KERNEL_VERSION(4, 5, 0)
      + .follow_link = InodeOpFollowlink
      #endif
      };

    • The vmblock kernel module should no longer be necessary, as VMware 12 uses vmware-vmblock-fuse, if fuse is available.. ( /usr/lib/vmware/lib/libvmware-vmblock-fuse.so )

      RG.

Leave a Reply

Your email address will not be published. Required fields are marked *