Comments

KERNEL – 4.10-rc1 Out – OK with VMware, Breaks NVIDIA.. — 9 Comments

  1. Robert, are you sure VMware 12.5.2 works – is it possible you had a hacked/fixed vmnet.tar and vmmon.tar file already on the filesystem? I have a fresh Xubuntu install with 4.10rc1 loaded and I seem to be getting the same error as discussed in your previous blog posts. I’m about to patch the tar’s and I’ll report back with more details then.

    Stopping VMware services:
    VMware Authentication Daemon done
    VM communication interface socket family done
    Virtual machine communication interface done
    Virtual machine monitor done
    Blocking file system done
    make: Entering directory ‘/tmp/modconfig-z6n6fJ/vmmon-only’
    Using kernel build system.
    /usr/bin/make -C /lib/modules/4.10.0-041000rc1-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory ‘/usr/src/linux-headers-4.10.0-041000rc1-generic’
    CC [M] /tmp/modconfig-z6n6fJ/vmmon-only/linux/driver.o
    CC [M] /tmp/modconfig-z6n6fJ/vmmon-only/linux/driverLog.o
    CC [M] /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.o
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/driver.c:1283:1: warning: always_inline function might not be inlinable [-Wattributes]
    LinuxDriverSyncReadTSCs(uint64 *delta) // OUT: TSC max – TSC min
    ^~~~~~~~~~~~~~~~~~~~~~~
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/driver.c: In function ‘LinuxDriver_Ioctl’:
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/driver.c:1981:1: warning: the frame size of 1168 bytes is larger than 1024 bytes [-Wframe-larger-than=]
    }
    ^
    CC [M] /tmp/modconfig-z6n6fJ/vmmon-only/common/memtrack.o
    CC [M] /tmp/modconfig-z6n6fJ/vmmon-only/common/apic.o
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.c: In function ‘HostIFGetUserPages’:
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.c:1166:67: error: passing argument 5 of ‘get_user_pages’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
    ^~~~~~
    In file included from /tmp/modconfig-z6n6fJ/vmmon-only/./include/compat_page.h:23:0,
    from /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.c:32:
    ./include/linux/mm.h:1271:6: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’
    long get_user_pages(unsigned long start, unsigned long nr_pages,
    ^~~~~~~~~~~~~~
    /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.c:1166:13: error: too many arguments to function ‘get_user_pages’
    retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
    ^~~~~~~~~~~~~~
    In file included from /tmp/modconfig-z6n6fJ/vmmon-only/./include/compat_page.h:23:0,
    from /tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.c:32:
    ./include/linux/mm.h:1271:6: note: declared here
    long get_user_pages(unsigned long start, unsigned long nr_pages,
    ^~~~~~~~~~~~~~
    cc1: some warnings being treated as errors
    scripts/Makefile.build:293: recipe for target ‘/tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.o’ failed
    make[2]: *** [/tmp/modconfig-z6n6fJ/vmmon-only/linux/hostif.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    Makefile:1496: recipe for target ‘_module_/tmp/modconfig-z6n6fJ/vmmon-only’ failed
    make[1]: *** [_module_/tmp/modconfig-z6n6fJ/vmmon-only] Error 2
    make[1]: Leaving directory ‘/usr/src/linux-headers-4.10.0-041000rc1-generic’
    Makefile:120: recipe for target ‘vmmon.ko’ failed
    make: *** [vmmon.ko] Error 2
    make: Leaving directory ‘/tmp/modconfig-z6n6fJ/vmmon-only’
    make: Entering directory ‘/tmp/modconfig-z6n6fJ/vmnet-only’
    Using kernel build system.
    /usr/bin/make -C /lib/modules/4.10.0-041000rc1-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory ‘/usr/src/linux-headers-4.10.0-041000rc1-generic’
    CC [M] /tmp/modconfig-z6n6fJ/vmnet-only/hub.o
    CC [M] /tmp/modconfig-z6n6fJ/vmnet-only/driver.o
    CC [M] /tmp/modconfig-z6n6fJ/vmnet-only/userif.o
    CC [M] /tmp/modconfig-z6n6fJ/vmnet-only/netif.o
    /tmp/modconfig-z6n6fJ/vmnet-only/userif.c: In function ‘UserifLockPage’:
    /tmp/modconfig-z6n6fJ/vmnet-only/userif.c:117:43: error: passing argument 5 of ‘get_user_pages’ from incompatible pointer type [-Werror=incompatible-pointer-types]
    retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
    ^
    In file included from ./include/linux/highmem.h:7:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/userif.c:26:
    ./include/linux/mm.h:1271:6: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’
    long get_user_pages(unsigned long start, unsigned long nr_pages,
    ^~~~~~~~~~~~~~
    /tmp/modconfig-z6n6fJ/vmnet-only/userif.c:117:13: error: too many arguments to function ‘get_user_pages’
    retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
    ^~~~~~~~~~~~~~
    In file included from ./include/linux/highmem.h:7:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/userif.c:26:
    ./include/linux/mm.h:1271:6: note: declared here
    long get_user_pages(unsigned long start, unsigned long nr_pages,
    ^~~~~~~~~~~~~~
    cc1: some warnings being treated as errors
    scripts/Makefile.build:293: recipe for target ‘/tmp/modconfig-z6n6fJ/vmnet-only/userif.o’ failed
    make[2]: *** [/tmp/modconfig-z6n6fJ/vmnet-only/userif.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    In file included from ./include/linux/pci.h:35:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/compat_netdevice.h:27,
    from /tmp/modconfig-z6n6fJ/vmnet-only/netif.c:43:
    ./include/linux/pci_ids.h:2255:0: warning: “PCI_VENDOR_ID_VMWARE” redefined
    #define PCI_VENDOR_ID_VMWARE 0x15ad

    In file included from /tmp/modconfig-z6n6fJ/vmnet-only/net.h:38:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/vnetInt.h:26,
    from /tmp/modconfig-z6n6fJ/vmnet-only/netif.c:42:
    /tmp/modconfig-z6n6fJ/vmnet-only/vm_device_version.h:56:0: note: this is the location of the previous definition
    #define PCI_VENDOR_ID_VMWARE 0x15AD

    In file included from ./include/linux/pci.h:35:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/compat_netdevice.h:27,
    from /tmp/modconfig-z6n6fJ/vmnet-only/netif.c:43:
    ./include/linux/pci_ids.h:2256:0: warning: “PCI_DEVICE_ID_VMWARE_VMXNET3” redefined
    #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07b0

    In file included from /tmp/modconfig-z6n6fJ/vmnet-only/net.h:38:0,
    from /tmp/modconfig-z6n6fJ/vmnet-only/vnetInt.h:26,
    from /tmp/modconfig-z6n6fJ/vmnet-only/netif.c:42:
    /tmp/modconfig-z6n6fJ/vmnet-only/vm_device_version.h:73:0: note: this is the location of the previous definition
    #define PCI_DEVICE_ID_VMWARE_VMXNET3 0x07B0

    Makefile:1496: recipe for target ‘_module_/tmp/modconfig-z6n6fJ/vmnet-only’ failed
    make[1]: *** [_module_/tmp/modconfig-z6n6fJ/vmnet-only] Error 2
    make[1]: Leaving directory ‘/usr/src/linux-headers-4.10.0-041000rc1-generic’
    Makefile:120: recipe for target ‘vmnet.ko’ failed
    make: *** [vmnet.ko] Error 2
    make: Leaving directory ‘/tmp/modconfig-z6n6fJ/vmnet-only’
    Starting VMware services:
    Virtual machine monitor failed
    Virtual machine communication interface done
    VM communication interface socket family done
    Blocking file system done
    Virtual ethernet failed
    VMware Authentication Daemon done
    ^C
    adam@BC-LINPC-02:~/src/sync-engine$ vmware –version
    VMware Workstation 12.5.2 build-4638234

  2. Sorry should have included these last two lines of my terminal buffer in my last comment, too:

    adam@BC-LINPC-02:~/src/sync-engine$ uname -a
    Linux BC-LINPC-02 4.10.0-041000rc1-generic #201612252031 SMP Mon Dec 26 01:33:43 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

  3. Sorry for the abundance of comments. I would like to confirm that VMWare 12.5.2 on the 4.10rc1 kernel DOES still require patching as these instructions provide:

    http://rglinuxtech.com/?p=1838

    (See comments for a more detailed/expanded set of instructions on installation process)

    • Anyways, quick and dirty fix is to just undefine NV_ENABLE_HOTPLUG_CPU, almost nobody uses that on desktop anyway.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.