Jan 262012
 

NOTICE: It seems some people are trying this patch on 3.4 kernels shipped with fedora. *This is only for 3.3 maximum* if you want a patch for 3.4 you’ve to go to this post in this blog. I always do new posts when there are new kernels, I don’t update previous ones.

UPDATE 4: Seems there was another slight problem with the 7.x patch so I’ve fixed it by hand. As i had to edit the patch itself by hand I hope it’s still applying (coudn’t test it as I don’t have the sources). So if you have downloaded the 7.1.5 (3.15) patch before now please download it again and patch from a clean file, else add a linux/pci.h as include in that line giving error and put the define at new line.

UPDATE 3: I’ve fixed a slight issue in the patch for 7.1.x which could prevent it from working on not fedora kernels (so with the normal numbering of vanilla kernels)

UPDATE 2: Thanks to Ariel, who backported this patch for 7.1.x, I’ve added here a patch to bring these fixes to the previous release series of the vmware player and workstation. The script uses the .5 versions (the last released) but you can change it for previous versions too (for sure for .4, as the kernel modules sources didn’t change)

UPDATE: Looks like a patch which I did previously for 3.2 wasn’t needed anymore for 3.3 (seems to be a 3.2 specific problem) and so I didn’t include it as I’m just running 3.3-rc1. Now I’ve included it again and updated the archive so if you’ve downloaded it and had problems you can get a proper version now.

Looks like VMware upgraded their virtualization solution and fixed some issues of their modules, but not all. So some patches which were already in the previous patch are still needed. I don’t know if this lack of support for recent linux kernel (even released as stable since more than half a month and that some distributions are starting to send to users) is, as the user who notified me of the new release of VMware said, done on purpose. In any case nothing changes so I’ve made a simple package with the only patch still needed on vmnet to make it work on the linux kernel 3.2 and 3.3.

NOTE: If you had used a patch in the past (using the patching script) the installer of VMware workstation/player won’t remove the file which tells the script that the sources are not patched, so, In case you get an error saying that your sources are already patched, remove the file /usr/lib/vmware/modules/source/.patched . This will tell the script that the sources are actually not patched. Another solution is restoring the backup before the upgrade.

You can grab the patch here:

vmware workstation 8.0.2 / player 4.0.2 fix for linux 3.2+

vmware workstation 7.1.5 / player 3.1.5 fix for linux 3.2+ (patch by Ariel)

Attached Files:

  420 Responses to “VMware Workstation 8.0.2 7.1.5 / Player 4.0.2 3.1.5 fix for linux kernel 3.2 and 3.3”

  1. this the final output when i run this patch in fedora wih kernel 3.2 and vmware 8.0.2

    make[1]: Leaving directory `/usr/src/linux-3.2.2′
    make -C $PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= postbuild
    make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make[1]: .ינכדע רבכ `postbuild’
    make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    cp -f vmmon.ko ./../vmmon.o
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Built vmmon module
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only’
    make -C /lib/modules/3.2.2/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.2.2′
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/bridge.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/procfs.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/filter.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac_compat.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
    /tmp/vmware-root/modules/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ undeclared here (not in a function)
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/filter.o] 1 הלקת
    make[2]: *** …ומייתסנ םרטש תודובעל ןיתממ
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:/tmp/vmware-root/modules/vmnet-only/userif.c: In function ‘VNetCsumCopyDatagram’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: initialization from incompatible pointer type [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: (near initialization for ‘vnetNetifOps.ndo_validate_addr’) [enabled by default]

    /tmp/vmware-root/modules/vmnet-only/userif.c:520:3: error: incompatible type for argument 1 of ‘kmap’
    include/linux/highmem.h:48:21: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    /tmp/vmware-root/modules/vmnet-only/userif.c:523:3: error: incompatible type for argument 1 of ‘kunmap’
    include/linux/highmem.h:54:20: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] 1 הלקת
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/userif.o] 1 הלקת
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] 2 הלקת
    make[1]: Leaving directory `/usr/src/linux-3.2.2′
    make: *** [vmnet.ko] 2 הלקת
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Unable to install vmnet

    • It seems in your case the patch didn’t get applied. Check that you had a clean directory when you upgraded vmware (the file which is used by the patch script to check for patch application doesn’t get removed from the uninstaller) and that the patch worked correctly.

  2. הלקת=error

  3. Hello,

    Unfortunately, the patch doesn’t work on VMWare Workstation 8.0.2 and Linux Kernel 3.2.1
    It ended up like this
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only’
    make -C /lib/modules/3.2.1-smp/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.2.1′
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/bridge.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/filter.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/procfs.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac_compat.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
    /tmp/vmware-root/modules/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ undeclared here (not in a function)
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/filter.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[1]: Leaving directory `/usr/src/linux-3.2.1′
    make: *** [vmnet.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Unable to install vmnet

    • thanks for noticing this. Seems to afflict specifically 3.2 so probably it was an unintended change which was fixed on 3.3-rc1 which is what I use to test things. Anyway I’ve added again the needed patch to fix this, you can download again the patch from the link in the article.

  4. still fails for Player 4.0.2 and Kernel 3.2.1 (from Fedora 16: 3.2.1-3.fc16.i686.PAE)


    /tmp/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ undeclared here (not in a function)
    make[2]: *** [/tmp/vmnet-only/filter.o] Error 1

    so just add an additional include:


    $ diff -urN vmnet-only/filter.c vmnet-only.p/filter.c
    --- vmnet-only/filter.c 2012-01-18 22:36:01.000000000 +0100
    +++ vmnet-only.p/filter.c 2012-01-26 18:00:27.508612165 +0100
    @@ -18,6 +18,7 @@
    #include "driver-config.h"

    #include
    +#include "compat_module.h"
    #include
    #include
    #include

    • I have already added an additional patch which was done for 3.2 back (thanks to willy for notifying me), unfortunately a change in the 3.3-rc1 kernel made it unnecessary so i didn’t notice it.

  5. tell me its work also in kernel 3.3 rc1?

    • The system i use right now is this:
      Linux weltall 3.3.0-rc1-custom #1 SMP Fri Jan 20 15:21:12 CET 2012 x86_64 x86_64 x86_64 GNU/Linux
      So definitely yes.

  6. Works for me: vmware player 4.0.2 kernel 3.2.1-3.fc16.x86_64. Many thanks for taking the time to put it together.

    As I am stupid, it took me a while to figure out how to use this. These are the steps I took:

    Find the source code
    On my system it is at /usr/lib/vmware/modules/source

    Untar source modules
    tar xvf vmnet.tar
    This creates a subfolder containing the source files (in this case, vmnet-only).

    Apply the patch
    Assuming the patch file is ~/Downloads/vmware3.2.0.patch
    patch -p1 < ~/Downloads/vmware3.2.0.patch

    Re-Tar the source folder
    tar cvf vmnet.tar vmnet-only/

    Rerun the module compilation process and hope the patches fix the problem.

    If smarter people have better instructions feel free to contradict.

    • The other file is a script which will do all for you.

      • Unfortunately, the script failed on me and i did what Ted said (patch it manually) and it worked

        • what sort of error did you get?

          • Uhm..i forgot, but it works with manual process

            some people reported that it’s working fine on their system, so probably it’s my spesific problem

          • Ted’s instructions worked perfectly for me as well – I’m running VMWare Player 4.0.2. Weltall, you asked for error specfics, so here you go:

            When running the script (sudo sh ./patch-modules_3.2.0.sh) I would get a script error:
            patch-modules_3.2.0.sh: 27: [: player4.0.2: unexpected operator
            patch-modules_3.2.0.sh: 28: [: player4.0.2: unexpected operator
            Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2.
            If I tried to run VMWare Player, during recompilation, the Virtual Network Device would fail.

          • the problem (at least the direct one) is the fact you used sh to run it. just do sudo ./thescript

          • Hi,
            The script works very well when it is a fresh installation of vmware. However after upgrading vmware it does not work, this is the error I get:

            /usr/lib/vmware/modules/source/.patched found. You have already patched your sources. Exiting

            Obviously I change in the script the version of the VMware player/workstation before.
            Thank you very much for this contribution to the community. Thanks thanks thanks.

          • well you can reapply the patch it if it’s half applied. I’d suggest to uninstall vmware, delete the files under /usr/lib/vmware and reinstall it

        • Same here. The patch said it had already been applied when I tried to run it, but running it manually per Ted’s instructions (finally) fixed the issue.

          Thanks!

        • same for me, but splitting the patch file and patching one by one works. part of the script:

          for PATCH_FILE in mci sock mnet mmon mblock ; do
          echo ${PATCH_FILE}
          echo "$curdir/v${PATCH_FILE}-patch"
          patch -p1 < "$curdir/v${PATCH_FILE}-patch" || exit 5
          rm -f /usr/lib/vmware/modules/source/.patched
          done

          (Do mot frget to split the pathc file apprproiately)

          Unforunately, the vmnet module still does not work
          …….

    • it works perfectly, thanks

    • Did the trick, thanks a lot for the hint :)

    • Thank you very much for posting the manual process TED. I have been searching for this solution from 3-4 days… thank you very much..

      Thanks,
      Chaitanya.

    • Thanks. It’s work perfect for me.
      Linux Mint Debian distro version 201204 / vmware workstation 8.0.3

    • Ted’s Script worked great for me. Ubuntu 12.04LTS 64bit w/ VMware-Player-4.0.3-703057.x86_64

    • Your instructions worked perfectly. Thank you.

    • Thank you TED
      Your instructions worked perfectly for me too

    • Works just fine

    • Thanks Ted for those steps,
      vmware3.2.0.patch worked great with VMware-Player-4.0.4-744019.x86_64.bundle
      LinuxMint
      Release 13 (maya) 64-bit
      Kernel Linux 3.2.0-25-generic
      GNOME 3.4.1

    • You guys are really amazing! I fixed this way my newly purchased Workstation 8.0.4 on Ubuntu Precise (3.2.0-27 Kernel). I expected that vmware would help me with that, but their knowledge base just points to this blog!
      Thank you!

    • Excellent Ted, it worked!!

  7. Is there any patch for VMware Tools and Kernel 3.2 or 3.3 guest?

  8. Is there any patch for VMware Tools for guests with Kernel 3.2 or 3.3?

    • They work well here everything is either inside the kernel itself or builds fine. the only thing which doesn’t build is the fast network module which isn’t essential as networking works without it too

  9. Dear Mr. Weltall

    Good work! Installed 8.0.2 and ran your patch – worked perfect ..!

    I should mention that at my first attempt, the script detected that I had 8.0.1 (and thus not 8.0.2) installed and exited. Upon install of 8.0.2, the script detected the presence of:

    /usr/lib/vmware/modules/source/.patched

    and exited – so I had to remove that file before I could make it happen. It was not a big stumbling block, but just not the expected result (as the script did not finsh on attempt #1, the .patched-file should not have been created).

    Thank you SO much for your effort(s).

    Best regards

    • Well the problem wasn’t caused by that but from the fact that when you’ve previously applied a patch (successfully) and upgraded VMware workstation/player. The uninstaller doesn’t delete additional files in the folders, so, even though the actual module sources were changed, the file which says that they are patched remains there. I’ll add a note on the main post.

  10. Pretty cool patch, that saved my day. Many thx. Kernel 3.2.1-3.fc16.x86_64

  11. Downloaded patch “vmware workstation 8.0.2 / player 4.0.2 fix for linux 3.2+”

    executed:
    # ./patch-modules_3.2.0.sh

    But it didn’t work !

    # ./patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    patching file vmnet-only/netif.c
    Hunk #3 succeeded at 628 (offset 13 lines).
    patching file vmnet-only/userif.c
    Stopping vmware (via systemctl): [ OK ]
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/3.2.1-3.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.1-3.fc16.x86_64′
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /tmp/vmware-root/modules/vmmon-only/vmmon.mod.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.ko
    make[1]: Leaving directory `/usr/src/kernels/3.2.1-3.fc16.x86_64′
    make -C $PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= postbuild
    make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make[1]: `postbuild’ is up to date.
    make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    cp -f vmmon.ko ./../vmmon.o
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Built vmmon module
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only’
    make -C /lib/modules/3.2.1-3.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.1-3.fc16.x86_64′
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/bridge.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/filter.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/procfs.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac_compat.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/smac.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
    In file included from /tmp/vmware-root/modules/vmnet-only/netif.c:43:0:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:186:0: warning: “alloc_netdev” redefined [enabled by default]
    include/linux/netdevice.h:2443:0: note: this is the location of the previous definition
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:187:0: warning: “alloc_etherdev” redefined [enabled by default]
    include/linux/etherdevice.h:53:0: note: this is the location of the previous definition
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:208:1: error: conflicting types for ‘netif_start_queue’
    include/linux/netdevice.h:1809:20: note: previous definition of ‘netif_start_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_start_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:210:21: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:214:1: error: conflicting types for ‘netif_stop_queue’
    include/linux/netdevice.h:1874:20: note: previous definition of ‘netif_stop_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_stop_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:216:19: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:220:1: error: conflicting types for ‘netif_queue_stopped’
    include/linux/netdevice.h:1900:19: note: previous definition of ‘netif_queue_stopped’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_queue_stopped’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:222:11: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:222:11: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:226:1: error: conflicting types for ‘netif_wake_queue’
    include/linux/netdevice.h:1843:20: note: previous definition of ‘netif_wake_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_wake_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:228:21: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:4: error: implicit declaration of function ‘mark_bh’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:12: error: ‘NET_BH’ undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:12: note: each undeclared identifier is reported only once for each function it appears in
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:233:1: error: conflicting types for ‘netif_running’
    include/linux/netdevice.h:1916:19: note: previous definition of ‘netif_running’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_running’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:235:14: error: ‘struct device’ has no member named ‘start’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:239:1: error: conflicting types for ‘netif_carrier_ok’
    include/linux/netdevice.h:2150:19: note: previous definition of ‘netif_carrier_ok’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:245:1: error: conflicting types for ‘netif_carrier_on’
    include/linux/netdevice.h:2159:13: note: previous declaration of ‘netif_carrier_on’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:250:1: error: conflicting types for ‘netif_carrier_off’
    include/linux/netdevice.h:2161:13: note: previous declaration of ‘netif_carrier_off’ was here
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:153:7: error: ‘struct net_device’ has no member named ‘init’
    /tmp/vmware-root/modules/vmnet-only/netif.c:154:7: error: ‘struct net_device’ has no member named ‘open’
    /tmp/vmware-root/modules/vmnet-only/netif.c:155:7: error: ‘struct net_device’ has no member named ‘hard_start_xmit’
    /tmp/vmware-root/modules/vmnet-only/netif.c:156:7: error: ‘struct net_device’ has no member named ‘stop’
    /tmp/vmware-root/modules/vmnet-only/netif.c:157:7: error: ‘struct net_device’ has no member named ‘get_stats’
    /tmp/vmware-root/modules/vmnet-only/netif.c:158:7: error: ‘struct net_device’ has no member named ‘set_mac_address’
    /tmp/vmware-root/modules/vmnet-only/netif.c:159:7: error: ‘struct net_device’ has no member named ‘set_multicast_list’
    /tmp/vmware-root/modules/vmnet-only/netif.c:159:30: error: ‘VNetNetifSetMulticast’ undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfNetDeviceToNetIf’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:200:14: error: ‘struct net_device’ has no member named ‘priv’
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIf_Create’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:315:4: error: implicit declaration of function ‘compat_alloc_netdev’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmnet-only/netif.c:315:8: warning: assignment makes pointer from integer without a cast [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/netif.c:320:7: error: ‘struct net_device’ has no member named ‘priv’
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfReceive’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:401:4: warning: passing argument 1 of ‘netif_running’ from incompatible pointer type [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:233:1: note: expected ‘struct device *’ but argument is of type ‘struct net_device *’
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetifOpen’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:481:4: warning: passing argument 1 of ‘netif_start_queue’ from incompatible pointer type [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:208:1: note: expected ‘struct device *’ but argument is of type ‘struct net_device *’
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetifClose’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:529:4: warning: passing argument 1 of ‘netif_stop_queue’ from incompatible pointer type [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:214:1: note: expected ‘struct device *’ but argument is of type ‘struct net_device *’
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘netif_running’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:236:1: warning: control reaches end of non-void function [-Wreturn-type]
    cc1: some warnings being treated as errors

    In file included from /tmp/vmware-root/modules/vmnet-only/bridge.c:51:0:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:186:0: warning: “alloc_netdev” redefined [enabled by default]
    include/linux/netdevice.h:2443:0: note: this is the location of the previous definition
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:187:0: warning: “alloc_etherdev” redefined [enabled by default]
    include/linux/etherdevice.h:53:0: note: this is the location of the previous definition
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:208:1: error: conflicting types for ‘netif_start_queue’
    include/linux/netdevice.h:1809:20: note: previous definition of ‘netif_start_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_start_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:210:21: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:214:1: error: conflicting types for ‘netif_stop_queue’
    include/linux/netdevice.h:1874:20: note: previous definition of ‘netif_stop_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_stop_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:216:19: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:220:1: error: conflicting types for ‘netif_queue_stopped’
    include/linux/netdevice.h:1900:19: note: previous definition of ‘netif_queue_stopped’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_queue_stopped’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:222:11: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:222:11: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:226:1: error: conflicting types for ‘netif_wake_queue’
    include/linux/netdevice.h:1843:20: note: previous definition of ‘netif_wake_queue’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_wake_queue’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:228:21: error: ‘struct device’ has no member named ‘tbusy’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:4: error: implicit declaration of function ‘mark_bh’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:12: error: ‘NET_BH’ undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:229:12: note: each undeclared identifier is reported only once for each function it appears in
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:233:1: error: conflicting types for ‘netif_running’
    include/linux/netdevice.h:1916:19: note: previous definition of ‘netif_running’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: In function ‘netif_running’:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:235:14: error: ‘struct device’ has no member named ‘start’
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h: At top level:
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:239:1: error: conflicting types for ‘netif_carrier_ok’
    include/linux/netdevice.h:2150:19: note: previous definition of ‘netif_carrier_ok’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:245:1: error: conflicting types for ‘netif_carrier_on’
    include/linux/netdevice.h:2159:13: note: previous declaration of ‘netif_carrier_on’ was here
    /tmp/vmware-root/modules/vmnet-only/compat_netdevice.h:250:1: error: conflicting types for ‘netif_carrier_off’
    include/linux/netdevice.h:2161:13: note: previous declaration of ‘netif_carrier_off’ was here
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    cc1: some warnings being treated as errors

    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/bridge.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.1-3.fc16.x86_64′
    make: *** [vmnet.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Unable to install vmnet

    All done, you can now run VMWare WorkStation.
    Modules sources backup can be found in the ‘/usr/lib/vmware/modules/source-workstation8.0.2-2012-01-27-16:28:07-backup’ directory

    Please suggest what could be the problem.

    Thanks.

    • try checking if the sources are ok as this shouldn’t be a problem with the sources shipped now with workstation.
      anyway could try adding this in compat_netdevice.h

      #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 41, 0) && LINUX_VERSION_CODE < KERNEL_VERSION(3, 0, 0)) || LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0)
      #define HAVE_ALLOC_NETDEV /* feature macro: alloc_xxxdev
      functions are available. */
      #define HAVE_FREE_NETDEV /* free_netdev() */
      #define HAVE_NETDEV_PRIV /* netdev_priv() */
      #define HAVE_NETIF_QUEUE
      #define HAVE_NET_DEVICE_OPS
      #endif

    • Thanks,

      Patch woked perfectly…

  12. It’s not working in Ubuntu 11.04 – Kernel 3.2.2-030202-generic

  13. Hello,

    I am trying to use this patch as well and running into difficulty.

    Here is the output of applying the patch:

    http://www.blandford.net/buildscript

    From looking at it, the patching and building is clean, but the modules/processes aren’t loading correctly.

    Here is what is in the messages file:

    Jan 29 11:29:08 bobafett vmware[11054]: Starting VMware services:
    Jan 29 11:29:08 bobafett vmware[11054]: Virtual machine monitor[FAILED]
    Jan 29 11:29:08 bobafett vmware[11054]: Virtual machine communication interface[ OK ]
    Jan 29 11:29:08 bobafett vmware[11054]: VM communication interface socket family[ OK ]
    Jan 29 11:29:08 bobafett vmware[11054]: Blocking file system[ OK ]
    Jan 29 11:29:08 bobafett vmware[11054]: Virtual ethernet[FAILED]
    Jan 29 11:29:08 bobafett vmware[11054]: VMware Authentication Daemon[ OK ]
    Jan 29 11:29:08 bobafett systemd[1]: vmware.service: control process exited, code=exited status=1
    Jan 29 11:29:08 bobafett systemd[1]: Unit vmware.service entered failed state.

    Any suggestions?

    • It looks like the module building went fine (which is the point of the patch) so it’s weird you’ve some issues.
      You could check some things:
      1) if you got some error in the dmesg. for example oops.
      2) that /lib/modules/yourkenel/misc/ contains all the vmware modules and that lsmod lists them

      • I realize I didn’t give much information in the first post. I am running Fedora 16 x86_64. Kernel is 3.2.2-1 and VMware 8.0.2

        Here are the modules. Is this all that is expected?

        [root@bobafett misc]# ls -l
        total 8408
        -rw-r–r–. 1 root root 1029730 Jan 29 11:26 vmblock.ko
        -rw-r–r–. 1 root root 1874151 Jan 29 11:27 vmci.ko
        -rw-r–r–. 1 root root 1396461 Jan 29 11:26 vmmon.ko
        -rw-r–r–. 1 root root 2449848 Jan 29 11:26 vmnet.ko
        -rw-r–r–. 1 root root 1849153 Jan 29 11:27 vsock.ko

        I can modprobe each of these modules by hand without error.

        There are no ops messages in dmesg or /var/log/messages

        • Hmm.

          If I run vmware-modconfig –console –install-all by hand now the script will correctly stop/start the vmware startup scrit and things appear to be working.

          • Someone else reported something similar but i could never reproduce it. It’s probably a problem within the vmware tools and not in the modules part. but well good that it’s solved

  14. Thank you very much. I did successfully apply your patch on Fedora 16 with Kernel 3.2.1.

  15. not sure which compat_netdevice.h need to be adapted.

    Added code in: /usr/lib/vmware/modules/source/vmnet.tar -> compat_netdevice.h
    and repacked tar.

    Re-run of the patch (which was re-downloaded from this page) gives same error.

    Thanks for any further suggestions.

    • put it near the includes. also check your headers are in order.

      • after upgrading to kernel: 3.2.2-1 the patch was ok.

        At the end of patch apply I’ve got:


        Built vsock module
        Starting vmware (via systemctl): Job failed. See system logs and ‘systemctl status’ for details.
        [FAILED]
        Unable to start services

        But still vmware is running fine.

  16. After patching workstation 8.0.2 on F16 x86_64, I things seem to start OK, then when trying to start a VM I get the message:

    Version mismatch with vmmon module: expecting 264.1, got 238.0

    and then a recommendation to remove and re-install VMware, which I’ve been through already twice.

    Any suggestions?

    [user@computer /]$ uname -a
    Linux xibalba.emonet.local 3.2.2-1.fc16.x86_64 #1 SMP Thu Jan 26 03:21:58 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
    [user@computer /]$ cat /etc/redhat-release
    Fedora release 16 (Verne)

    • For others’ benefit…

      I worked out my own problem. It was partially my fault, partially something else that I’m not sure of. When the patch finishes it tries to start vmware services. This fails. I then manually stopped the VMware services ( systemcl stop vmware.service; systemctl stop vmware-USBArbitrator.service ) and then had to kill a series of pids that were left running for vmnet dhcp processes, a vmblock process, etc. I also removed vmmon and vmnet kernel modules ( rmmod vmmon; rmmod vmnet ). I then restarted the vmware service and things worked fine, without any complaint of version mismatch.

      I’m suspecting this was simply a memory module loaded into memory that was not dumped and reinserted when the patch script attempted to start the vmware services.

      Kind of dumb mistake not stopping vmware first. So do these things if you have a similar issue… Stop vmware first. Make sure the kmods are unloaded, stop processes, etc.

    • What it says but be sure to clean up entirely the /usr/lib/vmware/modules after uninstalling but before reinstalling probably you had old sources lingering around

  17. That was hell of path it work perfectly

  18. Thanks a lot, worked perfectly with VMplayer 4.0.2.591240 & kernel 3.2.2-1.fc16.x86_64.

  19. Hi, The patch is not working for me, on Fedora16 64bit, 3.2.1-3.fc16.x86_64. With VMware-Player-4.0.2-591240.x86_64

    Here is what I get when I run the patch:
    [jon@jonnysLaptop vmPatch]$ sudo ./patch-modules_3.2.0.sh
    [sudo] password for jon:
    ./patch-modules_3.2.0.sh: line 42: patch: command not found

    Does anybody have any suggestions of what I should do next?
    Cheers,
    Jon

    • install patch from your repository. I’m really curious about the reasoning for this removal from fedora…

      • Doh!
        Ya, I got it, I went to install it manually and then realized what the error said… I installed patch and all is well…
        Thank you for your efforts!
        Cheers,
        Jon

      • Hi, I have the same problem on line 42. which is the vmware repository for fedora 16 x64 to use the patch? My kernel is 3.2.2-1.fc16.x86_64
        best regards

        • In Ubuntu:

          First install patch: sudo apt-get install patch

          Now, you can use the script and works perfect!!!

  20. fedora 16 x64
    Linux Fedora 3.2.2-1.fc16.x86_64
    vmware 8.0.2

    I got this when the patch finished :

    Starting vmware (via systemctl): Job failed. See system logs and ‘systemctl status’ for details.
    [FAILED]
    Unable to start services

    but the vmware 80.2 can start and works fine .

  21. This script worked fine with Debian Squeeze and the squeeze-backports 3.2 kernel. Thanks!

  22. Excellent work. This fixed my problem. Fedora 16 3.2.2 Workstation 8.02.

  23. Great! It works for me. I am using Kernel 3.2.2-1.fc16.i686 (Fedora 16) and VMware Player 4.0.2.

  24. Great – that had the desired effect!

    I’m running Fedora16 and a recent update to kernel 3.2.2-1.fc16.x86_64 caused my VMware Workstation to no longer start. I downloaded and installed the latest VMWare version 8.0.2, but the vmnet module “runtime” compile still failed. I was leery of downloading a patch from “some random website”, but after running patch-modules_3.2.0.sh, VMWare runs again! Thanks very much indeed!

    You’d think that VMWare would do a better job of tracking/supporting kernel versions themselves…

    I only had two issues.
    1. On the first run, the patch script failed with:

    mktemp: failed to create directory via template `/root/tmp/tmp.XXXXXXXXXX': No such file or directory

    So I manually did a “mkdir /root/tmp” and reran the script.

    2. At the end, the patch script attempts to start vmware, but this fails with:

    ...
    Built vsock module
    Starting vmware (via systemctl): Job failed. See system logs and 'systemctl status' for details.
    [FAILED]
    Unable to start services

    All done, you can now run VMWare WorkStation.

    Dunno why. That looks like a typically cryptic systemd message. Running “systemctl status” results in “Too few arguments”. With a arg of “vmware” I get a helpful “Failed to issue method call: Unit name vmware is not valid”. The only slight clue in the messages file might be:

    ...
    Feb 3 09:21:45 think avahi-daemon[960]: Registering new address record for 10.10.9.1 on vmnet12.IPv4.
    Feb 3 09:21:45 think vmnet-detect[13927]: NetDetectDaemonInit: No host policy file found. Not initializing filter.
    Feb 3 09:21:45 think NetworkManager[906]: /sys/devices/virtual/net/vmnet12: couldn't determine device driver; ignoring...
    Feb 3 09:21:45 think NetworkManager[906]: NetworkManager[906]: /sys/devices/virtual/net/vmnet12: couldn't determine device driver; ignoring...
    Feb 3 09:21:45 think vmnet-detect[13927]: Unable to initialize the daemon
    Feb 3 09:21:45 think vmware[13783]: Virtual ethernet[ OK ]
    Feb 3 09:21:45 think vmware[13783]: VMware Authentication Daemon[ OK ]
    Feb 3 09:21:45 think systemd[1]: vmware.service: control process exited, code=exited status=1
    Feb 3 09:21:45 think systemd[1]: Unit vmware.service entered failed state.
    ...

    Maybe vmnet-detect (whatever that is) has failed and thus systemd is unhappy…

    Thanks again!
    Roy

  25. Thanks! it works.

  26. thx, seems to work :-)

  27. Hi,
    Your patch is required using kernel 3.3.0-rc3 and VMware wks 8.0.2.

    Without your patch, compilation fails. With your patch works perfect.

    Thanks!

  28. Thank you, works like a charm on Fedora 16 3.2.3-2.fc16.x86_64.

  29. Worked great for Fedora 16 3.2.5-3.fc16.x86_64. I was booting to the old kernel since I couldn’t get vmware to compile the vmnet module but I am back in business.

  30. [...] Die Netzwerkkartentreiber lassen sich unter einem 3.2-3.3er Kernel nicht kompilieren. : Bugfix: VMWare Player 4.0.2 [...]

  31. Good job , and thank you.
    I it’s work for me i use Debian SID on kernel 3.1

    Best regards

  32. Thank’s guys!

    With minor copy-paste handwork, that applies to VMware-server-2.0.2-203138.x86_64 on Fedora 16 3.2.5 too!

    Look here for deatils http://forums.fedoraforum.org/showthread.php?p=1552942

  33. When appling the patch on Fedora 16 3.2.5-3.fc16 I get:

    [danny@f3285189l Downloads]$ sudo ./patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    gcc and kernel headers must be installed

    Both gcc and kernel headers are installed. Am I missgin a configuration of some sort ?

    • maybe wrong versions of them… or for some reasons it cannot find them. It’s not an issue of the patch itself but of the vmware installer.

      • Thanks !

        My problem started whereby when is start VMware player 4.0.2 it complains about not finding kernel headers 3.1.9. while I have 3.2.6 installed on the box. I was hopping that the patch would fix this problem. Am I wrong? You mentioned wrong versions as well could that be related to the same problem? Please advice.

        • the patch fixes module compilation issues. If there are issues in the headers/binary packages of the kernel it won’t be able to help. You should check that the kernel running and the kernel installed match, plus to switch kernel (letting alone some techniques) requires reboot.

    • Hi Danny,

      it works on me.. Thanks..

      here’s the steps.

      Download and extract the patch

      put this patch file ‘patch-modules_3.2.0.sh’ on your target path ex.. Destop
      run Terminal

      angelo@angelo-ubuntu:~/Desktop$ sudo -i
      [sudo] password for angelo:
      root@angelo-ubuntu:~# cd /home/angelo/Desktop/
      root@angelo-ubuntu:/home/angelo/Desktop# ls
      patch-modules_3.2.0.sh

      sudo ./patch-modules_3.2.0.sh

      done.. everything run smoothly.. thanks..

  34. same here with FC16 last kernel 3.2.6-3
    => Starting vmware (via systemctl): Job failed. See system logs and ‘systemctl status’ for details.

    Feb 20 21:12:25 pulsar vmware[18625]: Starting VMware services:
    Feb 20 21:12:25 pulsar vmware[18625]: Virtual machine monitor[ÉCHOUÉ]
    Feb 20 21:12:25 pulsar vmware[18625]: Virtual machine communication interface[ OK ]
    Feb 20 21:12:25 pulsar vmware[18625]: VM communication interface socket family[ OK ]
    Feb 20 21:12:25 pulsar vmware[18625]: Blocking file system[ OK ]
    Feb 20 21:12:25 pulsar vmware[18625]: Virtual ethernet[ÉCHOUÉ]
    Feb 20 21:12:25 pulsar vmware[18625]: VMware Authentication Daemon[ OK ]
    Feb 20 21:12:25 pulsar systemd[1]: vmware.service: control process exited, code=exited status=1
    Feb 20 21:12:25 pulsar systemd[1]: Unit vmware.service entered failed state.

  35. Unfortunately it does not work for me..

    3.2.6-3.fc16.x86_64
    VMware Workstation 7.1.5 build-491717

    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/3.2.6-3.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:38:148: error: missing expression between ‘(‘ and ‘)’
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_SetupMMU’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:87:4: error: too few arguments to function ‘iommu_domain_alloc’
    include/linux/iommu.h:68:29: note: declared here
    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’

    • #include #define iommu_found() iommu_present(&pci_bus_type)
      #define iommu_domain_alloc() iommu_domain_alloc(&pci_bus_type)

      try checking if you’ve these at the top of iommu.c and add them if missing

      i’ve noticed there is a possible error in the patch so i’m going to fix it exactly this line
      +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 42, 0) && LINUX_VERSION_CODE < KERNEL_VERSION(3, 0, 0)) || LINUX_VERSION_CODE >= KERNEL_VERSION(3, , 0) is missing a number there so it’s probably causing the issue

    • I’ve uploaded a fixed patch it should work now

      • Thanks for you help. I now get this error….

        Using 2.6.x kernel build system.
        make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
        make -C /lib/modules/3.2.6-3.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
        MODULEBUILDDIR= modules
        make[1]: Entering directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
        CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
        CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
        /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:39:10: error: #include expects “FILENAME” or
        make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
        make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
        make[1]: Leaving directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
        make: *** [vmmon.ko] Error 2
        make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
        Unable to install vmmon

        I checked the file and the include is present, it looks a bit odd to me I dont reconise this format, the line in error is here…

        #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 42, 0) && LINUX_VERSION_CODE = KERNEL_VERSION(3, 2, 0)
        #include #define iommu_found() iommu_present(&pci_bus_type) /* = KERNEL_VERSION(2, 42, 0) && LINUX_VERSION_CODE = KERNEL_VERSION(3, 2, 0)
        #define iommu_found() iommu_present(&pci_bus_type) /* <=== THIS ONE 39 */
        #define iommu_domain_alloc() iommu_domain_alloc(&pci_bus_type)
        #endif

        It now compiles but will not start…

        Feb 21 22:10:38 quad vmware[6315]: Starting VMware services:
        Feb 21 22:10:38 quad vmware[6315]: VMware USB Arbitrator[ OK ]
        Feb 21 22:10:38 quad vmware[6315]: Virtual machine monitor[FAILED]
        Feb 21 22:10:39 quad vmware[6315]: Virtual machine communication interface[ OK ]
        Feb 21 22:10:39 quad vmware[6315]: VM communication interface socket family[ OK ]
        Feb 21 22:10:39 quad vmware[6315]: Blocking file system[ OK ]
        Feb 21 22:10:39 quad vmware[6315]: Virtual ethernet[FAILED]
        Feb 21 22:10:39 quad systemd[1]: vmware.service: control process exited, code=exited status=1
        Feb 21 22:10:39 quad systemd[1]: Unit vmware.service entered failed state.

        I see no other errors /var/log/vnetlib looks ok to me.

        • seems wordpress cut the text again. I need to search some plug-in which does proper code handling. Anyway in your case I’d suggest to restore the backup (original) files and apply the new patch.

  36. Got a bit further with this patch

    http://communities.vmware.com/servlet/JiveServlet/download/1990681-82463/waldyd-fc16-vmware3.1.5.tgz

    From here http://communities.vmware.com/message/1988917

    But still does not complile…

    Any help greatly appreciated.

    Built vmmon module
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only’
    make -C /lib/modules/3.2.6-3.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    /tmp/vmware-root/modules/vmnet-only/userif.c: In function ‘VNetCsumCopyDatagram’:
    /tmp/vmware-root/modules/vmnet-only/userif.c:575:3: error: incompatible type for argument 1 of ‘kmap’
    include/linux/highmem.h:48:21: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    /tmp/vmware-root/modules/vmnet-only/userif.c:578:3: error: incompatible type for argument 1 of ‘kunmap’
    include/linux/highmem.h:54:20: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/userif.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.6-3.fc16.x86_64′
    make: *** [vmnet.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Unable to install vmnet

  37. Excellent, thanks a lot !

  38. Super, thanks a lot!!!

  39. 3.2.7-1-ARCH + VMware-Player-4.0.2-591240.x86_64.bundle

    patch worked fine with no errors however…

    Starting VMware services:
    Virtual machine monitor failed
    Virtual machine communication interface failed
    VM communication interface socket family failed
    Blocking file system done
    Virtual ethernet failed
    VMware Authentication Daemon done
    Unable to start services

    Player started no problem though…

    • Actually running vmplayer is everything I can do… Missing vmnet.

      • If module building went well I’d suggest a reboot, it seems in some distro vmware gets stuck somehow.

        • I have been fiddling with it but still no success. Maybe the best workaround would be to get rid of any vmware traces from the system and start again…?

          I have been trying to reinstall already however looks like some artifacts are stuck (or simply I do not know about every place I should clear/delete).

          I’ll be trying and let you know about eventual findings.

          • I have tried to start from beginning couple of times no and still no success… Looks like I’m stuck with vmnet. However this is process I have been following:

            1. uninstall vmware

            ./VMware-Player-4.0.2-591240.x86_64.bundle --uninstall-product vmware-player
            unlink /etc/rc.d/vmware
            unlink /etc/rc.d/vmware-workstation-server
            for i in {ins,ls,rm}mod modinfo; do unlink /sbin/$i; done
            rm -r /usr/lib/vmware

            2. install vmware player (following arch wiki

            ./VMware-Player-4.0.2-591240.x86_64.bundle --console --custom
            System path prefix - /usr
            System lib directory - /usr/lib
            Architecture-independent files - /usr/share
            User level binaries - /usr/bin
            Super user level binaries - /usr/sbin
            Documentation - /usr/share/doc
            Manual pages - /usr/share/man
            Header files - /usr/include
            System configuration files - /etc
            System service runlevel directory - [empty]

            and that’s what I get during installation process:

            Installing VMware VMX 4.0.2
            Configuring...No rc*.d style init script directories were given to the installer.
            You must manually add the necessary links to ensure that the vmware ] 57%
            service at /etc/init.d/vmware is automatically started and stopped on
            startup and shutdown.
            Traceback (most recent call last):
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/handlers.py", line 73, in emit
            if self.shouldRollover(record):
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/handlers.py", line 146, in shouldRollover
            msg = "%s\n" % self.format(record)
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/__init__.py", line 630, in format
            return fmt.format(record)
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/__init__.py", line 421, in format
            s = self._fmt % record.__dict__
            UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 305: ordinal not in range(128)
            Traceback (most recent call last):
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/handlers.py", line 73, in emit
            if self.shouldRollover(record):
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/handlers.py", line 146, in shouldRollover
            msg = "%s\n" % self.format(record)
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/__init__.py", line 630, in format
            return fmt.format(record)
            File "/tmp/vmis.wwQmKL/install/vmware-installer/python/lib/logging/__init__.py", line 421, in format
            s = self._fmt % record.__dict__
            Installing VMware Player 4.0.2
            Configuring...
            [######################################################################] 100%
            Installation was successful.

            Then I run couple of distro-specific tweaks (wiki)

            ln -s /etc/init.d/vmware /etc/rc.d/
            ln -s /etc/init.d/vmware-workstation-server /etc/rc.d/
            sed -i "s|/sbin/|/usr/bin/|g" /usr/bin/vmplayer
            vmware-modconfig --console --install-all

            And vmware-modconfig output:

            Stopping VMware services:
            VMware Authentication Daemon done
            /etc/init.d/vmware: line 73: /sbin/lsmod: No such file or directory
            VM communication interface socket family done
            Virtual machine communication interface done
            Virtual machine monitor done
            Blocking file system done
            /etc/init.d/vmware: line 93: /sbin/lsmod: No such file or directory
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
            LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vmmon-only/vmmon.mod.o
            LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
            cp -f vmmon.ko ./../vmmon.o
            make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
            No protocol specified
            No protocol specified
            Built vmmon module
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmnet-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/bridge.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/filter.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/procfs.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/smac_compat.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/smac.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
            /tmp/vmware-root/modules/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ undeclared here (not in a function)
            make[2]: *** [/tmp/vmware-root/modules/vmnet-only/filter.o] Error 1
            make[2]: *** Waiting for unfinished jobs....
            /tmp/vmware-root/modules/vmnet-only/userif.c: In function ‘VNetCsumCopyDatagram’:
            /tmp/vmware-root/modules/vmnet-only/userif.c:520:3: error: incompatible type for argument 1 of ‘kmap’
            include/linux/highmem.h:48:21: note: expected ‘struct page *’ but argument is of type ‘const struct ’
            /tmp/vmware-root/modules/vmnet-only/userif.c:523:3: error: incompatible type for argument 1 of ‘kunmap’
            include/linux/highmem.h:54:20: note: expected ‘struct page *’ but argument is of type ‘const struct ’
            /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
            /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
            /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: initialization from incompatible pointer type [enabled by default]
            /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: (near initialization for ‘vnetNetifOps.ndo_validate_addr’) [enabled by default]
            make[2]: *** [/tmp/vmware-root/modules/vmnet-only/userif.o] Error 1
            make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
            make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make: *** [vmnet.ko] Error 2
            make: Leaving directory `/tmp/vmware-root/modules/vmnet-only'
            Unable to install vmnet

            And last step – apply patch from your site:


            cd /tmp
            curl -O http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz
            tar -xvf vmware802fixlinux320.tar.gz

            with output:

            patching file vmnet-only/filter.c
            patching file vmnet-only/netif.c
            patching file vmnet-only/userif.c
            Stopping VMware services:
            VMware Authentication Daemon done
            /etc/init.d/vmware: line 73: /sbin/lsmod: No such file or directory
            VM communication interface socket family done
            Virtual machine communication interface done
            Virtual machine monitor done
            Blocking file system done
            /etc/init.d/vmware: line 93: /sbin/lsmod: No such file or directory
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
            CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
            LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vmmon-only/vmmon.mod.o
            LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
            cp -f vmmon.ko ./../vmmon.o
            make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
            No protocol specified
            No protocol specified
            Built vmmon module
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmnet-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/bridge.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/filter.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/procfs.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/smac_compat.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/smac.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
            CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
            LD [M] /tmp/vmware-root/modules/vmnet-only/vmnet.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vmnet-only/vmnet.mod.o
            LD [M] /tmp/vmware-root/modules/vmnet-only/vmnet.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vmnet-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vmnet-only'
            cp -f vmnet.ko ./../vmnet.o
            make: Leaving directory `/tmp/vmware-root/modules/vmnet-only'
            No protocol specified
            No protocol specified
            Built vmnet module
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmblock-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dbllnklst.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dentry.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/file.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/block.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/module.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/super.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/filesystem.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/inode.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/stubs.o
            CC [M] /tmp/vmware-root/modules/vmblock-only/linux/control.o
            LD [M] /tmp/vmware-root/modules/vmblock-only/vmblock.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vmblock-only/vmblock.mod.o
            LD [M] /tmp/vmware-root/modules/vmblock-only/vmblock.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vmblock-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vmblock-only'
            cp -f vmblock.ko ./../vmblock.o
            make: Leaving directory `/tmp/vmware-root/modules/vmblock-only'
            No protocol specified
            No protocol specified
            Built vmblock module
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vmci-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vmci-only/linux/driver.o
            CC [M] /tmp/vmware-root/modules/vmci-only/linux/vmciKernelIf.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDatagram.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDriver.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciContext.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciResource.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciHashtable.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciEvent.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciQueuePair.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDoorbell.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciRoute.o
            CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciQPair.o
            CC [M] /tmp/vmware-root/modules/vmci-only/driverLog.o
            LD [M] /tmp/vmware-root/modules/vmci-only/vmci.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vmci-only/vmci.mod.o
            LD [M] /tmp/vmware-root/modules/vmci-only/vmci.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vmci-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vmci-only'
            cp -f vmci.ko ./../vmci.o
            make: Leaving directory `/tmp/vmware-root/modules/vmci-only'
            No protocol specified
            No protocol specified
            Built vmci module
            Using 2.6.x kernel build system.
            make: Entering directory `/tmp/vmware-root/modules/vsock-only'
            make -C /lib/modules/3.2.7-1-ARCH/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= modules
            make[1]: Entering directory `/usr/src/linux-3.2.7-1-ARCH'
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/af_vsock.o
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/vsockAddr.o
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/notifyQState.o
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/util.o
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/stats.o
            CC [M] /tmp/vmware-root/modules/vsock-only/linux/notify.o
            CC [M] /tmp/vmware-root/modules/vsock-only/driverLog.o
            LD [M] /tmp/vmware-root/modules/vsock-only/vsock.o
            Building modules, stage 2.
            MODPOST 1 modules
            CC /tmp/vmware-root/modules/vsock-only/vsock.mod.o
            LD [M] /tmp/vmware-root/modules/vsock-only/vsock.ko
            make[1]: Leaving directory `/usr/src/linux-3.2.7-1-ARCH'
            make -C $PWD SRCROOT=$PWD/. \
            MODULEBUILDDIR= postbuild
            make[1]: Entering directory `/tmp/vmware-root/modules/vsock-only'
            make[1]: `postbuild' is up to date.
            make[1]: Leaving directory `/tmp/vmware-root/modules/vsock-only'
            cp -f vsock.ko ./../vsock.o
            make: Leaving directory `/tmp/vmware-root/modules/vsock-only'
            No protocol specified
            No protocol specified
            Built vsock module
            Starting VMware services:
            Virtual machine monitor failed
            Virtual machine communication interface failed
            VM communication interface socket family failed
            Blocking file system done
            Virtual ethernet failed
            VMware Authentication Daemon done
            Unable to start services

            All done, you can now run VMWare Player.
            Modules sources backup can be found in the '/usr/lib/vmware/modules/source-player4.0.2-2012-02-27-22:39:11-backup' directory

            but unfortunately I’m not able to get any machine loaded… I have had vmware player working fine in the past, I can’t get it working after system upgrade to kernel version mentioned in my first post…

            I will appreciate any hint, thanks in advance.

            Greg

          • 1) try avoiding to run modconfig before applying the patch
            2) i see you lack lsmod. You might have a look at that maybe it’s giving troubles to vmware
            3) you should check also dmesg and the output of lsmod

          • Hi,

            Extremely sorry I’m bothering you but looks like google doesn’t say much about such a problem and your website and your knowledge is my last chance…

            I have reinstalled again and looks like you were right that lsmod might have something to do here – I have replaced /sbin/lsmod with /bin/usr/lsmod (location in my distro) in /etc/init.d/vmware but no progress…

            I don’t know if other people who use arch-linux have similar problem, I would prefer not to end up with dodgy system installation…

  40. I’m getting the following error starting with a clean install and applying the patch (kernel 3.2.7-1.fc16.i686):

    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/3.2.7-1.fc16.i686/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.7-1.fc16.i686′
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:39:10: error: #include expects “FILENAME” or
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_SetupMMU’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:107:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:117:17: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘long long unsigned int’ [-Wformat]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:121:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:124:20: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64′ [-Wformat]
    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.7-1.fc16.i686′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Unable to install vmmon

  41. Guys,

    Try next:

    1. prepare-kernel-sources
    2. cd your home directory of /tmp directory or whatever you like.
    3. download the 8.02 patch for the location provided at the first page.
    4. tar vxzf vmware802fixlinux320.tar.gz
    5. ./patch-modules_3.2.0.sh

  42. I started with a complete uninstall of vmplayer and then a fresh install of VMware-Player-3.1.5-491717.i386.bundle so sources are clean. I am using vmware802fixlinux320.tar.gz downloaded yesterday from here.

    Patch goes through without problem. It is when compiling iommu that I get the errors above and compilation fails.

    As I said, this is with kernel 3.2.7-1.fc16.i686

  43. I just noticed that my problem seems to be the same as what Kevin reported in message 36, so the revised script has apparantly not fixed it.

    Note that the line

    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:39:10: error: #include expects “FILENAME” or

    in both his report and mine has been trunctated in the post. After “or” the word “FILENAME” in angle brackets has been deleted.

    • i see your problem now you are using the patch for 8.x/4.x on 3.x/7.x you need to get the other patch listed in the post. The file iommu.c doesn’t even exist anymore in 8.x/4.x

  44. Hi,
    I have installed vmware player 3.1.5 on fedora 16. then I downloaded the patch, extracted to /tmp and run. uname -r gives “3.2.6-3.fc16.i686″. I am running a 32 bit system.

    I got the following error. Thank you in advance..

    [root@localhost tmp]# ./patch-modules_3.2.0.sh
    patching file vmblock-only/linux/dentry.c
    patching file vmblock-only/linux/filesystem.c
    patching file vmci-only/linux/driver.c
    patching file vmmon-only/linux/driver.c
    patching file vmmon-only/linux/hostif.c
    patching file vmmon-only/linux/iommu.c
    patching file vmnet-only/compat_netdevice.h
    patching file vmnet-only/driver.c
    patching file vmnet-only/filter.c
    patching file vmnet-only/hub.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    patching file vsock-only/linux/af_vsock.c
    patching file vsock-only/linux/util.c
    Stopping vmware (via systemctl): Warning: Unit file of created job changed on disk, ‘systemctl –system daemon-reload’ recommended.
    [ OK ]
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/3.2.6-3.fc16.i686/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.6-3.fc16.i686′
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:39:10: error: #include expects “FILENAME” or
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_SetupMMU’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:107:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:117:17: warning: format ‘%lx’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘long long unsigned int’ [-Wformat]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:121:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:124:20: warning: format ‘%lu’ expects argument of type ‘long unsigned int’, but argument 3 has type ‘uint64’ [-Wformat]
    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.6-3.fc16.i686′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Unable to install vmmon

    All done, you can now run VMWare Player.
    Modules sources backup can be found in the ‘/usr/lib/vmware/modules/source-player3.1.5-2012-02-26-18:02:42-backup’ directory
    [root@localhost tmp]#

    • Seems there was another problem in the patch. I’ve tried fixing the issue by hand but I cannot check if it will patch correctly so give it a go (starting from clean sources)

  45. Thanks a ton for the patches, works like charm on 3.2.6 kernel,

  46. Solved the issue of comments 36, 40, 44 (Kevin, me, Tolga):

    There is a misprint in line 159 of vmware-715-kernel32.patch

    +#include #define iommu_found() iommu_present(&pci_bus_type)

    should be

    +#define iommu_found() iommu_present(&pci_bus_type)

    Fixing this in the patch or correcting it in iommu.c solves the problem

    Thanks, Weltall, for keeping this version of vmware working for those of us whose processors don’t allow us to upgrade.

  47. Thanx a ton… works superb for 3.2.7 kernel & 4.0.2 Player

  48. [...] Ah, the fun of being an early adopter. Time to patch and recompile the sources  (thanks to Weltall for providing the [...]

  49. Hi, I’ve just downloaded and did a fresh install of VMware-Workstation-Full-8.0.2-591240.x86_64 and when trying to apply the patches i got the following error:

    can’t find file to patch at input line 4
    Perhaps you used the wrong -p or –strip option?
    The text leading up to this was:
    ————————–
    |diff -u -r source30//vmmon-only/linux/iommu.c source/vmmon-only/linux/iommu.c
    |— source30//vmmon-only/linux/iommu.c 2011-08-23 02:11:45.000000000 +0200
    |+++ source/vmmon-only/linux/iommu.c 2011-11-09 15:19:36.000000000 +0100
    ————————–

    Any help? I was able to patch 8.0.1 a while back just fine.

    • you are using the wrong patch. You cannot use the 7.x patch with 8.x sources they are incompatible.

      • I know that… but I’m pretty sure I downloaded the right patch, at least the file was named vmware802fixlinux320.tar.gz.

        I’ll try it again later and will confirm how it went.

        • I just got the same results… maybe the most recent update from VMware (8.0.2-591240) broke something?

  50. Thank you very much patch work for me

    Fedora 16
    Kernel 3.2.6-3.fc16.x86_64
    VMware-Workstation-Full-8.0.2-591240.x86_64

  51. I sincerely thank you, I have been using your site since … I cannot remember how long. My process works as follows: VMware informs me that there is a an update. I update and then come to your site to find the fix so that I can launch vmware. It should not be that way, VMWare is too sloppy in their code releases, but it is great that you are there for us.

    You should add a PayPal contribution button …

  52. Worked like a charm

    Big thanks – Weltall

    Regards,
    Quy

  53. Worked like a charm

    Ubuntu 11.10
    3.2.0-17-generic-pae
    VMware player 4.0.2

    This really help to save time a lot. I did spent several hours to update the kernel before found your patch.

    Big thanks – Weltall

    Regards,
    Quy

  54. I can’t thank you enough!
    your script is so great~
    It totally works for me!!
    Excellent!!

    VMware player 4.0.2 build-591240
    Kernel 2.6.42.7-1.fc15.x86_64
    Fedora 15

  55. Thank you very much!
    patch worked for me either..

    vmware player 3.1.5
    fedora 16 on 32 bit system
    3.2.6-3.fc16.i686

    Tolga.

  56. Thanks all run perfect, my mistake try to run the executable using sh instead ./ XD

  57. I am running Fedora 16 with the 3.2.7 kernel and VMware Workstataion 8.0.2. After applying the patch the modules all compile, but VMware services cannot be started. According to /var/log/messages it looks like the vmmon and vmnet modules cannot be loaded (even though they were succesfully compiled):

    Mar 1 21:57:00 sniper vmware[10416]: Starting VMware services:
    Mar 1 21:57:00 sniper vmware[10416]: Virtual machine monitor[FAILED]
    Mar 1 21:57:00 sniper vmware[10416]: Virtual machine communication interface[ OK ]
    Mar 1 21:57:01 sniper vmware[10416]: VM communication interface socket family[ OK ]
    Mar 1 21:57:01 sniper vmware[10416]: Blocking file system[ OK ]
    Mar 1 21:57:01 sniper vmware[10416]: Virtual ethernet[FAILED]
    Mar 1 21:57:01 sniper vmware[10416]: VMware Authentication Daemon[ OK ]
    Mar 1 21:57:01 sniper systemd[1]: vmware.service: control process exited, code=exited status=1
    Mar 1 21:57:01 sniper systemd[1]: Unit vmware.service entered failed state.

    Thanks in advance for your assistance!

  58. Worked with Ubuntu 12.04 and 3.2.0-17-generic

    Thanks Mate! :D

  59. very very thanks :)

  60. Thanks for the patch, works a charm!

  61. Worked a treat with Kubuntu 12.4b1 and VMWare Player 4.0.2, thanks heaps!

  62. Thankyou, thankyou, thankyou. Was having a lot of trouble with this on 32-bit debian.

    Your script failed at first as (for some reason) it didn’t like the double = signs in the test statements (lines 27 and 28), complaining “unexpected operator”. When changed to single equals, functionally equivalent according to the bash man page, all went fine.

  63. The patch did not work for me on Fedora 16: Linux quantumleap 3.2.7-1.fc16.x86_64 #1 SMP Tue Feb 21 01:40:47 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux.

    I installed VMware-Player-4.0.2-591240.x86_64.bundle

    Output of the script:

    sh patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    Stopping vmware (via systemctl): [ OK ]
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
    make -C /lib/modules/3.2.7-1.fc16.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/3.2.7-1.fc16.x86_64'
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_AdjustMappings’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:180:4: error: implicit declaration of function ‘iommu_found’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_RegisterDevice’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:415:7: error: too few arguments to function ‘iommu_domain_alloc’
    include/linux/iommu.h:68:29: note: declared here
    cc1: some warnings being treated as errors

    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.7-1.fc16.x86_64'
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
    Unable to install vmmon

    All done, you can now run VMWare Player.
    Modules sources backup can be found in the '/usr/lib/vmware/modules/source-player4.0.2-2012-03-06-09:37:21-backup' directory

    • you’ve a problem with your sources. the file you are getting errors from is not present in the last vmware modules sources.

      • You were right, some tars with old patched sources were lingering in the directory.
        After deleting these everything worked perfectly.
        Thank you very much for this great patch and quick response!

  64. As most of us said

    It worked like a charm on 3.2.1 kernel on vmware 8.0.2 after .patched file had been removed

    Thx for your effort

  65. Also having problems with Virtual ethernet:
    Starting VMware services:
    Virtual machine monitor done
    Virtual machine communication interface done
    VM communication interface socket family done
    Blocking file system done
    Virtual ethernet failed
    VMware Authentication Daemon done
    Unable to start services

    In dmesg there is no error.
    [ 7351.957662] [9336]: VMCI: Module vmci: unloaded
    [ 7351.984913] /dev/vmmon[9344]: Module vmmon: unloaded
    [ 7352.085008] bridge-wlan0: disabling the bridge
    [ 7352.124039] bridge-wlan0: down
    [ 7352.124055] bridge-wlan0: detached
    [ 7384.442574] /dev/vmmon[11045]: Module vmmon: registered with major=10 minor=165
    [ 7384.442600] /dev/vmmon[11045]: Initial HV check: anyNotCapable=0 anyUnlocked=1 anyEnabled=1 anyDisabled=0
    [ 7384.442614] /dev/vmmon[11045]: HV check: anyNotCapable=0 anyUnlocked=1 anyEnabled=1 anyDisabled=0
    [ 7384.442620] /dev/vmmon[11045]: Module vmmon: initialized
    [ 7384.481446] [11053]: VMCI: shared components initialized.
    [ 7384.481548] [11053]: VMCI: host components initialized.
    [ 7384.481664] [11053]: VMCI: Module registered (name=vmci,major=10,minor=58).
    [ 7384.481670] [11053]: VMCI: Using host personality
    [ 7384.481675] [11053]: VMCI: Module (name=vmci) is initialized
    [ 7384.727828] /dev/vmnet: open called by PID 11133 (vmnet-bridge)
    [ 7384.727844] /dev/vmnet: hub 0 does not exist, allocating memory.
    [ 7384.727887] /dev/vmnet: port on hub 0 successfully opened
    [ 7384.727908] bridge-wlan0: device is wireless, enabling SMAC
    [ 7384.727918] bridge-wlan0: up
    [ 7384.727924] bridge-wlan0: attached
    [ 7385.767747] /dev/vmnet: open called by PID 11140 (vmnet-netifup)
    [ 7385.767768] /dev/vmnet: hub 1 does not exist, allocating memory.
    [ 7385.767812] /dev/vmnet: port on hub 1 successfully opened
    [ 7385.790941] /dev/vmnet: open called by PID 11150 (vmnet-natd)
    [ 7385.790954] /dev/vmnet: hub 8 does not exist, allocating memory.
    [ 7385.790977] /dev/vmnet: port on hub 8 successfully opened
    [ 7385.793014] userif-2: sent link down event.
    [ 7385.793024] userif-2: sent link up event.
    [ 7385.794581] /dev/vmnet: open called by PID 11153 (vmnet-netifup)
    [ 7385.794609] /dev/vmnet: port on hub 8 successfully opened
    [ 7385.858420] /dev/vmnet: open called by PID 11157 (vmnet-dhcpd)
    [ 7385.858446] /dev/vmnet: port on hub 8 successfully opened
    [ 7396.256023] vmnet1: no IPv6 routers present
    [ 7396.440023] vmnet8: no IPv6 routers present

    vmware-modconfig –console –install-all didn’t solve the problem. Running VMware workstation 8.0.2 64Bit under 3.2.0-1-amd64 (Debian/unstable)

    But VMware is working fine :-D

  66. Thanks! Works superb on Debian testing 3.2.0 & Workstation 7.1.5

  67. Ubuntu 12.04 (beta)
    VMWare 8.02 VMPlayer 4.02
    Kernel 3.2.0-18.29

    Works beautifully! THANKS FOR THIS!!

    Built vsock module
    Starting VMware services:
    Virtual machine monitor done
    Virtual machine communication interface done
    VM communication interface socket family done
    Blocking file system done
    Virtual ethernet done
    VMware Authentication Daemon done
    Shared Memory Available done

    All done, you can now run VMWare WorkStation.
    Modules sources backup can be found in the ‘/usr/lib/vmware/modules/source-workstation8.0.2-2012-03-10-15:22:27-backup’ directory

  68. Hey weltall,

    I installed the patch manually and whenever I Recompile VMWare again (vmware-modconfig –console –install-all) i get

    “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
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/3.2.6/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-source-3.2.6′

    WARNING: Symbol version dump /usr/src/linux-source-3.2.6/Module.symvers
    is missing; modules will have no dependencies and modversions.

    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_AdjustMappings’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:180: error: implicit declaration of function ‘iommu_found’
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_RegisterDevice’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:415: error: too few arguments to function ‘iommu_domain_alloc’
    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/linux-source-3.2.6′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Unable to install vmmon ”

    appreciate your help in advance,
    -John

    • if this is vmware 4.0.2 /8.0.2 you’ve a mess in your modules folders you need to clean that up and be sure to use the right patch (iommu.c doesn’t exist in that folder anymore it was removed in the last sources). I’d suggest a vmware uninstall followed by wiping out it’s dangling folders in /usr/lib/.

  69. Thank you for providing the patches, and thanks Ted for providing instructions–I would have been lost without them!

    Works for me on openSUSE 12.1 64-bit.

  70. You’re my fucking hero.

  71. Many thanks! patched w/o problem on Fedora 16 (3.2.9), Player 4.0.2

  72. HI, many thanks for the patch. I ran into some problems, see output below. I am using Fedora 15 with kernel 2.6.42.9-1 and VMware workstation 8.0.2. The patch could not build iommu.c because of errors. I found an old patch file which had a portion to patch iommu.c, which I added to the top of your patch and got everything to work.

    Output of running original patch:

    $ sudo ./patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    Stopping vmware (via systemctl): [ OK ]
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make -C /lib/modules/2.6.42.9-1.fc15.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/kernels/2.6.42.9-1.fc15.x86_64′
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_AdjustMappings’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:180:4: error: implicit declaration of function ‘iommu_found’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function ‘IOMMU_RegisterDevice’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:415:7: error: too few arguments to function ‘iommu_domain_alloc’
    include/linux/iommu.h:68:29: note: declared here
    cc1: some warnings being treated as errors

    make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/2.6.42.9-1.fc15.x86_64′
    make: *** [vmmon.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    Unable to install vmmon

    Added the following to patch file to fix the problem:

    diff -u -r source802//vmmon-only/linux/iommu.c source/vmmon-only/linux/iommu.c
    — source30//vmmon-only/linux/iommu.c 2011-08-23 02:11:45.000000000 +0200
    +++ source/vmmon-only/linux/iommu.c 2011-11-09 15:19:36.000000000 +0100
    @@ -42,6 +42,12 @@
    #define PCI_BDF_SLOTFUNC(bdf) PCI_DEVFN(PCI_SLOT(bdf), PCI_FUNC(bdf))
    #define PCI_BDF_BUS(bdf) (((bdf) >> 8) & 0xff)

    +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2, 42, 0) && LINUX_VERSION_CODE = KERNEL_VERSION(3, 2, 0)
    +#include
    +#define iommu_found() iommu_present(&pci_bus_type)
    +#define iommu_domain_alloc() iommu_domain_alloc(&pci_bus_type)
    +#endif
    +
    typedef struct PassthruDevice {
    uint32 bdf;
    struct pci_dev *pdev;

    Everything builds OK now. Thanks again for your help,

    Erik

  73. Thanks! It works on Debian sid(3.2.0-2-amd64),VMware Player 4.0.2

  74. Many Many Thanks patch again!!

    Now i have vmnet1 and vmnet8 in Debian wheezy 3.2.0.pae kernel and running VMware Workstation 8.0.2 virtual Windows NT4 and Siemens pcs7 SCADA.

    You are unbelievable pal.

  75. Thanks. This fixed my vmware 8.0.2 WS.

    Running LMDE on Debian testing sources fully upgraded.

    Sweet…

  76. Latest Fedora 16 update (kernel 3.3.0-4.fc16.x86_64) partially works:


    Mar 24 17:05:31 episilon vmware[5631]: Starting VMware services:
    Mar 24 17:05:31 episilon vmware[5631]: Virtual machine monitor[FAILED]
    Mar 24 17:05:31 episilon vmware[5631]: Virtual machine communication interface[ OK ]
    Mar 24 17:05:31 episilon vmware[5631]: VM communication interface socket family[ OK ]
    Mar 24 17:05:31 episilon vmware[5631]: Blocking file system[ OK ]
    Mar 24 17:05:31 episilon vmware[5631]: Virtual ethernet[FAILED]
    Mar 24 17:05:31 episilon vmware[5631]: VMware Authentication Daemon[ OK ]
    Mar 24 17:05:31 episilon systemd[1]: vmware.service: control process exited, code=exited status=1
    Mar 24 17:05:31 episilon systemd[1]: Unit vmware.service entered failed state.

  77. Works perfect on Ubuntu Oneiric 3.2.0-20-generic-pae Thanks!

  78. I am having this problem in Fedora 16 64 bit fully updated.
    Forgive me for being dum but how do you run the downloaded patch. Ive extracted the download files and got two files. Where do they need to be loacted and how do you run the file(s)

    Thanks

    GRS

  79. Great, works very well with Xubuntu 12.04 and VM Player 4.0.2
    Thanks a lot !

  80. Does not work on Fedora 16 with 3.3.0-4.

    Error is: VMWare is not installed (properly) on this PC. Exiting

    The vmware tools were installed, and only vmxnet failed.

  81. Thank you for your good work. The patch solved the problem on Fedora 16 kernel 3.3.0-4.fc16.x86_64 and VMWare version 8.0.2-591240

  82. I get the following error:

    pst007x@pst007x-Aspire-5741:~$ sudo sh patch-modules_3.2.0.sh
    patch-modules_3.2.0.sh: 27: [: workstation8.0.2: unexpected operator
    patch-modules_3.2.0.sh: 28: [: workstation8.0.2: unexpected operator
    Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2. Exiting
    pst007x@pst007x-Aspire-5741:~$

    I have installed the correct version. i have fully un-installed/re-installed but still the same error.

    Any ideas?

    Thanks

    OS: Ubuntu 12.04LTS BETA 64bit

  83. thank you so much, it worked for me : player 4.x under ubuntu 1204 beta2 now up and running !

  84. After upgrading my Fedora box to kernel version 3.3.0-4.fc16.i686.PAE, I have not been able to get vmplayer to work any more. I’ve tried this patch and it gets closer to running, but still usually crashes with a core dump any time I try to start a vm.
    I’ve tried every combination of reverting back to old kernels and vmware players, but still am having no success.
    Has anybody else succeeded with the 3.3.0-4 kernel and player 4.02? And is the fact that I’m running the PAE patch significant?

  85. Have not been able to get the patch to run since Kernel 3.2.9.-1.. Each time I launch vmware workstation 8 my entire xwindows locks up. Any thoughts ?

    • like this no. never happened here. are you sure it’s not other components of the system doing it? like x.org itself, if you can still reach the terminal from ssh or the tty most probably it’s not a problem in the patches.

  86. Excellent work! Great thanks for it.
    Debian wheezy, Linux 3.2.0-2-amd64 x86_64 GNU/Linux – All OK!

  87. I am driving myself insane. I have been trying for 3 days to apply the patch. Kernel 3.3 and VMPlayer 4.0.2.

    I have tried manually. I have tried the patch files and NOTHING works. I have just tried downloading the file vmware802fixlinux320.tar.gz and it seems the file is corrupt.

    Think i might go and play in traffic.

    • I’ve just tried downloading it now and it works well. I’d suggest to download it through a different network.

  88. The 8.0.2 patch worked for 8.0.1 x64.

    Just remove /usr/lib/vmware/modules/source/.patched and set “vmreqver=8.0.1″ in patch-modules_3.2.0.sh

  89. Grazie mille, Stefano. Tu sei un dio. Fedora 16 3.3.0, VMWare Player funziona! Ero preoccupato per un momento. I miei esperimenti con Windows 7 può continuare.

  90. YES it works I LOVE YOU !!! (I NEED IT!!)

  91. The patch script won’t work if you have more than one VMWare product installed. E.g. I have Player and VIX, so the line where it fetches product version will not work correctly:

    ch00k@colossal:~$ vmware-installer -l 2>/dev/null | awk '/vmware-/{print $1substr($2,1,5)}'
    vmware-player4.0.2
    vmware-vix1.11.
    ch00k@colossal:~$

    • well the script isn’t mine i took it as is. I could have a look at fixing it when I’ve some more time.

      • A quick workaround is replacing the vmver=... line (line 19) with vmver="vmware-player4.0.2" for player or vmver="vmware-workstation8.0.2 for workstation
        The script could be rewritten to handle this automagically though.

  92. applied the patch to Workstation 7.15 on a fresh Kubuntu 12.4 beta (Kernel 3.2.0), everything seems to have worked just fine. However, once i start vmware, KDE will not display any Window.
    I tried re-installing and -patching, i installed gnome-core, i basically tried everything i could think of to no avail. I would be thankful for any ideas or pointers.

    console output when starting vmware:

    Logging to /tmp/vmware-hero/setup-6080.log

    (vmware-modconfig:6080): Gtk-WARNING **: Unable to locate theme engine in module_path: "oxygen-gtk",
    filename: /lib/modules/3.2.0-23-generic/misc/vmmon.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Monitor.
    author: VMware, Inc.
    srcversion: 9869FFF2EA6B02360609EC6
    depends:
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-23-generic/misc/vmnet.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Networking Driver.
    author: VMware, Inc.
    srcversion: 3C9DAEA3611CBF112C281AE
    depends:
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-23-generic/misc/vmblock.ko
    supported: external
    version: 1.1.2.0
    license: GPL v2
    description: VMware Blocking File System
    author: VMware, Inc.
    srcversion: BCAE10A6FFA68B7A1A93708
    depends:
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    parm: root:The directory the file system redirects to. (charp)
    filename: /lib/modules/3.2.0-23-generic/misc/vmci.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Communication Interface (VMCI).
    author: VMware, Inc.
    srcversion: AF0065C2AA6B67906F2173C
    depends:
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-23-generic/misc/vsock.ko
    supported: external
    license: GPL v2
    version: 1.0.0.0
    description: VMware Virtual Socket Family
    author: VMware, Inc.
    srcversion: CAEDBF81E2A76B434419B12
    depends: vmci
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-23-generic/misc/vmmon.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Monitor.
    author: VMware, Inc.
    srcversion: 9869FFF2EA6B02360609EC6
    depends:
    vermagic: 3.2.0-23-generic SMP mod_unload modversions
    No value set for `/system/http_proxy/use_http_proxy'
    No value set for `/system/proxy/mode'

    (vmware-tray:6104): Gtk-WARNING **: Unable to locate theme engine in module_path: "oxygen-gtk",

    output of ps aux |grep -i vmware

    hero 6077 0.0 1.1 237780 45672 pts/1 S+ 13:17 0:00 /usr/lib/vmware/bin/vmware
    hero 6104 0.1 0.9 398008 38888 pts/1 Sl+ 13:17 0:04 /usr/lib/vmware/bin/vmware-tray poweredOn
    root 6336 0.0 0.0 25288 1624 ? Ss 13:18 0:00 /usr/bin/vmware-usbarbitrator
    root 6413 0.0 0.0 11504 488 ? Ss 13:18 0:00 /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet1/dhcpd/dhcpd.conf -lf /etc/vmware/vmnet1/dhcpd/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet1.pid vmnet1
    root 6419 0.0 0.0 11504 492 ? Ss 13:18 0:00 /usr/bin/vmnet-dhcpd -s 6 -cf /etc/vmware/vmnet8/dhcpd/dhcpd.conf -lf /etc/vmware/vmnet8/dhcpd/dhcpd.leases -pf /var/run/vmnet-dhcpd-vmnet8.pid vmnet8
    root 6422 0.0 0.0 9368 952 ? S 13:18 0:00 /usr/bin/vmnet-natd -s 6 -m /etc/vmware/vmnet8/nat.mac -c /etc/vmware/vmnet8/nat/nat.conf

    service vmware start


    Starting VMware services:
    VMware USB Arbitrator done
    Virtual machine monitor done
    Virtual machine communication interface done
    VM communication interface socket family done
    Blocking file system done
    Virtual ethernet done
    Shared Memory Available done

    • It’s an userland problem so not covered by this patch. I don’t use kde but I’d suggest to check that oxygen gtk error

      • You’re right: i started the same vmware under a newly installed gnome and all works as expected, so indeed it seems to be the oxygen gtk theme engine thing.
        too bad nothing i try seems to fix it under KDE although i do believe i have all the necessary packages installed.

  93. Your patch worked perfectly!!! Thanks!!
    My notebook running on Ubuntu 12.04 Beta2

  94. [...] is a great aricle (and blog) on solving problems with running VMware on Linux hosts: http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linu…. What is not said there is that sometimes you are unable even to install whole Workstation. The [...]

  95. UBUNTU 12.04 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 GNU/Linux
    with
    VMware-Workstation-Full-8.0.2-591240.x86_64.bundle

    Your patch is perfect!!!

    1. cd your home directory of /tmp directory or whatever you like.
    2. download the 8.02 patch (http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz) for the link at the first page.
    3. tar vxzf vmware802fixlinux320.tar.gz
    4. sudo ./patch-modules_3.2.0.sh

    • Working perfect !

      Linux 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux UBUNTU 12.04 LTS

      vmware player 4.0.2
      vmwareplayer 4.0.2

      Than you very much
      Enric

  96. Tnks man, work like a boss : )

  97. Worked like a charme.

    [root@Oliver ~]# uname -r
    3.3.1-5.fc16.x86_64
    [root@Oliver ~]# vmware -v
    VMware Workstation 8.0.2 build-591240

    Many thanks.
    -oliver-

    • also get error.

      same as oliver

      “Worked like a charme.

      [root@Oliver ~]# uname -r
      3.3.1-5.fc16.x86_64
      [root@Oliver ~]# vmware -v
      VMware Workstation 8.0.2 build-591240

      Many thanks.
      -oliver-

  98. Was fighting with the error and this worked like a charm !!
    Thanx

  99. Hi, I don’t get Vmware-Player 3.1.5. working on a openSuse 12.1
    uname -r
    3.1.10-1.9-desktop

    Stdout-Output when patching vmware-player with ./patch-modules_3.2.0.sh:

    patching file vmblock-only/linux/dentry.c
    patching file vmblock-only/linux/filesystem.c
    patching file vmci-only/linux/driver.c
    patching file vmmon-only/linux/driver.c
    patching file vmmon-only/linux/hostif.c
    patching file vmmon-only/linux/iommu.c
    patching file vmnet-only/compat_netdevice.h
    patching file vmnet-only/driver.c
    patching file vmnet-only/filter.c
    patching file vmnet-only/hub.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    patching file vsock-only/linux/af_vsock.c
    patching file vsock-only/linux/util.c
    Stopping VMware services:
    VMware USB Arbitrator[71G done
    VM communication interface socket family[71G done
    Virtual machine communication interface[71G done
    Virtual machine monitor[71G done
    Blocking file system[71G done
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
    make -C /lib/modules/3.1.10-1.9-desktop/build/include/.. SUBDIRS=$PWD
    SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.1.10-1.9-obj/i386/desktop’
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /tmp/vmware-root/modules/vmmon-only/vmmon.mod.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.ko
    make[1]: Leaving directory `/usr/src/linux-3.1.10-1.9-obj/i386/desktop’
    make -C $PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= postbuild
    make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only’
    make[1]: `postbuild’ is up to date.
    make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    cp -f vmmon.ko ./../vmmon.o
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only’
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only’
    make -C /lib/modules/3.1.10-1.9-desktop/build/include/.. SUBDIRS=$PWD
    SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.1.10-1.9-obj/i386/desktop’
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
    make[1]: Leaving directory `/usr/src/linux-3.1.10-1.9-obj/i386/desktop’
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Built vmmon module

    All done, you can now run VMWare Player.
    Modules sources backup can be found in the
    ‘/usr/lib/vmware/modules/source-player3.1.5-2012-04-23-21:33:49-backup’
    directory

    Error-Output when patching vmware-player with ./patch-modules_3.2.0.sh:

    Using 2.6.x kernel build system.
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function
    ‘IOMMU_SetupMMU’:
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:108:28: warning: cast
    from pointer to integer of different size [-Wpointer-to-int-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:118:17: warning:
    format ‘%lx’ expects argument of type ‘long unsigned int’, but argument
    3 has type ‘long long unsigned int’ [-Wformat]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:122:35: warning: cast
    to pointer from integer of different size [-Wint-to-pointer-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:125:20: warning:
    format ‘%lu’ expects argument of type ‘long unsigned int’, but argument
    3 has type ‘uint64’ [-Wformat]
    /tmp/vmware-root/modules/vmmon-only/linux/hostif.c: In function
    ‘HostIFReadUptimeWork’:
    /tmp/vmware-root/modules/vmmon-only/linux/hostif.c:2048:10: warning:
    ‘newUpBase’ may be used uninitialized in this function [-Wuninitialized]
    Using 2.6.x kernel build system.
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: error:
    ‘VNetNetifSetMulticast’ undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: note: each
    undeclared identifier is reported only once for each function it appears in
    make[4]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[3]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[2]: *** [sub-make] Error 2
    make[1]: *** [all] Error 2
    make: *** [vmnet.ko] Error 2
    Unable to install vmnet

    The start of vmwareplayer fails also. I can post the logs, if this helps. Here an excerpt:

    [...]
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: error:
    ‘VNetNetifSetMulticast’ undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: note: each
    undeclared identifier is reported only once for each function it appears in
    make[4]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[3]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[2]: *** [sub-make] Error 2
    make[1]: *** [all] Error 2
    make: *** [vmnet.ko] Error 2
    [...]

    Any help is really appreciated,

    Rikky

  100. Hi,

    I confirm the patch also works for kernel 3.3.3 out of the box. Just run the patch and everything else was taken care of. All vm services were started successfully after the patch.

    Chers,
    kein

  101. Work for this problem.
    unable to start services

    See log file /tmp/vmware-root/modconfig-2560.log for details.

    before you can run vmware, several modules must be compiled and loaded into the running kernel

    I am using Kernel 3.3.2-8.fc17.x86_64 (Fedora 17 beta) and VMware workstation 8.0.2 build-591240

    ______
    Thanks

  102. Nice work!
    Many thanks.
    Debian Wheezy, 3.2.0-2-686-pae and VMware-Player-4.0.2-591240.i386.bundle

  103. Great , Excellent work.. it worked like a magic.

  104. Thanks, saved my day on my brand new Ubuntu 12.04

  105. Hi, i’m used “Ted says” but not working:

    $ uname -r
    3.2.0-24-generic
    $ vmware -v
    VMware Workstation 8.0.2 build-591240

    sudo ./patch-modules_3.2.0.sh



    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetEvent.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/vnetUserListener.o
    /tmp/vmware-root/modules/vmnet-only/userif.c: En la función ‘VNetCsumCopyDatagram’:
    /tmp/vmware-root/modules/vmnet-only/userif.c:520:3: error: tipo incompatible para el argumento 1 de ‘kmap’
    include/linux/highmem.h:48:21: nota: se esperaba ‘struct page *’ pero el argumento es de tipo ‘const struct ’
    /tmp/vmware-root/modules/vmnet-only/userif.c:523:3: error: tipo incompatible para el argumento 1 de ‘kunmap’
    include/linux/highmem.h:54:20: nota: se esperaba ‘struct page *’ pero el argumento es de tipo ‘const struct ’
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/userif.o] Error 1
    make[2]: *** Se espera a que terminen otras tareas….
    /tmp/vmware-root/modules/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ no se declaró aquí (no en una función)
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/filter.o] Error 1
    /tmp/vmware-root/modules/vmnet-only/netif.c: En la función ‘VNetNetIfSetup’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: error: se especificó el campo desconocido ‘ndo_set_multicast_list’ en el inicializador
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: aviso: inicialización desde un tipo de puntero incompatible [activado por defecto]
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: aviso: (cerca de la inicialización de ‘vnetNetifOps.ndo_validate_addr’) [activado por defecto]
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[1]: se sale del directorio «/usr/src/linux-headers-3.2.0-24-generic»
    make: *** [vmnet.ko] Error 2
    make: se sale del directorio «/tmp/vmware-root/modules/vmnet-only»
    Unable to install vmnet

    Thx!

    • either the wrong patch was used or the patch didn’t apply, also could you update also to 8.0.2?

      • Installing on Xubuntu 12.04 LTS

        1º, install 8.0.1 , update to 8.0.2 and apply patch
        (in line 42 change to: “patch -p1 < ~/Descargas/vmware3.2.0.patch" , "Ted Says")

        2º, sudo sh VMware-Workstation-8.0.2-591240.x86_64.bundle –uninstall-product vmware-workstation

        3º, install 8.02 and apply patch

        Not working :( in either installation options

        • check that you don’t have left over files in /usr/lib/vmware/ also don’t use sh to run things just chmod +x them and launch them directly

          • sudo rm -R vmware in /usr/lib/
            sudo rm -R vmware-root in /tmp/

            check permission of:

            patch-modules_3.2.0.sh “-rwxr-xr-x”
            vmware3.2.0.patch “-rw-r–r–”

            reinstall 8.0.2 & patch , not working & “-rwxrwxrwx” me too

            tomorrow proves it to another machine & others SO
            the last option back to Xubuntu 11.04 or wait new release of VMware 8.0.3 :) i think so

            Thanks for your time

  106. thanks a lot

  107. Worked like a charm in Ubuntu 12.04 64 bit / vmware 8.0.2 Thank you for creating the patch

  108. Thank you so much for the patch! It fixed Ubuntu 12.04 64 bit for me as well!

  109. Thanks, this worked for me on ubuntu 12.04 64 bit kernel 3.2.0-24-generic with vmware 4.0.2 build-591240 :)

  110. You just save my life!! :)

    I was getting the error: Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2. Exiting.

    So, if you are sure you have the right version just comment the following lines in the script:

    #[ -z "$vmver" ] && error “VMWare is not installed (properly) on this PC”
    #[ "$vmver" == "workstation$vmreqver" ] && product=”VMWare WorkStation”
    #[ "$vmver" == "player$plreqver" ] && product=”VMWare Player”
    #[ -z "$product" ] && error “Sorry, this script is only for VMWare WorkStation $vmreqver or VMWare Player $plreqver”

    and you should be good

  111. Thanks for the patch on Ubuntu 12.04 64bit, vmplayer 4.0.2.

  112. Works. Thank you very much!!
    Ubuntu 12.04 64bit, vmplayer 4.0.2.

  113. i do not know much about programming.

    please some one post video of patching vm player 4 in ubuntu 12.04 lst

  114. [...] – Virtual Network Device unable to load/compile-VM Player 4.0.2 in Ubuntu 12.04 Beta 2 – VMware Workstation 8.0.2 7.1.5 / Player 4.0.2 3.1.5 fix for linux kernel 3.2 and 3.3 [...]

  115. THANKS! You’re a life saver. I didn’t realize that for this to work properly I needed to uninstall and reinstall Workstation. I had previously patched on the 2.6 Kernel, then just today upgraded to 3.2. I was getting patch errors when I ran the script. After a simple uninstall/reinstall the script ran fine. My workstation is back up and running.
    Ubuntu 12.04, Workstation 7.1.5

  116. [...] http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linu… Tipps und Tricksapt, deb, linux, oneiric lancelot, player, precise pengolin, source, ubuntu, updates, vmci, vmware ← nginx und php unter debian installieren Kommentar schreiben0 Kommentare. /* */ [...]

  117. Thanks a lot. This solved my problem with vmnet not compiling using VMware Player 4.0.2 and the newly released Ubuntu 12.04 (kernel 3.2.0-24-generic-pae)

  118. Just adding my thanks to the list – this patch worked for me with vmware player 4.0.2 on Ubuntu 12.04/Linux kernel 3.2.0-23-generic.

  119. Thank’s a lot! After upgrading to Ubuntu 12.04 with kernel 3.2 VMware-Workstation 8.0.2 modules didn’t compile and I saw my day going away with search for a solution. I quickly found this patch and it worked out of the box.

  120. So many thanks! needed this for school, saved my day! :D

  121. Thanks a million ! Worked like a charm :)
    /3.2.0-1-amd64

  122. Thanks a lot! Just tried it on Ubuntu 12.04LTS with VMPlayer 4.0.2 and it worked. I was ready to apply the patch manually, but the shell script made things even easier.

  123. [...] Stefano Angeleri aus dem http://weltall.heliohost.org Blog ein. Er hat verschiedene  Patches für Kernel 3.2 / 3.3 und auch schon für Kernel 3.4 geschrieben welcher das kompilieren der VMware Module [...]

  124. Installing VMware 8.0.2 64bit

    Ubuntu 12.04LTS 324bit

    My Kernel version is: 3.2.0-20-generic

    arunx@arunx-5741:~$ sudo sh VMware-Workstation-Full-8.0.2- 591240.x86_32.bundle

    Installs ok

    When I launch I am asked to install modules which are compiled and loaded into the running kernel.

    A window opens

    VMware Kernel Module Updater

    This fails on Virtual Network Device

    ERROR LOG.

    UPDATE:

    PATCH.

    When I try to add patch, following error:

    arunx@arunx5741:~$ sudo sh patch-modules_3.2.0.sh
    [sudo] password for arunx:
    patch-modules_3.2.0.sh: 27: [: workstation8.0.2: unexpected operator
    patch-modules_3.2.0.sh: 28: [: workstation8.0.2: unexpected operator
    Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2.
    Exiting
    arunx@arunx-5741:~$

    I have fully un-installed, and re-installed. I am installing the correct version.

    Please tell me what should i next

  125. Does anyone know if this patch works for vmware server 2.0 with Ubuntu 12.04 LTS 64bit?

  126. I am using vmware 3.1.5 because of my 32 bit cpu. I opened the vmnet sources like a previous commenter suggested and I attempt to manually apply the patch, however it says:

    “can’t find file to patch at input line 4
    Perhaps you used the wrong -p or –strip option?”

    I have used p0 to p4 and even no p at all.

    • by manually patching it means porting over similar structures by actually writing them in the actual source not by using the patch directly.
      I’d suggest to update to 3.1.7 which your license allows to install and use the other patch provided by a visitor of the site to patch its sources.

  127. Big thanks for this! I was on Ubuntu 11.10 running VMWare 8.0.2. Did an inplace upgrade to Ubuntu 12.04. Ran the patch script here. VMWare successfully recompiled into the kernel. Problem solved.

  128. Just another thanks. Worked perfectly for me on WS 8.02 / kernel 3.2.0.

    Very much appreciate your effort!

  129. Re-Hi welltall:

    I reinstalled mi Xubuntu 12.04 LTS 64bits , update Xubuntu , install WMware & patch :) all done. I Think some bug in the update xubuntu, .iso is corrupted or was not final .iso

    $ uname -r
    3.2.0-24-generic
    $ vmware -v
    VMware Workstation 8.0.2 build-591240

    THX!

  130. Hi! I can’t do this. I have returned err:

    sudo ./patch-modules_3.2.0.sh

    ./patch-modules_3.2.0.sh: line 42: patch: command not found

    Ubuntu 3.2.0-24.generic

    vmware-player 4.0.2.591240

    When I do mistake?

  131. [...] contra el kernel 3.2 de Linux (aunque en el 3.3 sí funciona). Afortunadamente Stefano Angeleri ha publicado un fix que soluciona el problema. Se trata de un parche para el módulo de red virtual de VMWare. Para [...]

  132. Perfect it worked directly!!! Thanks a lot!! Nice Work.

  133. OMG, it works!!! Thank you so much!

    QQ

  134. Thanks for the workstation 8.0 for kernel 3.2 patch, works like a charm. :)

  135. Thanks works also for workstation 8.0.1 and kernel 3.2.0-24 after this change
    — vmreqver=8.0.2
    +++ vmreqver=8.0.1

  136. Thank very much.
    it’s work for vmware player 4.0.2 /ubuntu 12.04
    kernel 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:52 UTC 2012 i686 i686 i386 GNU/Linux

    Merci beaucoup.
    Cela marche pour vmware player 4.0.2 / ubuntu 12.04
    kernel 3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:52 UTC 2012 i686 i686 i386 GNU/Linux

  137. Installing VMware 8.0.2 64bit

    Ubuntu 12.04LTS 64bit

    My Kernel version is: 3.2.0-20-generic

    workstation:~$ sudo sh VMware-Workstation-Full-8.0.2- 591240.x86_32.bundle

    Installs with no problem

    When I launch I am asked to install modules which are compiled and loaded into the running kernel.

    A window opens

    VMware Kernel Module Updater

    This fails on Virtual Network Device

    When I add the patch, I receive the following error:

    workstation:~$ sudo sh patch-modules_3.2.0.sh
    [sudo] password for robert_renstrom:
    patch-modules_3.2.0.sh: 27: [: workstation8.0.2: unexpected operator
    patch-modules_3.2.0.sh: 28: [: workstation8.0.2: unexpected operator
    Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2.
    Exiting

    I have fully un-installed, and re-installed though I did not remove the settings. I am installing the correct version. What do I do next?

    • don’t use sh to run scripts. the current shell can run script directly by calling them like an application in the same folder ./scriptname

      • Ok so dont use sh.

        Man this has been a long haul.

        It works now, so ignore my comment below.

        Thanks for the great patch

        hi thanks so much for doing this but it didnt work for me i ran

        sudo sh VMware-Player-4.0.2-591240.x86_64.bundle

        then

        sudo sh VMware-Player-4.0.2-591240.x86_64.bundle

        the automatic method I gather from above – the above comments not gd btw

        then i get the following error

        patch-modules_3.2.0.sh: 27: [: player4.0.2: unexpected operator
        patch-modules_3.2.0.sh: 28: [: player4.0.2: unexpected operator
        Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2. Exiting

        Which is a bit puzzeling since the bundle i have says it is player 4.0.2.

        I am running ubuntu 12.04 crappy camel fresh install on a dell vostro laptop.

  138. This worked great, thanks!

  139. [...] 內核模塊編譯錯誤,參照 這兒 給 VMware 打上相應補丁就行。 1 2 3 $ curl -O [...]

  140. I just used the 8.0.2 script to install vmware 8.0.3 in ubuntu 12.04 64bit; linux kernel 3.2.0-24-generic. So far no problems.

  141. Just updated my Fedora 16 kernel and VMware Workstation versions…this patch fixed the problem, nicely.

    [root@localhost ~]# uname -r
    3.3.4-1.fc16.i686.PAE
    [root@localhost ~]# vmware -v
    VMware Workstation 8.0.3 build-703057

    Thanks!

  142. The script does work with VMW WS 8.0.3. and Kubuntu 12.04 64 bit.

    3.2.0-24-generic
    VMware Workstation 8.0.3 build-703057

  143. This script doesn’t work for me. VMware Workstation 8.0.3 build 703057 with Ubuntu 12.04 64bit and kernel 3.2.0-24-generic.

  144. But worked well with VMware Workstation 8.0.2. Thank you for your help.

  145. This script also works after you upgrade to Vmware 8.0.3 (vmware-workstation8.0.3). You need to edit “patch-modules_3.2.0.sh” and modify vmreqver=8.0.3. The next step, if you applied this Fix on an previous version for VmWare, delete “/usr/lib/vmware/modules/source/.patched”
    There you go.

    Thanks to weltall

    • So I did this and have not been able to get the patch to run. I have:

      3.2.0-2-amd64
      VMware Workstation 8.0.3 build-703057

      lnx-pc vmware802fixlinux320 # ./patch-modules_3.2.0.sh
      can’t find file to patch at input line 4
      Perhaps you used the wrong -p or –strip option?
      The text leading up to this was:
      ————————–
      |diff -u -r source802//vmnet-only/filter.c source/vmnet-only/filter.c
      |— source802//vmnet-only/filter.c 2012-01-18 23:22:02.000000000 +0100
      |+++ source/vmnet-only/filter.c 2012-01-26 18:07:13.000000000 +0100
      ————————–
      File to patch:

      Do I need to move this patch to a different directory before it will run. I extracted the vmware802fixlinux320.tar.gz file to it’s own folder but it fails with the error above. Any ideas?

      Thanks!

  146. I can confirm that it works with Workstation 8.0.3 build-703057 and kernel 3.2.0-24.
    But dont forget to update the “vmreqver” to 8.0.3 :)

  147. Works also with VMWare Player 4.0.3 and Kubuntu 12.04 x64 :)

    Just edit “plreqver=4.0.2″ to “plreqver=4.0.3″ in .sh :)

    TANKS!!

  148. [...] lots of Googling I found a blog post with a patch for kernels 3.2.0 and 3.3.0. Unfortunately when I tried to run the patch it failed and [...]

  149. Great comments on 8.0.3 (and of course great patch)!

    Fedora 16
    Kernel 3.3.4-1

    Ugraded to 8.0.3 from 8.0.2
    rm /usr/lib/vmware/modules/source/.patched
    edited patch-modules_3.2.0.sh
    changed vmreqver to 8.0.3
    changed plreqver to 4.0.3
    ran script

    As before, there was an issue restarting the vmware services, so ran:
    /etc/rc.d/init.d/vmware restart

    Everything now cool – works great for my VMs

  150. VMware update today to 8.03. (and like a fool I clicked ‘go’.) Changed the version check in the script to the new version and it worked.

    –vmreqver=8.0.2
    ++vmreqver=8.0.3

    • Fy,

      Thank you. That worked. I went through the same exact thing you did except that I came here when it failed and found your answer. VMWare Workstation 8.0.3 didn’t build on Linux 3.2.1, but with the above patches for 3.2+ for workstation 8.0.2 applied to 8.0.3 after your modification exactly as you wrote it, everything worked like magic.

      Brad

  151. I just used this patch to get VMWare Player 3.15 working on Ubuntu 12.04 (32-bit computer). Thank you!

  152. Excellent!!!

    Works very well in my ubuntu: kernel version 3.2.0-24-generic

    tks.

  153. Thank you for the patch.
    VMware Workstation 8.0.2 build-591240
    openSuse 12.1
    Linux Kernel 3.3.4-1.9

  154. Hi, thanks a lot for the patch!
    You might want to update the post (and the patch) with the new VMware Workstation version 8.0.3 – the patch still works fine, just the version number needs to be updated at the top of the patching script.

  155. Yep, also still working for Player 4.0.3. Version number needs to be changed and, if present, the .patched file has to be removed before applying the patch.

  156. Agree – still works after updgrading VMware Workstation or player :-)

    cd $(echo $(locate patch-modules_3.2.0.sh) | perl -pi -e ‘s/.{22}$//’)
    perl -pi -e ‘s,vmreqver=8.0.2,vmreqver=8.0.3,’ patch-modules_3.2.0.sh
    perl -pi -e ‘s,plreqver=4.0.2,plreqver=4.0.3,’ patch-modules_3.2.0.sh
    rm /usr/lib/vmware/modules/source/.patched
    sudo ./patch-modules_3.2.0.sh

    Regards
    -oliver-

  157. thanks a lot, your patch works like a charm (Ubuntu 12.04, Workstation 8.0.3; needed to change the version in patch-modules_3.2.0.sh as described in comment #152).

    Just a note, since it took me some time to find out:

    If the modules are not built automatically after starting vmware, you can use /usr/bin/vmware-modconfig --console --install-all to build them from the command line.

  158. This patch also works with Ubuntu 12.04 + VMware Workstation 8.03 (after modifying the version check in the shell script).

    Thanks!

  159. [...] Error 2Fixing the Patch for 4.0.3Thanks to Ask Ubuntu, I found that I could use the same patch from Wetal’s Blog that I used on my installation of version 4.0.2.I adjusted the patch for version 4.0.3 by changing [...]

  160. hi thanks so much for doing this but it didnt work for me i ran

    sudo sh VMware-Player-4.0.2-591240.x86_64.bundle

    then

    sudo sh VMware-Player-4.0.2-591240.x86_64.bundle

    the automatic method I gather from above – the above comments not gd btw

    then i get the following error

    patch-modules_3.2.0.sh: 27: [: player4.0.2: unexpected operator
    patch-modules_3.2.0.sh: 28: [: player4.0.2: unexpected operator
    Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2. Exiting

    Which is a bit puzzeling since the bundle i have says it is player 4.0.2.

    I am running ubuntu 12.04 crappy camel fresh install on a dell vostro laptop.

  161. Well I installed ubuntu 12.04 with linux kernel 3.2.0-24 . The patch was reluctant because vmware is yet on 4.0.3. but just open the sh file and change the plreqver from 4.0.2 into 4.0.3 and all will work fine .

  162. Thank you for your time and for publishing this information. Worked with Kubuntu 12.04 + VMware Player 4.0.3. (tweaked version variable in script to 4.0.3).

  163. Tried this on 8.0.3, works fine. You just have to change the check for version number in the patch script.

    Thank you very much for this!

  164. I installed ubuntu 12.04 with linux kernel 3.3.5 and VMware Player 4.0.3.
    I applied the patch_modules_3.2.0.sh changing “vmreqver=8.0.3″ and “plreqver=4.0.3″.
    i tried running the kernel 3.3.5 and 3.3.0 but don’t work…

    me@myPc:~/VMware/Patch/3.2.0/803$ sudo ./patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    Reversed (or previously applied) patch detected! Assume -R? [n] y
    patching file vmnet-only/netif.c
    Reversed (or previously applied) patch detected! Assume -R? [n] y
    patching file vmnet-only/userif.c
    Reversed (or previously applied) patch detected! Assume -R? [n] y
    Stopping VMware services:
    VMware Authentication Daemon done
    VM communication interface socket family failed
    Virtual machine communication interface failed
    Virtual machine monitor failed
    Blocking file system done
    Unable to stop services

  165. I’m encountering this weird situation where it is failing on vmblock. Never before has this happened. Here is the output:

    Built vmnet module
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmblock-only’
    make -C /lib/modules/3.2.0-24-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-headers-3.2.0-24-generic’
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/block.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/control.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dbllnklst.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dentry.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/file.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/filesystem.o
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:607:2: error: #else without #if
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:609:1: error: redefinition of ‘FsOpMount’
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:599:1: note: previous definition of ‘FsOpMount’ was here
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:616:2: error: #endif without #if
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:617:2: error: #else without #if
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c: In function ‘FsOpGetSb’:
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:642:4: error: implicit declaration of function ‘get_sb_nodev’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:642:4: warning: return makes pointer from integer without a cast [enabled by default]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c: At top level:
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:644:2: error: #endif without #if
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:58:12: warning: ‘FsOpReadSuper’ used but never defined [enabled by default]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:637:1: warning: ‘FsOpGetSb’ defined but not used [-Wunused-function]
    cc1: some warnings being treated as errors
    make[2]: *** [/tmp/vmware-root/modules/vmblock-only/linux/filesystem.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmblock-only] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-24-generic’
    make: *** [vmblock.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmblock-only’
    Unable to install vmblock

    All done, you can now run VMWare WorkStation.
    Modules sources backup can be found in the ‘/usr/lib/vmware/modules/source workstation7.1.5-2012-05-11-08:18:48-backup’ directory

    As a result I cannot start up vmware workstation 7.

    3.2.0-24-generic #37-Ubuntu SMP Wed Apr 25 08:43:22 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

    When I start my workstation the kernel module updater goes through and checks off every module excecpt for VMware Blocking filesystem. Then fails

    Any help or suggestions is greatly appreciated.

    Thanks!!
    A.

    • seems the patch has weirdly applied two times or something like that

      • So do you think I need to reinstall workstation?? It is weird, because I’ve been using your patch method whenever vmware doesn’t rebuild after an upgrade of ubuntu and it has never acted like this before. Oh well, such is life. Thanks for your reply.

        • Here is the patch output:

          root@airmid-sys76:/tmp/vmware/source# patch -t -f -p1 < vmware-715-kernel32.patch
          patching file vmblock-only/linux/dentry.c
          patching file vmblock-only/linux/filesystem.c
          Hunk #6 succeeded at 605 with fuzz 2 (offset 30 lines).
          patching file vmci-only/linux/driver.c
          patching file vmmon-only/linux/driver.c
          patching file vmmon-only/linux/hostif.c
          patching file vmmon-only/linux/iommu.c
          patching file vmnet-only/compat_netdevice.h
          patching file vmnet-only/driver.c
          patching file vmnet-only/filter.c
          patching file vmnet-only/hub.c
          patching file vmnet-only/netif.c
          patching file vmnet-only/userif.c
          patching file vsock-only/linux/af_vsock.c
          patching file vsock-only/linux/util.c

          Thanks again.

      • Got it working! Forgot I made backup of my vm.tar files, and just reapplied the patch to just vmblock-only and all is working just dandy! Thanks!!

  166. Confirmed. This patch works on openSUSE 12.1 with Tumbleweed kernel 3.3.5 and Workstation 8.0.3. Of course, you have to update the version number check in the shell script.

  167. {error}

    Starting VMware services:
    Virtual machine monitor done
    Virtual machine communication interface done
    VM communication interface socket family done
    Blocking file system done
    Virtual ethernet failed
    VMware Authentication Daemon done

    {solution}

    wget http://xaxatyxa.ru/download/vmware803fixlinux320.tar.gz
    tar -xvf vmware803fixlinux320.tar.gz
    sudo ./patch-modules_3.2.0.sh

  168. Lucas, You saved me the day. TX!!

  169. Works fine with VMWare Player 4.03 build-703057 on Ubuntu 12.04

    (had to modify plreqver in patch-modules_3.2.0.sh so it would patch 4.03)

    Grazie mille Stefano!

  170. Hi Lucas, i still cant get virtual ethernet works
    what should i do ?

    any latest patch or should i edit some config data ?
    it shows

    virtual ethernet failed

    thanks in advance

  171. VMware Player 4.0.3 build-703057
    on Ubuntu 12.04

    (had to modify vmver in patch-modules_3.2.0.sh – since it was returning 2 lines)

    vmver=`vmware-installer -l 2>/dev/null | awk ‘/vmware-p/{print $1substr($2,1,5)}’`
    vmver=”${vmver#vmware-}”

  172. Hi guys…. I am using vmp 4.0.3 on kernel 3.2.13 slackware 13.37 64bits. works almost fine to me unless USB stuff. When I plug som usb (pendrive, external HD) they not appears on list. I tried some patches but unsuccessful. It happend with someone?
    thanks

    • i always get a full list of usb devices when i start virtual machines so i assume that’s working correctly.

  173. Great, patch works for 4.0.3 Player also (just changing the version number in .sh file)

  174. That is pefect it works for me too.

  175. FEDORA 16: Kernel 3.3.5.2
    VMPLAYER: Vmware player 4.03

    Good News
    I’ve installed the first patch-modules_3.1.0.sh and got stuck on vmplayer initialization problem for vmnet. Now the second patch patch_modules_3.2.0.sh works perfectly and i can Run my VMPLAYER normally on the last kernel and vmplayer version

  176. Thanks for your coding mad-skills. I applied your patch to my VMware Player 4.0.3 build-703057 on my Ubuntu 12.04 host OS with a 3.2.0-24-generic kernel. My WinXP guest OS is now working fine.
    Used the slow, painful, slightly paranoid method of patching: by hand, but works great.

  177. had to follow the manual process because of the non matching version number as well.

    I am not an experiences script writer. So I only can give an idea of a more flexible script behaviour:

    if everything matches: OK

    if the versions do not match:
    (1) run patching as ‘dry run’ and check for errors
    (2) if any errors occur: => unsuccessful end
    (3) else: warn the user about the non matching versions but successful patch and ask for another try on the users risk
    (4) if user says ‘yes’ run the patch again, now without ‘dry-run’

  178. Thanks a lot, worked for me in Ubuntu 12.04 64 bit and WS 7.1.5.

  179. [...] Try the patch referenced here. [...]

  180. I downloaded VMWare player 4.0.3 and tried to install it on Ubuntu 12.04. No go, same failure mode as described above. I tried the patch, including editing the script to change 4.0.2 to 4.0.3. It still errored out. Guess I will have to go with VirtualBox until this gets fixed.

  181. Worked like a charm. Thank you so much for the patch. My vmplayer had stopped working after upgrading to ubuntu 12. It is back on track.

  182. I did an apt-get update / apt-get upgrade in Ubuntu Precise today, changed the line to 8.0.3 and the modules all built fine with the patch in vmws 8.0.3. thank you.

  183. works for 4.0.3 too, just updating the script, thank you!

  184. Successfully used with Vmware workstation 8.0.3 in 64 bit Linux Mint 13 with its 3.2.0-23-generic kernel, just had to knock out line for version check.

    Just for others not familar wth shell scripts,, just change this line to end in 8.0.3 in the file patch-modules_3.2.0.sh

    vmreqver=8.0.2

    • Worked great – previously was running 10.04lts because of compatibility issues with 12.04 beta – patch worked great after the above suggestion- Running on Alt-12.04 LTS and drive encryption. No errors

  185. Hi everyone,

    I just read this very long thread, but I’m too new to Linux (Ubuntu) to achieve that alone.

    Here is “my” situation:

    I’ve done a fresh install of Ubuntu 12.04 LTS 64 bit (kernel 3.2.0-24-generic), and I have a (paid) VMware-Workstation-Full-7.1.5-491717.x86_bundle package.

    Once the install of VMware went done, it can’t start VMware with a problem occurring at the first compilation attempt: Error. Unable to build kernel… etc. etc. etc.

    So, it’s my understanding that the patch provided here (vmware715fixlinux320.tar) can solve my problem.

    However, since I’m a real newbie, I don’t know how to use it!

    - Where should I copy (extract) the patch?
    - What should I modify (and where) into what extracted file(s)?
    - What command line should I then use to apply the patch smoothly?

    Yes, I do know this seems very trivial and basic for most of you, but not for a beginner like me!

    Any detailed help would be truly appreciated.

    Thank you in advance for your time.

    • -in any easy place
      -for that version should be nothing
      -sudo ./the file with sh at the end

      • Hello weltall.

        Thank you for the answer.

        However, I’ve the same problem as Scott Alan said bellow in his post #197: “Sorry, this script is only for VMware Workstation 7.1.5 or VMware player 3.1.5é“.

        My package is a paid version named “VMware-Workstation-Full-7.1.5-491717.x86_64.bundle”.

        What should I do now to make the script working?

        TIA.

        • you could remove the check from the script if you are sure it’s doing a mistake or figure out why it’s falling

          • Thank you again weltall for this input, but I’m too “dumb” (see my nickname) and “ignorant” to do that alone.

            So what lines of what file should I remove?

            TIA.

  186. Beautifully done!! Thanks, this really saved my sanity, and worked like a charm!

  187. Worked like a charm, thank you so much! Have been searching all over the Internet, no solution worked, until I found this. Ubuntu 12.04 + VMware Player 3.1.5.
    Wished I could install the latest VMware Player, but for whatever reason VMware insists that all version 4-up have at least “a CPU that is capable of handling 64-bit instructions”, even if you download the 32-bit version of VMware Player… Took me 4 tries to figure this out…

  188. Works for me!!!! Thx :)

    nice patch: sudo ./patch-modules_3.2.0.sh <– and be happy :)

    uname -r
    3.3.4-3.fc16.x86_64

    cat /etc/redhat-release
    Fedora release 16 (Verne)

    vmware-installer -l
    Product Name Product Version
    ==================== ====================
    vmware-workstation 8.0.2.591240

  189. Nice patch – worked for me as well.

    vmware-workstation 8.0.2.591240
    3.2.0-24-generic #39-Ubuntu SMP … x86_64

    Thanks ..

  190. Thanks for the patch and the script. Works fine for FC 17 (64 bit) and VMWare Player 4.0.3. Had to modify the script to replace 4.0.2 with 4.0.3 and it worked like a charm. I am running an FC64 guest on an FC64 host and the guest “seems” a lot more responsive when I use VMWare Player compared with running the same combination using kvm. Thanks again.

  191. Thank you very much! Patch was needed to compile 8.0.3/4.0.3 vmnet on Knoppix 7.0.2/kernel 3.3.7 (32 bits). Just changed the versions in the script.
    Reported it on the knoppix.net forums with a link to this blog.

  192. Hi

    It works for the installer VMware-Workstation-Full-8.0.3-70.
    I’ve modified the .sh file.
    Thanks a lot.

    Cesar

  193. Applied patch for Ubuntu 12.04 installing VMware Workstation 7.1.5

    Will not open using AppLoader

    From terminal running command # vmware
    scott@scott-ThinkPad-T420:~$ vmware
    Logging to /tmp/vmware-scott/setup-5854.log

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,

    (vmware-modconfig:5854): Gtk-WARNING **: Unable to locate theme engine in module_path: “murrine”,
    filename: /lib/modules/3.2.0-24-generic/misc/vmmon.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Monitor.
    author: VMware, Inc.
    srcversion: 9869FFF2EA6B02360609EC6
    depends:
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-24-generic/misc/vmnet.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Networking Driver.
    author: VMware, Inc.
    srcversion: 3C9DAEA3611CBF112C281AE
    depends:
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-24-generic/misc/vmblock.ko
    supported: external
    version: 1.1.2.0
    license: GPL v2
    description: VMware Blocking File System
    author: VMware, Inc.
    srcversion: BCAE10A6FFA68B7A1A93708
    depends:
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    parm: root:The directory the file system redirects to. (charp)
    filename: /lib/modules/3.2.0-24-generic/misc/vmci.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Communication Interface (VMCI).
    author: VMware, Inc.
    srcversion: AF0065C2AA6B67906F2173C
    depends:
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-24-generic/misc/vsock.ko
    supported: external
    license: GPL v2
    version: 1.0.0.0
    description: VMware Virtual Socket Family
    author: VMware, Inc.
    srcversion: CAEDBF81E2A76B434419B12
    depends: vmci
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    filename: /lib/modules/3.2.0-24-generic/misc/vmmon.ko
    supported: external
    license: GPL v2
    description: VMware Virtual Machine Monitor.
    author: VMware, Inc.
    srcversion: 9869FFF2EA6B02360609EC6
    depends:
    vermagic: 3.2.0-24-generic SMP mod_unload modversions
    vmware-tray: pthread_mutex_lock.c:312: __pthread_mutex_lock_full: Assertion `(-(e)) != 3 || !robust’ failed.

    • well this is an userland problem over closed source vmware or canonical managed userland code. i cannot fix it, ask canonical or vmware to do it or switch to another desktop environment.

  194. rerunning path getting:

    Sorry, this script is only for VMWare WorkStation 7.1.5 or VMWare Player 3.1.5.

    Sorry for the noobness.

    • you probably have a different version of vmware, you’ll need to say which one you’ve.

      • Hello weltall,

        Thank you for your previous answer in the post #188 and sorry to come back so late to thanks you since I was out for a couple of days and could not test.

        However, I’ve the same problem as Scott Alan: “Sorry, this script is only for VMware Workstation 7.1.5 or VMware player 3.1.5“.

        My package is a paid version named “VMware-Workstation-Full-7.1.5-491717.x86_64.bundle

        Should I try to start VMware prior to use the script?

        It’s my understanding from previous posts that’s not recommanded unless you’ve to delete some “wrong” modules.

        I would like to upgrade to the version 8, but I won’t until I can make the 7.1.5 work on Ubuntu 12.04 LTS 64.

        Thank you again in advance for your time and patience wih newbees like me.

        Best regards.

  195. Im getting this output when running the script

    [root@lf16-002 Downloads]# ./patch-modules_3.2.0.sh
    patching file vmnet-only/filter.c
    Hunk #1 succeeded at 56 with fuzz 2 (offset 16 lines).
    patching file vmnet-only/netif.c
    Reversed (or previously applied) patch detected! Assume -R? [n] n
    Apply anyway? [n] y
    Hunk #1 FAILED at 62.
    Hunk #2 FAILED at 131.
    Hunk #3 FAILED at 611.
    3 out of 3 hunks FAILED — saving rejects to file vmnet-only/netif.c.rej
    patching file vmnet-only/userif.c

    Im running fedora core 16 with kernel 3.3-7
    installing vmware 8.02

    any help would be appreciated

    • You’ve already applied the patch in the past, start the clean sources

      • What does “start with clean sources” mean exactly”. I’m getting the exact same errors as the user above.

        • as using a backup before applying previous patches or uninstalling vmware and removing all its left overs.

          • I am having the same issue, and am similarly shell-challenged. I had someone send me what they thought were the original install modules (the *.tar in the /modules directory), which I copied in to the /usr/lib/vmware/modules directory (after backing up what was there). I then tried to run the patch again:
            sudo ./patch-modules_3.2.0.sh
            and still got the ‘HUNK#n FAILED’ for hunks 1-3, and 5 (2 and 6 were successes).
            any help, especially with EXPLICIT instructions for the shell-challenged, would be appreciated.

          • check you are patching the right versions. Also I’d suggest to start from a clean state (so uninstall vmware and delete /usr/lib/vmware) then reinstall

          • Starting from a clean state did the trick, thanks!

  196. Running fedora 16 kernel version and vmware version listed below. Still having some problems getting vmware up. Would greatly appreciate any advice, thanks.

    [root@asgard source]# vmware
    Logging to /tmp/vmware-root/modconfig-10615.log
    ERROR: modinfo: could not find module vmmon
    ERROR: modinfo: could not find module vmnet
    ERROR: modinfo: could not find module vmblock
    ERROR: modinfo: could not find module vmci
    ERROR: modinfo: could not find module vsock
    ERROR: modinfo: could not find module vmmon
    ERROR: modinfo: could not find module vmnet
    ERROR: modinfo: could not find module vmblock
    ERROR: modinfo: could not find module vmci
    ERROR: modinfo: could not find module vsock
    ERROR: modinfo: could not find module vmmon
    ERROR: modinfo: could not find module vmnet
    ERROR: modinfo: could not find module vmblock
    ERROR: modinfo: could not find module vmci
    ERROR: modinfo: could not find module vsock
    ERROR: modinfo: could not find module vmmon
    ERROR: modinfo: could not find module vmnet
    ERROR: modinfo: could not find module vmblock
    ERROR: modinfo: could not find module vmci
    ERROR: modinfo: could not find module vsock

    [root@asgard source]# vmware-installer -l
    Product Name Product Version
    ==================== ====================
    vmware-workstation 8.0.3.703057

    [root@asgard source]# uname -a
    Linux asgard 3.3.4-3.fc16.x86_64 #1 SMP Thu May 3 14:46:44 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

    [root@asgard source]# head /home/ator/patch-modules_3.2.0.sh
    #! /bin/bash
    # VMWare Workstation/Player _host kernel modules_ patcher v0.6.2 by �2010 Artem S. Tashkinov
    # Tailored and fixed vmblock patching for the 2.6.39 patch by Stefano Angeleri (weltall)
    # Use at your own risk.

    fpatch=vmware3.2.0.patch
    vmreqver=8.0.3
    plreqver=4.0.3

    [root@asgard ]# yum install gcc gcc-c++ automake autoconf kernel-headers kernel-devel
    Loaded plugins: langpacks, presto, refresh-packagekit
    Package gcc-4.6.3-2.fc16.x86_64 already installed and latest version
    Package gcc-c++-4.6.3-2.fc16.x86_64 already installed and latest version
    Package automake-1.11.1-5.fc14.noarch already installed and latest version
    Package autoconf-2.68-2.fc15.noarch already installed and latest version
    Package kernel-headers-3.3.7-1.fc16.x86_64 already installed and latest version
    Package kernel-devel-3.3.7-1.fc16.x86_64 already installed and latest version
    Nothing to do

    [root@asgard ]# vmware-modconfig –console –install-all
    gcc and kernel headers must be installed

    • that’s not part of the patch but of vmware, you are probably lacking something else, if you’ve just installed what you’ve listed it’s probably not enough

  197. Fedora 17, kernel 3.4.0 , vmplayer-4.0.3 + vmware802fixlinux320.tar.gz :

    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dentry.o
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c: In function ‘FsOpReadSuper’:
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:4: error: implicit declaration of function ‘d_alloc_root’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:15: warning: assignment makes pointer from integer without a cast [enabled by default]
    cc1: some warnings being treated as errors
    make[2]: *** [/tmp/vmware-root/modules/vmblock-only/linux/filesystem.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    make[1]: *** [_module_/tmp/vmware-root/modules/vmblock-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.4.0-1.fc17.x86_64′
    make: *** [vmblock.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmblock-only’
    Using 2.6.x kernel build system.

    • i don’t remember that there have been that problem recently. check that the sources are really based off the ones shipped with 8.x and that this isn’t caused by fedora patches over vanilla.

  198. The patch for 8.0.2 works fine to Workstation 8.0.3, all that need to do is change the variable in patch-modules_3.2.0.sh file:

    vmreqver=8.0.2

    to

    vmreqver=8.0.3

    Link to patch
    http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz

  199. FYI,
    I had problems with vmnet module.
    I changed the top line where the version of VM player is specified then ran the script and could make VMWare Player 4.0.3 run in Ubuntu 12.04 amd64 with kernel 3.2.0-24-generic.

  200. Just wanted to let you know, applied this patch manually to VMware Player 4.0.3 build-703057 on Fedora 17 kernel 3.3.7 and it worked. vmnet would not compile without it. Thank you.

  201. I run SuSE12.1 with kernel ’3.1.10-1.9-default’

    First I uninstall ‘vmware-workstation 7.1.5.491717′, removed files from /usr/lib/vmware and instal a fresh Workstation 7.1.5. After that I run the patch from vmware715fixlinux320.tar.gz.
    I got the following output/error:


    ./patch-modules_3.2.0.sh
    patching file vmblock-only/linux/dentry.c
    patching file vmblock-only/linux/filesystem.c
    patching file vmci-only/linux/driver.c
    patching file vmmon-only/linux/driver.c
    patching file vmmon-only/linux/hostif.c
    patching file vmmon-only/linux/iommu.c
    patching file vmnet-only/compat_netdevice.h
    patching file vmnet-only/driver.c
    patching file vmnet-only/filter.c
    patching file vmnet-only/hub.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    patching file vsock-only/linux/af_vsock.c
    patching file vsock-only/linux/util.c
    Stopping VMware services:
    VMware USB Arbitrator done
    VM communication interface socket family done
    Virtual machine communication interface done
    Virtual machine monitor done
    Blocking file system done
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
    make -C /lib/modules/3.1.10-1.9-default/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.1.10-1.9-obj/i386/default'
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/iommu.o
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c: In function 'IOMMU_SetupMMU':
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:108:28: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:118:17: warning: format '%lx' expects argument of type 'long unsigned int', but argument 3 has type 'long long unsigned int' [-Wformat]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:122:35: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
    /tmp/vmware-root/modules/vmmon-only/linux/iommu.c:125:20: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'uint64' [-Wformat]
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
    /tmp/vmware-root/modules/vmmon-only/linux/hostif.c: In function 'HostIFReadUptimeWork':
    /tmp/vmware-root/modules/vmmon-only/linux/hostif.c:2048:10: warning: 'newUpBase' may be used uninitialized in this function [-Wuninitialized]
    CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
    CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.o
    Building modules, stage 2.
    MODPOST 1 modules
    CC /tmp/vmware-root/modules/vmmon-only/vmmon.mod.o
    LD [M] /tmp/vmware-root/modules/vmmon-only/vmmon.ko
    make[1]: Leaving directory `/usr/src/linux-3.1.10-1.9-obj/i386/default'
    make -C $PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= postbuild
    make[1]: Entering directory `/tmp/vmware-root/modules/vmmon-only'
    make[1]: `postbuild' is up to date.
    make[1]: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
    cp -f vmmon.ko ./../vmmon.o
    make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
    Built vmmon module
    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmnet-only'
    make -C /lib/modules/3.1.10-1.9-default/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-3.1.10-1.9-obj/i386/default'
    CC [M] /tmp/vmware-root/modules/vmnet-only/driver.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/hub.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/userif.o
    CC [M] /tmp/vmware-root/modules/vmnet-only/netif.o
    /tmp/vmware-root/modules/vmnet-only/netif.c: In function 'VNetNetIfSetup':
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: error: 'VNetNetifSetMulticast' undeclared (first use in this function)
    /tmp/vmware-root/modules/vmnet-only/netif.c:137:33: note: each undeclared identifier is reported only once for each function it appears in
    make[4]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[3]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[2]: *** [sub-make] Error 2
    make[1]: *** [all] Error 2
    make[1]: Leaving directory `/usr/src/linux-3.1.10-1.9-obj/i386/default'
    make: *** [vmnet.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only'
    Unable to install vmnet

    Any idea?
    Do you need any additional information?

  202. Hi Weltall. Thanks for this work. I haven’t had a successful result yet, probably due to my misunderstanding. Perhaps you can help.

    I modified the script so it would run on my WS 8.0.3 installation as suggested above by frank and clemens:

    vmreqver=8.0.3

    I applied the patch successfully and ran WS as suggested by the message at the end of the script:

    All done, you can now run WMWare Workstation.

    WS started without recompiling and displayed my suspended VM. However, when I tried to resume it, I got a a dialog that said:

    Could not open /dev/vmmon: No such file or directory.
    Please make sure that the kernel module `vmmon’ is loaded.

    followed by another that said:

    Failed to initialize monitor device.

    and another:

    Unable to change virtual machine power state: Cannot find a valid peer process to connect to.

    I have two vmmon.ko files on my system. Neither is loaded and neither is in a 3.2 directory:

    /lib/modules/3.0.0-19-generic/misc/vmmon.ko
    /lib/modules/3.0.0-20-generic/misc/vmmon.ko

    Questions:

    How do I recover from this state? Shouldn’t WS have asked for a reinstall so it could compile the patched files? Can I force one? Shouldn’t there be a 3.4 vmmon.ko that is automatically loaded?

    I am on:

    Linux pcrook-bou-lx2 3.2.0-24-generic #39-Ubuntu SMP Mon May 21 16:52:17 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

    and using:

    VMware Workstation 8.0.3 build-703057

    Thanks,

    Paul

  203. Thanks, the patch works mostly and I can use VMware player (4.0.2)

    However everytime I start VMware the VMware kernel module updater starts again.
    when installing the modules the VMware blocking filesystem shows a “!” inside a text balloon.
    Is it normal that you need to install the modules everytime and that module showing a “!”?

    • no it means something is not building, and seems fedora own kernel patches are again doing their things in that side…

  204. Great Job. Thanks.

  205. Hey all,

    I want to thank you all and especially weltall for this tremandous work, even if I’m still unable to make the vmware715fixlinux320.tar script to correct the VMware-Workstation-Full-7.1.5-491717.x86_64.bundle and make it run under Ubuntu 12.04 LTS 64 bit.

    As I said earlier, I’m not a developer and a newbee with Linux, and I just don’t know what are the line to change (and in what of the 2 files) to, as suggested by welall, “remove the check from the script if you are sure it’s doing a mistake or figure out why it’s falling”.

    First, I’m not sure the script is doing a mistake (this seems obvious to experts but I don’t know why) and second, I can’t figure out why this script is falling with the “damned” message: “Sorry, this script is only for VMware Workstation 7.1.5 or VMware player 3.1.5″ when I’m exactly using such VMware Workstation and Player on an Ubuntu 12.04 LTS 64 bit version (kernel 3.2.0-25 generic).

    I’m trully willing to upgrade to the new V8 version, but since it’s also obvious that this last VMware product has a similar problem, I’ll bet you’ll understand that I’ll first see my current version of a paid VMware-Workstation-Full-7.1.5-491717.x86_64.bundle working on my system before to pay my due.

    Any help explaining to a beginner like me how to process and fix this amazing problem will be trully appreciated.

    Thank you in advance to all of you for your concerns and time to try to solve this problem since I’ve been more than happy with VMware with all the previous Ubuntu releases since its former 10.04.3 LTS 64 bit (10.10, 11.04 and 11.10).

    Best regards.

  206. This worked great for me. You saved me a very frustrating weekend. Thanks!

  207. Comment out this line and it’ll work with anything:

    [ -z "$product" ] && error “Sorry, this script is only for VMWare WorkStation $vmreqver or VMWare Player $plreqver”

  208. Pretty cool patch, that saved my day. Many thx.

    There is VMware Player 4.0.3 since 2012-05-03 and still the same problems….
    so i had modify plreqver in patch-modules_3.2.0.sh on line 8 to plreqver=4.0.3

    vmware-installer -l
    Product Name Product Version
    ==================== ====================
    vmware-player 4.0.3.703057

    uname -r
    3.2.0-25-generic

  209. Thanks !!! it work well ok Linux 3.2.0-24-generic #39-Ubuntu SMP Mon May 21 16:52:17 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux with the patch !
    I had the message unable to compile vmmon
    juin 09 13:09:32.179: app-139703509673728| Extracting the sources of the vmmon module.
    juin 09 13:09:32.237: app-139703509673728| Building module with command: /usr/bin/make -C /tmp/vmware-root/modules/vmmon-only auto-build SUPPORT_SMP=1 HEADER_DIR=/lib/modules/3.2.0-24-generic/build/include CC=/usr/bin/gcc GREP=/usr/bin/make IS_GCC_3=no VMCCVER=4.6
    juin 09 13:09:34.029: app-139703509673728| Failed to compile module vmmon!
    ~

  210. The patch in the OP works for 8.3 if you just change the numbers inside the files

  211. This works. Yeahhh Thanx soo much !!

  212. VMWare Workstation 7.1.5, Ubuntu Precise (3.2.0-24) x86, success.

    Thank you for your work!

    I wonder why VMWare owner (is it EMC still?) doesn’t do this. After all, my money for their product went to them, not you. It’s a shame, actually. Discourages from upgrading to 8.0, thinking they will probably drop its support as soon as they can.

  213. Just tried to install VMWare on a fresh fedora 17. Had to patch your patch to get it (vmplayer v 4.0.3). It seems the latest kernel sources have slightly changed.

    Changed plreqver=4.0.2 to plreqver=4.0.3 in the shell script and added the following to the patch:

    diff -u -r source802//vmblock-only/linux/filesystem.c source/vmblock-only/linux/filesystem.c
    — source802//vmblock-only/linux/filesystem.c 2012-05-01 01:19:02.000000000 +0100
    +++ source/vmblock-only/linux/filesystem.c 2012-06-11 15:07:06.399171580 +0100
    @@ -525,7 +525,7 @@
    return -EINVAL;
    }

    - rootDentry = d_alloc_root(rootInode);
    + rootDentry = d_make_root(rootInode);
    if (!rootDentry) {
    iput(rootInode);
    return -ENOMEM;

  214. Also works with VMWarePlayer 4.0.3 on Ubuntu 12.04 Precise. All you need to do is change plreqver to 4.0.3 instead of 4.0.2 in patch-modules_3.2.0.sh.

    Thanks for the work!

  215. I am having trouble with this on aptosid (3.4 kernel)
    (i intend to patch filesystem.c change for 3.4 myself, as i am running workstation 7)

    $ sudo ./patch-modules_3.2.0.sh
    patching file vmblock-only/linux/dentry.c
    patching file vmblock-only/linux/filesystem.c
    patching file vmci-only/linux/driver.c
    patching file vmmon-only/linux/driver.c
    patching file vmmon-only/linux/hostif.c
    patching file vmmon-only/linux/iommu.c
    patching file vmnet-only/compat_netdevice.h
    patching file vmnet-only/driver.c
    patching file vmnet-only/filter.c
    patching file vmnet-only/hub.c
    patching file vmnet-only/netif.c
    patching file vmnet-only/userif.c
    patching file vsock-only/linux/af_vsock.c
    patching file vsock-only/linux/util.c
    Unable to initialize kernel module configuration

    Anyone got any pointers on how to get rid of that error message? I was unable to extract any more information about why the kernel module configuration couldn’t be initialized.

    • lack of kernel sources, build tools or similar things?

      • hmmm, i don’t think so:
        build-essential is already the newest version.
        fakeroot is already the newest version.
        kernel-package is already the newest version.
        libncurses5-dev is already the newest version.
        ncurses-base is already the newest version.

        anything i am missing?

        • i don’t see kernel headers in your listing. kernel-package is just to generate kernel packages and it’s of no use in this context.

          • okay, but they are present:
            $ uname -a
            Linux robotron 3.4-2.slh.3-aptosid-amd64 #1 SMP PREEMPT Fri Jun 15 16:00:55 UTC 2012 x86_64 GNU/Linux

            linux-headers-3.4-2.slh.3-aptosid-amd64 is already the newest version.

            with newest vmware and the WS7 patch i am still getting
            $ sudo ./patch-modules_3.4.0.sh
            patching file vmblock-only/linux/dentry.c
            patching file vmblock-only/linux/filesystem.c
            patching file vmci-only/linux/driver.c
            patching file vmmon-only/linux/driver.c
            patching file vmmon-only/linux/hostif.c
            patching file vmmon-only/linux/iommu.c
            patching file vmnet-only/compat_netdevice.h
            patching file vmnet-only/driver.c
            patching file vmnet-only/filter.c
            patching file vmnet-only/hub.c
            patching file vmnet-only/netif.c
            patching file vmnet-only/userif.c
            patching file vsock-only/linux/af_vsock.c
            patching file vsock-only/linux/util.c
            Unable to initialize kernel module configuration

            I wish i knew what i am doing wrong :(

          • a quick google search returned that the problem is probably caused by your kernel having only two version numbers instead of 3 (the vanilla kernel has 3 numbers): https://bbs.archlinux.org/viewtopic.php?id=123695&p=1

  216. Thanks! work for me:

    - kernel 3.2.0-24-generic #39-Ubuntu SMP Mon May 21 16:51:22 UTC 2012 i686 i686 i386 GNU/Linux
    - VMplayer 4.0.3 (32bits)

    I just have to modify the included script “patch-modules_3.2.0.sh” to change required version of vmplayer that work for me:

    plreqver=4.0.3

  217. FYI, The patch-modules script works against VMware-Workstation 8.0.4 as well. Just have to modify line 7. Change vmreqver=8.0.2 to 8.0.4.

    Thanks for the patch.

  218. Hello,

    I’m running knnotix with Linux KanotixBox 3.2.0-24-generic #38kanotix2~1 SMP Mon May 21 09:59:51 UTC 2012 x86_64 GNU/Linux and Vmware 8.4 therefore I got this error:[: 27: workstation8.0.4: unexpected operator
    [: 28: workstation8.0.4: unexpected operator
    Sorry, this script is only for VMWare WorkStation 8.0.2 or VMWare Player 4.0.2. Exiting

    I'm unable to install the vmmon, here the errors:

    soad@KanotixBox:~/Downloads$ sudo cat /tmp/vmware-root/modconfig-13643.log | grep Faile
    2012-06-15T05:25:59.051Z| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file “/usr/lib/vmware/settings”: No such file or directory.
    2012-06-15T05:25:59.051Z| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file “/root/.vmware/config”: No such file or directory.
    2012-06-15T05:25:59.051Z| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file “/root/.vmware/preferences”: No such file or directory.
    2012-06-15T05:25:59.051Z| vthread-3| I120: PREF Failed to load user preferences.
    2012-06-15T05:25:59.188Z| vthread-3| I120: Failed to find /lib/modules/preferred/build/include/linux/version.h
    2012-06-15T05:25:59.188Z| vthread-3| I120: Failed version test: /lib/modules/preferred/build/include/linux/version.h not found.
    2012-06-15T05:25:59.290Z| vthread-3| I120: Failed to find /lib/modules/preferred/build/include/linux/version.h
    2012-06-15T05:25:59.290Z| vthread-3| I120: Failed version test: /lib/modules/preferred/build/include/linux/version.h not found.
    2012-06-15T05:25:59.340Z| vthread-3| I120: Failed to find /lib/modules/preferred/build/include/linux/version.h
    2012-06-15T05:25:59.340Z| vthread-3| I120: Failed version test: /lib/modules/preferred/build/include/linux/version.h not found.
    2012-06-15T05:26:09.093Z| vthread-3| I120: Failed to compile module vmnet!
    2012-06-15T05:27:08.968Z| vthread-3| I120: Failed to find /lib/modules/preferred/build/include/linux/version.h
    2012-06-15T05:27:08.968Z| vthread-3| I120: Failed version test: /lib/modules/preferred/build/include/linux/version.h not found.
    2012-06-15T05:27:11.820Z| vthread-3| I120: Failed to compile module vmnet!

    I hope someone can help,

    Thanks in advance

  219. Thanks!

    It also appears to be working with the newest update to VMWare Player 4.0.4.
    Just remember to adjust the “plreqver=4.0.4″ parameter in patch-modules_3.2.0.sh…

    Cheers

  220. Thanks!

    Works with Workstation 8.0.4 and VMWare Player 4.0.4!

    Edit the patch-modules_3.2.0.sh on line 7 and 8 from
    vmreqver=8.0.2
    plreqver=4.0.2
    to
    vmreqver=8.0.4
    plreqver=4.0.4

    then open the terminal:
    sudo ./patch-modules_3.2.0.sh

    when the /usr/lib/vmware/modules/source/.patched found. You have already patched your sources. message appears.

    Then you must first remove the .patched files with sudo rm -r /usr/lib/vmware/modules/source/.patched

  221. [...] weltall Filed under Fedora and tagged fedora, kernel, VMware, VMware Workstation | Leave a [...]

  222. [...] install the vmware workstation trial (you’ll need this just a couple of minutes) I needed welltal’s patch to run vmware on the newest linux 3.3 kernel. I needed to edit the .sh-file it as well to remove some [...]

  223. [...] Después de la instalación y al correrlo por primera vez aparece este mensaje: “Before you can run Vmware, several modules must be compiled and loaded into the running kernel”. Haz clic en Cancelar y diríjete a este link para descargar el patch: http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linu… [...]

  224. Very good work !!

    Worked for me with with kernel 3.2.0-23-generic (Mint 13) and vmplayer 4.0.4 build-744019.
    I’d have to untar /patch /tar manually, but it worked perfectly !!!

    Thanks a lot !

  225. [...] Next you need to download and extract the following patch to your home directory, for more information please see http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linu…. [...]

  226. Patch applied in Mint 13 x64 Cinammon (looks like) successfully, but now the vmware Workstation 7.1.6 won’t display on the screen, it just sits there for a couple seconds and then you have a normal blank desktop, did I do something wrong in the patch? If you run vmware at the command line it looks like it’s doing everything it should, but then ps aux | grep vmware doesn’t show the vmware actually running, just the network. The weird thing is that VMWare player works fine though, anyone had anything similar and find the solution? I used the patch vmware715fixlinux320.tar.gz on kernel 3.2.0-23-generic #36-Ubuntu.

  227. I am using Kubuntu 12.04 , installed VMware workstation 7.1.6 , applied the patch u hav shared .. I get the following errror “unable to build kernel module “

  228. Hi, having this problem:

    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c: In function «FsOpReadSuper»:
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:4: error: implicit declaration of function «d_alloc_root» [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:15: warning: in assigning an integer is converted to a pointer without a cast [enabled by default]
    cc1: some warnings being treated as errors
    make[2]: *** [/tmp/vmware-root/modules/vmblock-only/linux/filesystem.o] Error 1
    make[2]: *** Ожидание завершения заданий...
    make[1]: *** [_module_/tmp/vmware-root/modules/vmblock-only] Error 2
    make[1]: Выход из каталога `/usr/src/linux-3.4.3-1-ARCH'
    make: *** [vmblock.ko] Ошибка 2
    make: Выход из каталога `/tmp/vmware-root/modules/vmblock-only'
    Unable to install vmblock

    Happens with kernel 3.4.3, can somebody help please?

  229. I just run “sudo apt-get install alien” and then the “sudo ./patch-modules_3.2.0.sh ” and… guess what…? Works just fine….!!!

  230. The patch seems to work on v7.1.6 if you remove the version check from the script.

  231. Great post, works like charm. I just have to mention that it works for vmplayer 4.0.4 so I had to modify the version number in the script to make it work.
    Config: Ubuntu 12.04 64-bit.
    Kernel: 3.2.0-26-generic #41-Ubuntu SMP Thu Jun 14 17:49:24 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
    Thanks for the great help.

  232. Great post, works like a charm.
    Thanks for the advice to edit the version number in patch-modules!

    Now happily running on Ubuntu 12.04

  233. Hi,

    if you have installed vmware-vix and vmware-player, the Shellscript is not working. Make sure you calculate the version using

    vmver=`vmware-installer -l 2>/dev/null | awk ‘/vmware-player/{print $1substr($2,1,5)}’`

    to fix the problem

    Frank

  234. Finally!!! Thank you! Works like a champ on VMware 4.0.4. Just changed a few details in the patch as mentioned earlier! FINALLY!!!!!!!

  235. Your script worked perfectly for me on 64-bit Ubuntu 12.04 LTS, fixing VMware Workstation 8.0.4 virtual network device. Thank you!!

  236. [...] vmware workstation 8.0.2 7.1.5 / player 4.0.2 3.1.5 fixes for linux 3.2 and linux 3.3 | Weltall&#821… Find the source code On my system it is at /usr/lib/vmware/modules/source [...]

  237. Hi,

    the patch worked very well for me, after adjusting “plreqver” to “4.0.4″ in “patch-modules_3.2.0.sh” for a vmware-player “4.0.4 build-744019″ on a 64 bit (K)Ubuntu 12.04 with kernel version “3.2.0-27-generic”. It even survived the upgrade of the kernel to “3.2.0-29-generic”.

    Thank you very much.

    Best regards,

    Holger

  238. Thank’s a lot!! Worked perfect with VMware Player 4.0.4 / Ubuntu 12.04 64bit after changing plreqver accordingly.

  239. Thanks for this patch. It works nicely on Debian. It’s pretty sad that after all this time VMware still hasn’t updated their drivers.

  240. Hi,
    Im running vmplayer 4.0.2 on fedora 17 running kernel 3.2.10-1.fu2012.x86_64, when i apply the patch ,this is what i get,

    /tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: error: unknown field ‘ndo_set_multicast_list’ specified in initializer
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: initialization from incompatible pointer type [enabled by default]
    /tmp/vmware-root/modules/vmnet-only/netif.c:134:7: warning: (near initialization for ‘vnetNetifOps.ndo_validate_addr’) [enabled by default]
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    /tmp/vmware-root/modules/vmnet-only/userif.c: In function ‘VNetCsumCopyDatagram’:
    /tmp/vmware-root/modules/vmnet-only/userif.c:520:3: error: incompatible type for argument 1 of ‘kmap’
    In file included from /tmp/vmware-root/modules/vmnet-only/userif.c:26:0:
    include/linux/highmem.h:48:21: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    /tmp/vmware-root/modules/vmnet-only/userif.c:523:3: error: incompatible type for argument 1 of ‘kunmap’
    In file included from /tmp/vmware-root/modules/vmnet-only/userif.c:26:0:
    include/linux/highmem.h:54:20: note: expected ‘struct page *’ but argument is of type ‘const struct ’
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/userif.o] Error 1
    /tmp/vmware-root/modules/vmnet-only/filter.c:60:16: error: ‘THIS_MODULE’ undeclared here (not in a function)
    make[2]: *** [/tmp/vmware-root/modules/vmnet-only/filter.o] Error 1
    make[1]: *** [_module_/tmp/vmware-root/modules/vmnet-only] Error 2
    make[1]: Leaving directory `/usr/src/kernels/3.2.10-1.fu2012.x86_64′
    make: *** [vmnet.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmnet-only’
    Unable to install vmnet

    All done, you can now run VMWare Player.
    Modules sources backup can be found in the ‘/usr/lib/vmware/modules/source-player4.0.2-2012-08-15-10:47:24-backup’ directory

    Any hints /ideas on how to resolve this issue

  241. Thank you!
    Your patch works fine with 8.0.4, thank you once again!

  242. Hello,

    I’m running fedora 17 with kernel 3.5.2-3.fc17.x86_64 and VMware-Workstation-Full-9.0.0-812388.x86_64.bundle.
    vmplayer-5.0.0 terminates immediately after the start.

    vmplayer-5.0.0 only runs with kernel-3.4.0-1.fc17.x86_64

    The contents of the file vmware-modconfig-5653.log looks like following:

    2012-08-23T20:00:54.506+01:00| vthread-3| I120: Log for VMware Workstation pid=5653 version=9.0.0 build=build-812388 option=Release
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: The process is 64-bit.
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: Host codepage=UTF-8 encoding=UTF-8
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: Host is Linux 3.5.2-3.fc17.x86_64 Fedora release 17 (Beefy Miracle)
    2012-08-23T20:00:54.505+01:00| vthread-3| I120: Msg_Reset:
    2012-08-23T20:00:54.505+01:00| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file “/usr/lib/vmware/settings”: Datei oder Verzeichnis nicht gefunden.
    2012-08-23T20:00:54.505+01:00| vthread-3| I120: —————————————-
    2012-08-23T20:00:54.505+01:00| vthread-3| I120: PREF Optional preferences file not found at /usr/lib/vmware/settings. Using default values.
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: Msg_Reset:
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: [msg.dictionary.load.openFailed] Cannot open file “/home/martin/.vmware/config”: Datei oder Verzeichnis nicht gefunden.
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: —————————————-
    2012-08-23T20:00:54.506+01:00| vthread-3| I120: PREF Optional preferences file not found at /home/martin/.vmware/config. Using default values.
    2012-08-23T20:00:54.506+01:00| vthread-3| W110: Logging to /tmp/vmware-martin/vmware-modconfig-5653.log
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Reading in info for the vmmon module.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Reading in info for the vmnet module.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Reading in info for the vmblock module.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Reading in info for the vmci module.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Reading in info for the vsock module.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Setting vsock to depend on vmci.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Created new pathsHash.
    2012-08-23T20:00:54.511+01:00| vthread-3| I120: Invoking modinfo on “vmmon”.
    2012-08-23T20:00:54.513+01:00| vthread-3| I120: “/sbin/modinfo” exited with status 0.
    2012-08-23T20:00:54.513+01:00| vthread-3| I120: Invoking modinfo on “vmnet”.
    2012-08-23T20:00:54.516+01:00| vthread-3| I120: “/sbin/modinfo” exited with status 0.
    2012-08-23T20:00:54.516+01:00| vthread-3| I120: Invoking modinfo on “vmblock”.
    2012-08-23T20:00:54.519+01:00| vthread-3| I120: “/sbin/modinfo” exited with status 0.
    2012-08-23T20:00:54.519+01:00| vthread-3| I120: Invoking modinfo on “vmci”.
    2012-08-23T20:00:54.521+01:00| vthread-3| I120: “/sbin/modinfo” exited with status 0.
    2012-08-23T20:00:54.521+01:00| vthread-3| I120: Invoking modinfo on “vsock”.
    2012-08-23T20:00:54.523+01:00| vthread-3| I120: “/sbin/modinfo” exited with status 0.

    The contents of the kernel.log file looks like following:

    Aug 23 20:01:01 localhost kernel: [ 710.974813] general protection fault: 0000 [#5] SMP
    Aug 23 20:01:01 localhost kernel: [ 710.974818] CPU 1
    Aug 23 20:01:01 localhost kernel: [ 710.974819] Modules linked in: stv0299 ves1x93 dvb_ttpci ttpci_eeprom saa7146_vv saa7146 dvb_core videobuf_dma_sg videobuf_core v4l2_common videodev media bnep bluetooth rfkill vmnet(O) vsock(O) vmci(O) vmmon(O) fuse snd_hda_codec_hdmi ppdev coretemp lpc_ich mfd_core nvidia(PO) snd_rme96 snd_hda_codec_analog serio_raw parport_pc shpchp parport skge sky2 i2c_i801 nfsd nfs_acl auth_rpcgss lockd sunrpc kvm_intel i2c_core kvm snd_hda_intel snd_hda_codec snd_hwdep snd_pcm asus_atk0110 uinput i82975x_edac edac_core microcode snd_page_alloc snd_timer snd soundcore binfmt_misc firewire_ohci firewire_core crc_itu_t [last unloaded: scsi_wait_scan]
    Aug 23 20:01:01 localhost kernel: [ 710.974851]
    Aug 23 20:01:01 localhost kernel: [ 710.974853] Pid: 6227, comm: vmware-vmx Tainted: P D O 3.5.2-3.fc17.x86_64 #1 stem manufacturer System Product Name/P5WDG2 WS PRO
    Aug 23 20:01:01 localhost kernel: [ 710.974855] RIP: 0010:[] [] HostIF_SafeRDMSR+0xf/0×30 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974863] RSP: 0018:ffff88016e7e5b88 EFLAGS: 00010246
    Aug 23 20:01:01 localhost kernel: [ 710.974864] RAX: 0000000000000000 RBX: 0000000000000001 RCX: 000000000000048b
    Aug 23 20:01:01 localhost kernel: [ 710.974866] RDX: 0000000000000000 RSI: ffff88016e7f2590 RDI: 000000000000048b
    Aug 23 20:01:01 localhost kernel: [ 710.974867] RBP: ffff88016e7e5b88 R08: ffff8801bfc96610 R09: ffffffffa0d46672
    Aug 23 20:01:01 localhost kernel: [ 710.974868] R10: 0000000000000038 R11: 0000000000003246 R12: 0000000000000000
    Aug 23 20:01:01 localhost kernel: [ 710.974869] R13: ffff88016e7f2580 R14: ffff88016e7f2580 R15: 00007fffdfd66850
    Aug 23 20:01:01 localhost kernel: [ 710.974871] FS: 00007ff5cd372740(0000) GS:ffff8801bfc80000(0000) knlGS:0000000000000000
    Aug 23 20:01:01 localhost kernel: [ 710.974872] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    Aug 23 20:01:01 localhost kernel: [ 710.974874] CR2: 000000000099ca10 CR3: 00000001446d5000 CR4: 00000000000007e0
    Aug 23 20:01:01 localhost kernel: [ 710.974875] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
    Aug 23 20:01:01 localhost kernel: [ 710.974876] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
    Aug 23 20:01:01 localhost kernel: [ 710.974878] Process vmware-vmx (pid: 6227, threadinfo ffff88016e7e4000, task ffff8801b2699710)
    Aug 23 20:01:01 localhost kernel: [ 710.974879] Stack:
    Aug 23 20:01:01 localhost kernel: [ 710.974880] ffff88016e7e5bb8 ffffffffa0d48e23 ffffffffa0d48da0 ffff88016e7e5be8
    Aug 23 20:01:01 localhost kernel: [ 710.974883] ffff88016e7f2580 0000000000000000 ffff88016e7e5bd8 ffffffffa0d47780
    Aug 23 20:01:01 localhost kernel: [ 710.974885] ffff88016e7f2580 00000000fffffff4 ffff88016e7e5c08 ffffffffa0d4ac1c
    Aug 23 20:01:01 localhost kernel: [ 710.974888] Call Trace:
    Aug 23 20:01:01 localhost kernel: [ 710.974892] [] Vmx86GetMSR+0×83/0xd0 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974896] [] ? Vmx86GetUnavailPerfCtrsOnCPU+0×150/0×150 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974900] [] HostIF_CallOnEachCPU+0×20/0×40 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974904] [] Vmx86_GetAllMSRs+0x2c/0×50 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974907] [] LinuxDriver_Ioctl+0x70f/0xd40 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974911] [] ? unlock_page+0×31/0×50
    Aug 23 20:01:01 localhost kernel: [ 710.974914] [] ? __do_fault+0x3f9/0×560
    Aug 23 20:01:01 localhost kernel: [ 710.974916] [] ? handle_pte_fault+0×95/0xb10
    Aug 23 20:01:01 localhost kernel: [ 710.974920] [] ? ext4_file_write+0xbf/0×260
    Aug 23 20:01:01 localhost kernel: [ 710.974922] [] ? free_pages_and_swap_cache+0xad/0xd0
    Aug 23 20:01:01 localhost kernel: [ 710.974924] [] ? handle_mm_fault+0×259/0×320
    Aug 23 20:01:01 localhost kernel: [ 710.974927] [] ? do_page_fault+0x1bc/0x4b0
    Aug 23 20:01:01 localhost kernel: [ 710.974930] [] LinuxDriver_UnlockedIoctl+0×18/0×20 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974933] [] do_vfs_ioctl+0×99/0×580
    Aug 23 20:01:01 localhost kernel: [ 710.974935] [] sys_ioctl+0×99/0xa0
    Aug 23 20:01:01 localhost kernel: [ 710.974937] [] system_call_fastpath+0×16/0x1b
    Aug 23 20:01:01 localhost kernel: [ 710.974938] Code: 83 c4 01 e8 84 a6 3e e0 44 89 e0 48 3b 43 08 72 e9 48 89 df e8 33 b4 42 e0 eb 9e 90 55 48 89 e5 66 66 66 66 90 31 c0 89 c2 89 f9 32 31 ff 41 89 c0 48 c1 e2 20 89 f8 4c 09 c2 48 89 16 5d c3
    Aug 23 20:01:01 localhost kernel: [ 710.974962] RIP [] HostIF_SafeRDMSR+0xf/0×30 [vmmon]
    Aug 23 20:01:01 localhost kernel: [ 710.974966] RSP
    Aug 23 20:01:01 localhost kernel: [ 710.974968] —[ end trace 04aa45b3d8c2dbda ]—

    The two files “/usr/lib/vmware/settings” and “/home/martin/vmware/config” do not exist.
    Now the question is, how can i create these files or what files must be deleted of the old settings. ?

  243. http://weltall.heliohost.org/wordpress/wp-content/uploads/2012/01/vmware802fixlinux320.tar.gz

    I’m happy to report that the patch worked for my current ubuntu x86_64 system “precise” with vmware player 4.0.4 on a stock kernel 3.2.0-29-generic.

  244. The 7.1 patch seems to apply just fine to 7.1.6 workstation.

    Any plans for Workstation 9?

  245. Just testet VMware Player 5 (=Workstation 9).
    Looks good in Ubuntu 12.04, no patch needed.

    http://kenntwas.de/2012/linux/vmware-player-5-mit-3d-unterstuetzung-fuer-linux/ (sorry German)
    You’ll also find the logs of vmware-config-tools.pl there.

  246. [...] de lancer le logiciel. Après des recherches, j’ai trouvé ce site qui fournit un patch afin de corriger ce bug. La version de VMware que je souhaitais installer [...]

  247. Just want to mention that I used this patch on VMware Work Station 7.1.6 and Kernel 3.2.0-29 and it worked. Just change the value for the variable ‘vmreqver’ in patch-module_3.2.0.sh to 7.1.6 and run. When VMWare starts it will complain that that the Kernel is too new and things might not work well. Just check the box that says “Shut up” :) . And Thanx a lot for sharing this patch

  248. Ubuntu Precise can follow the tip that J gives above. Thanks!

  249. Thank you very, very much…..

  250. [...] risolve il problema…qui sotto il link alla pagina per il download della patch: vmware workstation 8.0.2 7.1.5 / player 4.0.2 3.1.5 fixes for linux 3.2 and linux 3.3 | Weltall's bl… Rispondi quotando « Discussione precedente | Prossima [...]

  251. I don’t know what the hell this patch is doing but it WORKED! Thanks man.

  252. Thanks mate,

    worked for me!

  253. So I installed 8.0.3 on Pangolin, forgot about the patch, tried the compiles on first startup, none worked, then remembered the patch. Applied the patch as superuser (sudo), VMWare Blocking FileSystem would NOT compile whatever I’ve tried to do so far. Here’s the output. Everything else seemed to compile just fine:

    Using 2.6.x kernel build system.
    make: Entering directory `/tmp/vmware-root/modules/vmblock-only’
    make -C /lib/modules/3.5.0-25-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
    MODULEBUILDDIR= modules
    make[1]: Entering directory `/usr/src/linux-headers-3.5.0-25-generic’
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/block.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/control.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dbllnklst.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/dentry.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/file.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/filesystem.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/inode.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/module.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/stubs.o
    CC [M] /tmp/vmware-root/modules/vmblock-only/linux/super.o
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c: In function ‘FsOpReadSuper’:
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:4: error: implicit declaration of function ‘d_alloc_root’ [-Werror=implicit-function-declaration]
    /tmp/vmware-root/modules/vmblock-only/linux/filesystem.c:528:15: warning: assignment makes pointer from integer without a cast [enabled by default]
    cc1: some warnings being treated as errors
    make[2]: *** [/tmp/vmware-root/modules/vmblock-only/linux/filesystem.o] Error 1
    make[2]: *** Waiting for unfinished jobs….
    make[1]: *** [_module_/tmp/vmware-root/modules/vmblock-only] Error 2
    make[1]: Leaving directory `/usr/src/linux-headers-3.5.0-25-generic’
    make: *** [vmblock.ko] Error 2
    make: Leaving directory `/tmp/vmware-root/modules/vmblock-only’
    Unable to install vmblock

    What am I doing wrong?

  254. FYI, this also works with 7.16.
    I modified references in the shell script and the patch file name from 7.15 to 7.16 and it worked fine.

    Thanks

    CD

  255. [...] VMWare Player 4.0.4, using the vmware workstation 8.0.2 / player 4.0.2 fix for linux 3.2+ patch to get around the compilation failure for virtual ethernet [...]

  256. Many thanks. I updated to Debian/Wheezy and my old 3.1.5 vmplayer (required for my amd64 chips) would no longer build. Your patch fixed this problem. A real asset ! Thanks so much for your patches !!!

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>