Update: Looking for 2.6.26 howto – here you go !

After the successful (How-to install VMware Player and Workstation on 2.6.24 Linux kernel)[/linux/how-to-install-vmware-player-workstation-on-2624-kernel] and with 2.6.25 up and running on my Debian Unstable (Sid) I had no option but to update the procedure.

  1. Download latest and greatest products from VMware
  2. Install and patch as described in the previous post (use vmware-any-any-update-116.tgz)
  3. Download the vmware-any-any-update-117-very-ALPHA.tgz
  4. Extract the archive in /usr/lib/vmware/modules/source (or wherever are yours vmblock.tar, vmmon.tar, vmnet.tar)
  5. Run vmware-2.6.25.sh and then vmware-config.pl
  6. If compiles – have fun, if not drop me a line :)

Important notes:

  1. The original author of the patches is 6xx I have modified the vmmon.patch since otherwise I was getting the error at the bottom of the article. The original patches can be found here
  2. vmware-2.6.25.sh is a very dumb script – read it carefully before executing. It will be even better to paste the commands one by one
  3. This any-any patch has nothing to do with the original any-any patches by Petr therefor I do not want to take the credit for it. All I’m trying to achieve is to gather the Linux VMware community here and share ideas. If someone wants to help and make the patches more unified and smarter just drop me a mail (can be found on the home page)
  4. I take no responsibility for any problems or damage that may
    occur as a result of using any of the information contained in this article.
    Use the information at your own risk ;)

Error log:

include/asm/page.h: In function ‘pte_t native_make_pte(pteval_t)’:
include/asm/page.h:128: error: expected primary-expression before ‘)’ token
include/asm/page.h:128: error: expected ‘;’ before ‘{’ token
include/asm/page.h:128: error: expected primary-expression before ‘.’ token
include/asm/page.h:128: error: expected `;' before ‘}’ token
include/asm/paravirt.h: In function ‘pte_t __pte(pteval_t)’:
include/asm/paravirt.h:955: error: expected primary-expression before ‘)’ token
include/asm/paravirt.h:955: error: expected ‘;’ before ‘{’ token
include/asm/paravirt.h:955: error: expected primary-expression before ‘.’ token
include/asm/paravirt.h:955: error: expected `;' before ‘}’ token
include/asm/paravirt.h: In function ‘void pmd_clear(pmd_t*)’:
include/asm/paravirt.h:1171: warning: missing braces around initializer for ‘pud_t’
include/asm/paravirt.h:1171: warning: missing braces around initializer for ‘pgd_t’
include/asm/paravirt.h:1171: error: cannot convert ‘pud_t’ to ‘pgdval_t’ in initialization
make[2]: *** [/tmp/vmware-config2/vmmon-only/common/task.o] Error 1
make[1]: *** [_module_/tmp/vmware-config2/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.25-1-686'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config2/vmmon-only'
Unable to build the vmmon module.

Comments

Comment by Mike Davis on 2008-05-08 04:56:27 +0300

Per your instructions, I have extracted the archive above to the directory above (which is correct in my case). How do I do step 5? (Run vmware-2.6.25.sh and then vmware-config.pl). No way to do this in GUI, I presume? I can not seem to get t to this dir via the consol.

I know this is a newbie question, steep learning curve. Thanks!

Mike

Comment by Ron on 2008-05-08 16:05:42 +0300

I applied your patch to a 2.6.25 minor patch 3 system, and this is what I get:

include/asm/page.h: In function ‘pte_t native_make_pte(pteval_t)’:
include/asm/page.h:128: error: expected primary-expression before ‘)’ token
include/asm/page.h:128: error: expected ‘;’ before ‘{‘ token
include/asm/page.h:128: error: expected primary-expression before ‘.’ token
include/asm/page.h:128: error: expected `;’ before ‘}’ token
In file included from /tmp/vmware-config4/vmmon-only/common/task.c:1194:
/tmp/vmware-config4/vmmon-only/common/task_compat.h: At global scope:
/tmp/vmware-config4/vmmon-only/common/task_compat.h:9: warning: ‘typedef’ was ignored in this declaration
make[2]: *** [/tmp/vmware-config4/vmmon-only/common/task.o] Error 1
make[1]: *** [_module_/tmp/vmware-config4/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.25-fw3′
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config4/vmmon-only’
Unable to build the vmmon module.

Comment by Peter on 2008-05-09 10:15:49 +0300

cd /usr/lib/vmware/modules/source
sh vmware-2.6.25.sh
vmware-config.pl

You should be root for these commands.

Comment by Steven Rasem on 2008-05-09 13:11:21 +0300

Nice work. Got it working with vmware player under debian

Comment by Peter on 2008-05-09 20:16:02 +0300

@Ron

Can you check if in vmmon-only (in vmmon.tar) vmmon-only/common/task.c has #define _ASM_X86_PAGE_H

Also can you paste the output from running the vmware-2.6.25.sh

Mine looks like:
patching file include/vcpuset.h
Hunk #1 succeeded at 70 with fuzz 2.
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
patching file bridge.c
Hunk #2 FAILED at 853.
1 out of 2 hunks FAILED — saving rejects to file bridge.c.rej
patching file filter.c
patching file vmnetInt.h
patching file linux/dentry.c
Hunk #1 succeeded at 112 (offset 14 lines).
patching file linux/filesystem.c
Hunk #1 succeeded at 273 (offset 14 lines).
Hunk #2 succeeded at 305 (offset 14 lines).
patching file linux/super.c
Hunk #1 succeeded at 37 (offset 14 lines).
Hunk #2 succeeded at 54 (offset 14 lines).
Hunk #3 succeeded at 142 (offset 14 lines).
Hunk #4 succeeded at 152 (offset 14 lines).

Comment by anthrax on 2008-05-14 18:31:42 +0300

Great job done!
It works for me flawless in a Opensuse 11.0 x86_64 system with vmware-server versión 1.0.5 and kernel 2.6.25 :)

Comment by vnk on 2008-05-15 07:54:57 +0300

Hi. Is there any way to make this work with workstation 5.5? The above procedure fails to build on 2.6.25-14 (fresh Fedora 9). server 1.0.5 doesn’t build modules either, looks like Fedora kernel issue?

Comment by Peter on 2008-05-15 10:19:25 +0300

Can you post more information (error messages, etc)?
Is there any reason why not using later version?

Comment by vnk on 2008-05-15 13:03:52 +0300

I think the problem is the different content of the /usr/lib/vmware/modules/source:

-r–r–r– 1 root root 706560 2008-05-15 21:57 vmmon.tar
-r–r–r– 1 root root 378880 2008-05-15 21:57 vmnet.tar
-r–r–r– 1 root root 51200 2008-05-15 21:57 vmppuser.tar

vmblock.tar doesn’t exist, perhaps that’s different in version 6?

I have to use 5.5, company won’t buy upgrade license.

Comment by Peter on 2008-05-15 13:53:39 +0300

I doubt this patches will do anything to this version. In your case the only reasonable suggestion i can give you is either to use VMware Player or Server.

For server checkout for example this page: http://jon.limedaley.com/plog/archives/2008/04/18/vmware-1.0.5-patch-for-2.6.25-kernel

Comment by vnk on 2008-05-15 14:08:21 +0300

Just installed server again, thanks for that link.

Comment by vnk on 2008-05-16 02:34:38 +0300

Hey, just wanted to let you know – I actually had bad workstation tarball. Re-synced it from backup, reinstalled, patched 116 with 117 and in the end all worked fine – 5.5 builds on Fedora’s 2.6.25 kernel. Checked the server 1.0.5, no problems either.

Thanks for help, anyway

Comment by zufi on 2008-05-20 00:14:25 +0300

Hi,
I am using VMWare Workstation 6.0.3_80004 x64.Tried patching the modules with the following output:

./vmware-2.6.25.sh
patching file include/vcpuset.h
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 25.
1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
patching file bridge.c
patching file filter.c
patching file vmnetInt.h
patching file linux/dentry.c
patching file linux/filesystem.c
patching file linux/super.c

After that I ran vmware-config.pl which built the modules but while installing them, I got the following error:

Building modules, stage 2.
MODPOST 1 modules
CC /tmp/vmware-config6/vmblock-only/vmblock.mod.o
LD [M] /tmp/vmware-config6/vmblock-only/vmblock.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.25.3-18.fc9.x86_64′
cp -f vmblock.ko ./../vmblock.o
make: Leaving directory `/tmp/vmware-config6/vmblock-only’
sh: line 1: 6632 Killed ‘insmod’ -p ‘/tmp/vmware-config6/vmblock.o’ > /dev/null 2>&1

Message from syslogd@localhost at May 19 15:09:58 …
kernel: Oops: 0002 [1] SMP
Unable to make a vmblock module that can be loaded in the running kernel:

Message from syslogd@localhost at May 19 15:09:58 …
kernel: Code: f3 a4 48 89 42 10 41 ff c0 48 8b 95 18 ff ff ff 0f b7 42 3c 41 39 c0 72 a3 48 8b 8d 30 ff ff ff 4c 8b 69 10 49 8d 85 00 22 00 00 89 85 00 22 00 00 49 89 85 08 22 00 00 31 c0 49 c7 84 05 00

Message from syslogd@localhost at May 19 15:09:58 …
kernel: CR2: ffffffff88576680

What went wrong there please?
Z.

Comment by Peter on 2008-05-20 10:59:19 +0300

Sorry I have not tested with x64.

Can you post some more information (kernerl version, arch, etc) ?

If i find some 64bit AMD i will try it out.

Comment by swest on 2008-05-20 14:02:41 +0300

It works!
Great work! Thanks.

Comment by Peter on 2008-05-20 14:33:54 +0300

@swest

Happy to help. Can you please post your distribution, kernel version and VMware product?

Thanks

Comment by Philip on 2008-05-22 14:34:01 +0300

Thank you for providing these patches. Thanks to you I’ve been able to get Workstation6.0.2 installed and running on Fedora9 (2.6.25.3-18 i686).

Comment by massimo marchi on 2008-05-22 18:03:22 +0300

Thansk, it seems work on

Linux glider 2.6.25.3-18.fc9.i686 #1 SMP Tue May 13 05:38:53 EDT 2008 i686 i686 i386 GNU/Linux
gcc-4.3.0-8.i386
gcc-c++-4.3.0-8.i386
VMware-player-2.0.3-80004.i386.tar.gz

but i have these warning, may be you are interested.

on appling pathc ALPHA i have these message:

patching file include/vcpuset.h
Hunk #1 succeeded at 70 with fuzz 2.
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
patching file bridge.c
Hunk #2 FAILED at 853.
1 out of 2 hunks FAILED — saving rejects to file bridge.c.rej
patching file filter.c
patching file vmnetInt.h
patching file linux/dentry.c
Hunk #1 succeeded at 112 (offset 14 lines).
patching file linux/filesystem.c
Hunk #1 succeeded at 273 (offset 14 lines).
patching file linux/super.c
Hunk #1 succeeded at 37 (offset 14 lines).
Hunk #3 succeeded at 142 (offset 14 lines).

in config.pl I have these warning:
….
CC [M] /tmp/vmware-config3/vmmon-only/common/task.o
cc1plus: warning: command line option “-Werror-implicit-function-declaration” is valid for C/ObjC but not for C++
cc1plus: warning: command line option “-Wdeclaration-after-statement” is valid for C/ObjC but not for C++
cc1plus: warning: command line option “-Wno-pointer-sign” is valid for C/ObjC but not for C++
cc1plus: warning: command line option “-Wstrict-prototypes” is valid for Ada/C/ObjC but not for C++
In file included from /tmp/vmware-config3/vmmon-only/common/task.c:1194:
/tmp/vmware-config3/vmmon-only/common/task_compat.h:9: warning: ‘typedef’ was ignored in this declaration
/tmp/vmware-config3/vmmon-only/common/task_compat.h: In function ‘void Task_Switch_V45(VMDriver*, Vcpuid)’:
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::validEIP’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::cs’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::rsp’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2666: warning: ‘sysenterState.SysenterStateV45::rip’ may be used uninitialized in this function
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciContext.o
….
CC [M] /tmp/vmware-config3/vmmon-only/vmcore/moduleloop.o
LD [M] /tmp/vmware-config3/vmmon-only/vmmon.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: modpost: module vmmon.ko uses symbol ‘init_mm’ marked UNUSED
CC /tmp/vmware-config3/vmmon-only/vmmon.mod.o

Comment by Danishka on 2008-05-23 17:03:37 +0300

Hi Peter,

I got following issue… pls help me (I gt the promt to enter serial too)

Stopping xinetd: [ OK ]
Starting xinetd: [ OK ]
Configuring the VMware VmPerl Scripting API.
Can’t locate ExtUtils/Embed.pm in @INC (@INC contains: /usr/lib64/perl5/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/5.10.0 /usr/local/lib64/perl5/site_perl/5.10.0/x86_64-linux-thread-multi /usr/local/lib/perl5/site_perl/5.10.0 /usr/lib64/perl5/vendor_perl/5.10.0/x86_64-linux-thread-multi /usr/lib/perl5/vendor_perl/5.10.0 /usr/lib/perl5/vendor_perl .).
BEGIN failed–compilation aborted.
Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6775.
Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6776.
Use of uninitialized value $inc in substitution (s///) at /usr/bin/vmware-config.pl line 6776.
Could not find necessary components to build the VMware VmPerl Scripting API.
Look in your Linux distribution to see if there is a perl-devel package.
Install that package if it exists and then re-run this installation program.

********
The VMware VmPerl Scripting API was not installed. Errors encountered during
compilation and installation of the module can be found here:
/tmp/vmware-config14

You will not be able to use the “vmware-cmd” program.

Errors can be found in the log file:
‘/tmp/vmware-config14/control-only/make.log’
********

Hit enter to continue.

Comment by Danishka on 2008-05-23 17:07:36 +0300

You will not be able to use the “vmware-cmd” program.

Errors can be found in the log file:
‘/tmp/vmware-config15/control-only/make.log’
********

Hit enter to continue.

Generating SSL Server Certificate

In which directory do you want to keep your virtual machine files?
[/data/vmware/VirtualMachines] /data/vmware/VirtualMachines

Do you want to enter a serial number now? (yes/no/help) [no] yes

Please enter your 20-character serial number.

Type XXXXX-XXXXX-XXXXX-XXXXX or ‘Enter’ to cancel: XXXXX-XXXXX-XXXXX-XXXXX
see the last message….
but VMware is not working…
This is VMware server VMware Server 1.0.5 on Fedora 9 X86_64

Starting VMware services:
Virtual machine monitor [ OK ]
Virtual ethernet [ OK ]
Bridged networking on /dev/vmnet0 [ OK ]
Host-only networking on /dev/vmnet1 (background) [ OK ]
Host-only networking on /dev/vmnet8 (background) [ OK ]
NAT service on /dev/vmnet8 [ OK ]

The configuration of VMware Server 1.0.5 build-80187 for Linux for this running
kernel completed successfully.

Comment by Peter on 2008-05-23 17:32:46 +0300

@Danishka

On you first comment seems you lack some perl module. Second seems ok.

Have you resolved your issue?

Comment by John on 2008-05-24 15:29:50 +0300

These instructions worked for me – using Workstation 6.0 on debian 2.6.25.2. However when I open any image I get this error. Any ideas?
thanks
Version mismatch with vmmon module: expecting 161.0, got 167.0.
You have an incorrect version of the `vmmon’ kernel module.
Try reinstalling VMware Workstation.

Comment by Peter on 2008-05-24 16:59:04 +0300

@John
There are couple of suggestions that seem to work on my previous post

http://blog.creonfx.com/linux/how-to-install-vmware-player-workstation-on-2624-kernel

Comment by Walt on 2008-05-28 02:13:26 +0300

Yesterday (5/26) I installed the anyany117 patch and ran the runme.pl which got me a clean compile of workstation 6.03 under Fedora 9 (64). However, when I start a vm I get a cryptic message “Unable to change virtual machine power state: Failed to connect to peer process.” These have an April 22nd date for vmmon and vmnet. However, as mentioned, everything compiles fine. That cryptic message has no log entry or other breadcrumb to suggest what it means. I didn’t think spending $189 would entitle me to this much heartburn. Any suggestions here?

Comment by Romain on 2008-05-30 20:09:23 +0300

Works great on debian sid + vmware workstation
I just had to manually adapt the patch to bridge.c.

Thank you!

Comment by John on 2008-05-31 01:28:12 +0300

took me a while but I finally got it working. Had to go back and run vmware-any-any-update115 first followed by the patches above. I had found an -update116 that other people used but that apparently was not “official” and caused the version mismatch problems.
Thanks; I am now up and running with kernel 2.6.25

———————-
# John Says:
May 24th, 2008 at 3:29 pm

These instructions worked for me – using Workstation 6.0 on debian 2.6.25.2. However when I open any image I get this error. Any ideas?
thanks
Version mismatch with vmmon module: expecting 161.0, got 167.0.
You have an incorrect version of the `vmmon’ kernel module.
Try reinstalling VMware Workstation.

Comment by Peter on 2008-05-31 14:05:41 +0300

@Romain

Can you send the bridge.c patch?

Comment by Peter on 2008-05-31 14:06:49 +0300

For all “Version mismatch with vmmon module” check the 2.6.24 post. There are couple of suggestions that are reported as working

Comment by Breathe on 2008-06-03 16:02:41 +0300

If you compile, like me, vanilla Kernel (I have tested with 2.6.25.4) you must select as built-in the config option

Kernel Hacking –> Enable unused/obsolete exported symbols

in order to make Vmware module compile.

I have tested the procedure with:

Kernel Version: vanilla 2.6.25.4
Vmware Version: 6.0.2-59824

Thank you Peter.
Breathe

Comment by Julio on 2008-06-03 19:17:43 +0300

Thank you very much! What you have done is a very useful thing for a lot of people like me. Thank you for helping strangers like me.

Comment by Peter on 2008-06-03 23:36:01 +0300

@Julio you are welcome.
Currently I’m trying to save some cash for domain and hosting, after that I will try building a real community around linux virtualization

Comment by None on 2008-06-04 12:46:24 +0300

Cheers pal works great with openSUSE 11!

Comment by James on 2008-06-06 16:31:55 +0300

Thanks so much for this. Worked great with Fedora8.

Comment by Sebastian on 2008-06-07 09:30:14 +0300

worked perfectly in my fedora 8 box!

Comment by Enrico on 2008-06-07 22:55:39 +0300

truly thank you! (Ubuntu 8.04 & switch from vmware server 1.5 to vmware player 2.04)

Comment by mnott on 2008-06-09 09:49:13 +0300

Thanks for the excellent work. I got an error with one hunk, but still, VMWare works fine.

[200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ l
insgesamt 1936
drwxr-xr-x 3 root root 4096 2008-06-09 08:46 ./
drwxr-xr-x 4 root root 4096 2008-06-05 08:24 ../
drwxr-xr-x 2 root root 4096 2008-05-07 21:01 patches/
-r–r–r– 1 root root 235520 2008-06-05 08:24 vmblock.tar
-r–r–r– 1 root root 1126400 2008-06-05 08:24 vmmon.tar
-r–r–r– 1 root root 532480 2008-06-05 08:24 vmnet.tar
-r–r–r– 1 root root 51200 2008-06-05 08:24 vmppuser.tar
-rwxr-xr-x 1 root root 461 2008-05-07 21:04 vmware-2.6.25.sh*
[200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ sudo sh vmware-2.6.25.sh
patching file include/vcpuset.h
Hunk #1 succeeded at 70 with fuzz 2.
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 25.
1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
patching file bridge.c
patching file filter.c
patching file vmnetInt.h
Hunk #1 FAILED at 78.
1 out of 1 hunk FAILED — saving rejects to file vmnetInt.h.rej
patching file linux/dentry.c
patching file linux/filesystem.c
patching file linux/super.c
[200806090846Mo][mnott@linux:/usr/lib/vmware/modules/source]$ sudo vmware-config.pl
Making sure services for VMware Workstation are stopped.

Stopping VMware services:
Virtual machine monitor done
Blocking file system: done
Bridged networking on /dev/vmnet0 done
Host network detection done
DHCP server on /dev/vmnet1 done
Host-only networking on /dev/vmnet1 done
DHCP server on /dev/vmnet8 done
NAT service on /dev/vmnet8 done
Host-only networking on /dev/vmnet8 done
Virtual ethernet done

Configuring fallback GTK+ 2.4 libraries.

In which directory do you want to install the theme icons?
[/usr/share/icons]

What directory contains your desktop menu entry files? These files have a
.desktop file extension. [/usr/share/applications]

In which directory do you want to install the application’s icon?
[/usr/share/pixmaps]

Trying to find a suitable vmmon module for your running kernel.

None of the pre-built vmmon modules for VMware Workstation is suitable for your
running kernel. Do you want this program to try to build the vmmon module for
your system (you need to have a C compiler installed on your system)? [yes]

Using compiler “/usr/bin/gcc”. Use environment variable CC to override.

What is the location of the directory of C header files that match your running
kernel? [/lib/modules/2.6.25/build/include]

Extracting the sources of the vmmon module.

Building the vmmon module.

Using 2.6.x kernel build system.
make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmmon-only’
make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
CC [M] /tmp/vmware-config1/vmmon-only/linux/driver.o
CC [M] /tmp/vmware-config1/vmmon-only/linux/hostif.o
CC [M] /tmp/vmware-config1/vmmon-only/common/comport.o
CC [M] /tmp/vmware-config1/vmmon-only/common/cpuid.o
CC [M] /tmp/vmware-config1/vmmon-only/common/hash.o
CC [M] /tmp/vmware-config1/vmmon-only/common/memtrack.o
CC [M] /tmp/vmware-config1/vmmon-only/common/phystrack.o
CC [M] /tmp/vmware-config1/vmmon-only/common/task.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciContext.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDatagram.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDriver.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciDs.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciGroup.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciHashtable.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciProcess.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciResource.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmciSharedMem.o
CC [M] /tmp/vmware-config1/vmmon-only/common/vmx86.o
CC [M] /tmp/vmware-config1/vmmon-only/vmcore/moduleloop.o
LD [M] /tmp/vmware-config1/vmmon-only/vmmon.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: modpost: module vmmon.ko uses symbol ‘init_mm’ marked UNUSED
CC /tmp/vmware-config1/vmmon-only/vmmon.mod.o
LD [M] /tmp/vmware-config1/vmmon-only/vmmon.ko
make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
cp -f vmmon.ko ./../vmmon.o
make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmmon-only’
The module loads perfectly in the running kernel.

/dev is dynamic:
Trying to find a suitable vmblock module for your running kernel.

None of the pre-built vmblock modules for VMware Workstation is suitable for
your running kernel. Do you want this program to try to build the vmblock
module for your system (you need to have a C compiler installed on your
system)? [yes]

Extracting the sources of the vmblock module.

Building the vmblock module.

Using 2.6.x kernel build system.
make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmblock-only’
make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
CC [M] /tmp/vmware-config1/vmblock-only/linux/block.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/control.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/dbllnklst.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/dentry.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/file.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/filesystem.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/inode.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/module.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/stubs.o
CC [M] /tmp/vmware-config1/vmblock-only/linux/super.o
LD [M] /tmp/vmware-config1/vmblock-only/vmblock.o
Building modules, stage 2.
MODPOST 1 modules
CC /tmp/vmware-config1/vmblock-only/vmblock.mod.o
LD [M] /tmp/vmware-config1/vmblock-only/vmblock.ko
make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
cp -f vmblock.ko ./../vmblock.o
make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmblock-only’
The module loads perfectly in the running kernel.

/dev is dynamic:
This program previously created the file /dev/vmnet0, and was about to remove
it. Somebody else apparently did it already.

This program previously created the file /dev/vmnet1, and was about to remove
it. Somebody else apparently did it already.

This program previously created the file /dev/vmnet8, and was about to remove
it. Somebody else apparently did it already.

You have already setup networking.

Would you like to skip networking setup and keep your old settings as they are?
(yes/no) [yes]

Trying to find a suitable vmnet module for your running kernel.

None of the pre-built vmnet modules for VMware Workstation is suitable for your
running kernel. Do you want this program to try to build the vmnet module for
your system (you need to have a C compiler installed on your system)? [yes]

Extracting the sources of the vmnet module.

Building the vmnet module.

Using 2.6.x kernel build system.
make: Gehe in Verzeichnis ‘/tmp/vmware-config1/vmnet-only’
make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Betrete Verzeichnis ‘/usr/src/linux-2.6.25’
CC [M] /tmp/vmware-config1/vmnet-only/driver.o
CC [M] /tmp/vmware-config1/vmnet-only/hub.o
CC [M] /tmp/vmware-config1/vmnet-only/userif.o
CC [M] /tmp/vmware-config1/vmnet-only/netif.o
CC [M] /tmp/vmware-config1/vmnet-only/bridge.o
CC [M] /tmp/vmware-config1/vmnet-only/filter.o
CC [M] /tmp/vmware-config1/vmnet-only/procfs.o
CC [M] /tmp/vmware-config1/vmnet-only/smac_compat.o
SHIPPED /tmp/vmware-config1/vmnet-only/smac_linux.x386.o
LD [M] /tmp/vmware-config1/vmnet-only/vmnet.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: could not find /tmp/vmware-config1/vmnet-only/.smac_linux.x386.o.cmd for /tmp/vmware-config1/vmnet-only/smac_linux.x386.o
CC /tmp/vmware-config1/vmnet-only/vmnet.mod.o
LD [M] /tmp/vmware-config1/vmnet-only/vmnet.ko
make[1]: Verlasse Verzeichnis ‘/usr/src/linux-2.6.25’
cp -f vmnet.ko ./../vmnet.o
make: Verlasse Verzeichnis ‘/tmp/vmware-config1/vmnet-only’
The module loads perfectly in the running kernel.

Do you want to install the Eclipse Integrated Virtual Debugger? You must have
the Eclipse IDE installed. [no]

Starting VMware services:
Virtual machine monitor done
Blocking file system: done
Virtual ethernet done
Bridged networking on /dev/vmnet0 done
Host network detection done
Host-only networking on /dev/vmnet1 (background) done
DHCP server on /dev/vmnet1 done
Host-only networking on /dev/vmnet8 (background) done
DHCP server on /dev/vmnet8 done
NAT service on /dev/vmnet8 done

The configuration of VMware Workstation 6.0.4 build-93057 for Linux for this
running kernel completed successfully.

You can now run VMware Workstation by invoking the following command:
“/usr/bin/vmware”.

Enjoy,

–the VMware team

Comment by Some Tech Weenie on 2008-06-09 21:26:16 +0300

The “very-alpha” patch worked a treat for my VMWare Player 2.0.2 build-59824 install on Fedora Core 8, with all other VMWare-Any patches installed. It also came up first on Google when I pasted in part of the error message.

Thanks!

Comment by Ueli on 2008-06-09 23:42:19 +0300

many thanks,

great work

Comment by John Pearcey on 2008-06-11 13:42:21 +0300

I stupidly updated my kernel whilst in the middle of some important work and spent the last 4 hours trying to fix broken video and vmware. This patch work a treat and saved my day – thanks.

Comment by Drag0nmaster on 2008-06-12 22:49:46 +0300

Many thanks, it works great

Comment by Joe McMalon on 2008-06-13 04:39:59 +0300

There is a Workstation Beta @ http://communities.vmware.com/community/beta/workstation6.5 which some of the downloadable appliances claim to offer Unbunto with a 2.6.25 kernel using the new Beta. I’m getting the Linux .tar and will try and see what the “official” patches are.

Thanks for your patches – Your a hero bud.

Comment by Joe McMalon on 2008-06-13 06:36:40 +0300

1.): Join the Beta program and download VMware-workstation-e.x.p-91182.i386.tar.gz using WinXP (to save VM HD space).

2.): Use 7-Zip (or whatever) to open directory VMware-workstation-e.x.p-91182.i386.tar.gz\VMware-workstation-e.x.p-91182.i386.tar\vmware-distrib\lib\isoimages\ and extract linux.iso .

3.): Use MagicISO (or whatever) to open linux.iso .

4.): The linux.iso contains this:

dir “C:\Downloads\linux”

05/06/2008 03:51 AM 385 manifest.txt
05/06/2008 03:51 AM 89,979,774 VMwareTools-e.x.p-91182.i386.rpm
05/06/2008 03:46 AM 89,474,090 VMwareTools-e.x.p-91182.tar.gz
3 File(s) 179,454,249 bytes

5.): With the old “broken” tools still installed on kernel 2.6.25 you can (under Debian Lenny) open the “download” (or some other directory) in the Gnome (2.22.2) desktop.

6.): Select the VMwareTools-e.x.p-91182.* and right-click copy them.

7.): ALT-TAB and left-click your Gnome desktop and in your “download” (or other tmp directory) click [Edit][Paste] and (eventually) the two files will copy from WinXP to Debian 4.2.4-1 (Lenny) (Linux version 2.6.25).

8.) To install from the RPM with Debian you can simply type:
rpm -Uhv /downloads/VMware-workstation-e.x.p-91182.i386.rpm –nodeps

9.) You could un-tar-gz and run the perl script but I find the RPM easier.

10.) Don’t know _myself_ if this works but others claim it does — just giving the early info.

Comment by Joe McMalon on 2008-06-13 07:15:45 +0300

The rpm installed OK. There are new programs too. (partial notes below “…” means some lines deleted).

# vmware-config-tools.pl

The vmmemctl module loads perfectly into the running kernel.

The vmhgfs module loads perfectly into the running kernel.

The vmxnet module loads perfectly into the running kernel.
update-initramfs: Generating /boot/initrd.img-2.6.21-2-686
update-initramfs: Generating /boot/initrd.img-2.6.18-4-686

The vmblock module loads perfectly into the running kernel.

(and now for an error)

Building the vmsync module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config9/vmsync-only’
make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/home/root/linux-2.6.25′
CC [M] /tmp/vmware-config9/vmsync-only/sync.o
/tmp/vmware-config9/vmsync-only/sync.c: In function ‘VmSyncAddPath’:
/tmp/vmware-config9/vmsync-only/sync.c:226: error: ‘struct nameidata’ has no member named ‘dentry’
/tmp/vmware-config9/vmsync-only/sync.c:235: error: implicit declaration of function ‘path_release’
make[2]: *** [/tmp/vmware-config9/vmsync-only/sync.o] Error 1
make[1]: *** [_module_/tmp/vmware-config9/vmsync-only] Error 2
make[1]: Leaving directory `/home/root/linux-2.6.25′
make: *** [vmsync.ko] Error 2
make: Leaving directory `/tmp/vmware-config9/vmsync-only’
Unable to build the vmsync module.

The file system sync driver (vmsync) is only used to create safe backups of the
virtual machine. The rest of the software provided by VMware Tools is designed
to work independently of this feature.


WARNING: modpost: module vmci.ko uses symbol ‘init_mm’ marked UNUSED
CC /tmp/vmware-config10/vmci-only/vmci.mod.o
LD [M] /tmp/vmware-config10/vmci-only/vmci.ko
make[1]: Leaving directory `/home/root/linux-2.6.25′
cp -f vmci.ko ./../vmci.o
make: Leaving directory `/tmp/vmware-config10/vmci-only’
The vmci module loads perfectly into the running kernel.

WARNING: “VMCIDatagram_CreateHnd” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIDatagram_DestroyHnd” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIEvent_Subscribe” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCI_DeviceGet” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIMemcpyFromQueueV” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIQueuePair_Detach” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCI_GetContextID” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIDatagram_Send” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIQueuePair_Alloc” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIEvent_Unsubscribe” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
WARNING: “VMCIMemcpyToQueueV” [/tmp/vmware-config10/vsock-only/vsock.ko] undefined!
CC /tmp/vmware-config10/vsock-only/vsock.mod.o
LD [M] /tmp/vmware-config10/vsock-only/vsock.ko
make[1]: Leaving directory `/home/root/linux-2.6.25′
cp -f vsock.ko ./../vsock.o
make: Leaving directory `/tmp/vmware-config10/vsock-only’
The vsock module loads perfectly into the running kernel.

(another error)

Building the vmxnet3 module.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config10/vmxnet3-only’
make -C /lib/modules/2.6.25/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/home/root/linux-2.6.25′
CC [M] /tmp/vmware-config10/vmxnet3-only/vmxnet3.o
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_poll’:
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: error: ‘struct net_device’ has no member named ‘quota’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: warning: type defaults to ‘int’ in declaration of ‘_y’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:230: error: ‘struct net_device’ has no member named ‘quota’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:233: error: ‘struct net_device’ has no member named ‘quota’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:236: error: too few arguments to function ‘netif_rx_complete’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_intr’:
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:280: error: too few arguments to function ‘netif_rx_schedule’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_activate_dev’:
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:1944: error: implicit declaration of function ‘netif_poll_enable’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_quiesce_dev’:
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:1995: error: implicit declaration of function ‘netif_poll_disable’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c: In function ‘vmxnet3_probe_device’:
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:2969: error: ‘struct net_device’ has no member named ‘poll’
/tmp/vmware-config10/vmxnet3-only/vmxnet3.c:2970: error: ‘struct net_device’ has no member named ‘weight’
make[2]: *** [/tmp/vmware-config10/vmxnet3-only/vmxnet3.o] Error 1
make[1]: *** [_module_/tmp/vmware-config10/vmxnet3-only] Error 2
make[1]: Leaving directory `/home/root/linux-2.6.25′
make: *** [vmxnet3.ko] Error 2
make: Leaving directory `/tmp/vmware-config10/vmxnet3-only’
Unable to build the vmxnet3 module.

The advanced network device driver (vmxnet3 module) is used only for our
advanced networking interface. The rest of the software provided by VMware
Tools is designed to work independently of this feature.

(wow – this was broken)
Detected X.org version 7.3.0.
Please choose one of the following display sizes that X will start with (1 – 29): (many MORE choices!)

X.Org X Server 1.4.0.90
Release Date: 5 September 2007
X Protocol Version 11, Revision 0
Build Operating System: Linux Debian (xorg-server 2:1.4.1~git20080517-1)
Current Operating System: Linux bagvapp 2.6.25 #2 SMP PREEMPT Thu Jun 12 09:10:20 PDT 2008 i686
Build Date: 18 May 2008 01:38:06PM

Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Module Loader present
Markers: (–) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(++) Log file: “/tmp/vmware-config11/XF86ConfigLog.18941”, Time: Thu Jun 12 20:55:35 2008
(++) Using config file: “/tmp/vmware-config11/XF86Config.18941”
(II) Module “ramdac” already built-in
expected keysym, got XF86KbdLightOnOff: line 70 of pc
expected keysym, got XF86KbdBrightnessDown: line 71 of pc
expected keysym, got XF86KbdBrightnessUp: line 72 of pc
expected keysym, got XF86KbdLightOnOff: line 70 of pc
expected keysym, got XF86KbdBrightnessDown: line 71 of pc
expected keysym, got XF86KbdBrightnessUp: line 72 of pc

X is running fine with the new config file.

FreeFontPath: FPE “/usr/share/fonts/X11/misc” refcount is 2, should be 1; fixing.
Starting VMware Tools services in the virtual machine:
Switching to guest configuration: done
Guest filesystem driver: done
Mounting HGFS shares: done
Guest memory manager: done
VM communication interface: done
VM communication interface socket family: done
Blocking file system: done
DMA setup: done
Guest operating system daemon: done

The configuration of VMware Tools e.x.p build-91182 for Linux for this running
kernel completed successfully.

You must restart your X session before any mouse or graphics changes take
effect.

You can now run VMware Tools by invoking the following command:
“/usr/bin/vmware-toolbox” during an X server session.

To use the vmxnet driver, restart networking using the following commands:
/etc/init.d/networking stop
rmmod pcnet32
rmmod vmxnet
modprobe vmxnet
/etc/init.d/networking start

Enjoy,

–the VMware team

———-

So it (for the most part) works great – just a bit of fixing.

Does someone want to try that and post a new patch ?

Joe

Comment by Joe McMalon on 2008-06-13 18:32:34 +0300

The instructions in my last comment work fine. The two modules that don’t compile are not used in WS 6.0 (but will be coming in 6.5). For other VMware tools or Linux versions this may also help:

For ‘Lenny’:
http://packages.debian.org/lenny/i386/open-vm-tools/download

For other Debian version:
http://packages.debian.org/search?keywords=open-vm-tools

There is also:
http://open-vm-tools.sourceforge.net/

Comment by samb on 2008-06-15 22:12:02 +0300

Thanks a bunch. Worked great with Workstation build 6.0.2-59824 and kernel 2.6.25.6.

Comment by motoprogger on 2008-06-18 16:32:30 +0300

I tried this patch but could not compile vmmon module.
vmmon: unknown symbol init_mm
And further model postprocessing also fails.
Using Debian Etch and 2.6.25.7 vanilla kernel, VMWare Workstation 6.0.2 build-59824

Comment by Peter on 2008-06-19 10:09:33 +0300

@motoprogger

Try latest Vmware Workstation (6.0.4 I think) Also try first with out the patch and than patch it

Cheers

Comment by mohsen on 2008-06-19 16:04:04 +0300

in fedora 8 with kernel 2.6.25.4-10 it work very good.

Comment by john on 2008-06-19 19:18:06 +0300

Thanks Peter,

Installed VMware-player-2.0.4-93057.x86_64 on FC9 x86_64, kernel 2.6.25.6-55.fc9.x86_64 following these instructions. Everything worked perfectly once I installed libXtst.i386

Comment by john on 2008-06-19 21:53:31 +0300

I spoke too soon. Had the same “Version mismatch with vmmon module” problem. Solution that worked for me:

  1. vmware-uninstall.pl
  2. cd vmware-player-distrib
    3 ./vmware-install.pl — choose no in response to question about invoking “/usr/bin/vmware-config.pl”
  3. cd /usr/lib/vmware/modules/source your version of vmware-2.6.25.sh should still be there
  4. ./vmware-2.6.25.sh
  5. vmware-config.pl
  6. vmware-config.pl run a second time to get the correct version in

after that virtual machine opens as expected.

Peter this page is a great resource

Comment by Davy on 2008-06-21 18:08:02 +0300

VMPlayer 2.0.4 on Opensuse 11:

I only had to use the 117 patch. I got some errors during the patching process but vmware-config did not throw exceptions and I was able to open my vmware image.
I think the 116 patch is only required for VMPlayer 2.0.3 and older.

Comment by Paul on 2008-06-23 17:22:21 +0300

VMware Workstation 5.5.5 build-56455
FC8 x86_64

Works great after a minor modification to your vmware-2.6.25.sh script. I had to comment out all the vmblock references, then away she went! Created the new modules with no errors and works perfectly.

Thank you!

Comment by Colin on 2008-06-27 21:04:49 +0300

Fedora 8 x86_64
2.6.25.6-27.fc8
VMWare Server 1.0.6 build-91891

Works like a charm! Thank you so much for putting this up Peter.

Comment by Jim Snyder on 2008-06-29 00:22:23 +0300

Minor problems with FC8 x86_64 and 2.6.25-6.27.fc8 on vmware workstation 6.0.4.

The common/task.c patch for vmmon is unnecessary, AFAICT.

The vmblock patch works.

The patch to vmnetInet.h seems to be totally whacked for workstation 6.0.4, I wound up using:

#define SET_SK_DEAD(_sk) sock_set_flag(_sk, SOCK_DEAD)

which seemed very odd, but when I grep in the vmnet-only directory, the macro SET_SK_DEAD() doesn’t seem to be used, so I’ll bet that you could simply delete the macro and everything would be Just Peachy(tm).

Comment by Jim Snyder on 2008-06-29 00:23:50 +0300

uh, one (ahem) minor problem mentioned elsewhere, the guest clock is running about 4x real-time.

Makes XP somewhat more responsive, but double-clicking doesn’t work particularly well. :-)

Comment by Jim Snyder on 2008-07-01 16:47:56 +0300

Either I was mistaken about the clock, or else re-installing VMware tools has fixed the clock problem.

I was relying on the clock in the date/time control panel, but now that I look at it more carefully, the second hand sweeps at a rate that depends on the system load. Post-VMware tool re-install, the host and guest clocks continue to track after an hour or so; instantanteously the guest clock will race ahead on occasion or fall behind.

Comment by Nati CT on 2008-07-04 12:00:41 +0300

Works Great!

I had some strange errors while running ./vmware-2.6.25.sh:

patching file include/vcpuset.h
Hunk #1 succeeded at 70 with fuzz 2.
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 25.
1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
patching file bridge.c
patching file filter.c
patching file vmnetInt.h
Hunk #1 FAILED at 78.
1 out of 1 hunk FAILED — saving rejects to file vmnetInt.h.rej
patching file linux/dentry.c
patching file linux/filesystem.c
patching file linux/super.c

But still, vmware-config.pl is completing successfully now :)

Thanks!

Comment by Clive Long on 2008-07-05 10:31:40 +0300

Hi,

I upgraded from Fedora 7 to Fedora 9, kernel 2.6.23 to 2.6.25. Running VMWare workstation 6.0.4 build-93057

vmware-config.pl failed on FC9 so I followed your instructions above. I still cannot run vmware-config.pl successfully under the 2.6.25. Thankfully the config routine still works under 2.6.23 – so I can still run vmware WS

Why is vmware workstation so difficult to run on upgraded Fedora? Always fiddling required – such a cumbersome method to get working on Linux.

Any suggestion on how to get VM WS working on 2.6.25 ?

Messages below

Thanks

Clive

******
….

[root@Linux26G source]# ./vmware-2.6.25.sh
patching file include/vcpuset.h
Hunk #1 succeeded at 70 with fuzz 2.
patch unexpectedly ends in middle of line
patching file common/task.c
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 25.
1 out of 1 hunk FAILED — saving rejects to file common/task.c.rej
patching file bridge.c
Hunk #1 FAILED at 32.
Hunk #2 FAILED at 853.
2 out of 2 hunks FAILED — saving rejects to file bridge.c.rej
patching file filter.c
patching file vmnetInt.h
Hunk #1 FAILED at 78.
1 out of 1 hunk FAILED — saving rejects to file vmnetInt.h.rej
patching file linux/dentry.c
patching file linux/filesystem.c
patching file linux/super.c
[root@Linux26G source]#

[root@Linux26G bin]# ./vmware-config.pl
Making sure services for VMware Workstation are stopped.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config12/vmnet-only’
make -C /lib/modules/2.6.25-14.fc9.i686/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/kernels/2.6.25-14.fc9.i686′
CC [M] /tmp/vmware-config12/vmnet-only/driver.o
In file included from /tmp/vmware-config12/vmnet-only/vnet.h:13,
from /tmp/vmware-config12/vmnet-only/vnetInt.h:10,
from /tmp/vmware-config12/vmnet-only/driver.c:40:
/tmp/vmware-config12/vmnet-only/vm_basic_types.h:170: error: conflicting types for ‘uintptr_t’
include/linux/types.h:40: error: previous declaration of ‘uintptr_t’ was here
In file included from /tmp/vmware-config12/vmnet-only/vm_basic_asm.h:28,
from /tmp/vmware-config12/vmnet-only/vm_oui.h:14,
from /tmp/vmware-config12/vmnet-only/vnetInt.h:11,
from /tmp/vmware-config12/vmnet-only/driver.c:40:
/tmp/vmware-config12/vmnet-only/x86cpuid.h:383:1: warning: “BIT_MASK” redefined
In file included from include/linux/kernel.h:15,
from /tmp/vmware-config12/vmnet-only/driver.c:9:
include/linux/bitops.h:7:1: warning: this is the location of the previous definition
make[2]: *** [/tmp/vmware-config12/vmnet-only/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config12/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.25-14.fc9.i686′
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-config12/vmnet-only’
Unable to build the vmnet module.

For more information on how to troubleshoot module-related problems, please
visit our Web site at “http://www.vmware.com/download/modules/modules.html” and
“http://www.vmware.com/support/reference/linux/prebuilt_modules_linux.html”.

Execution aborted.

[root@Linux26G bin]#

Comment by Peter on 2008-07-05 10:58:45 +0300

@Clive Long – the reason is vmnetInt.h was not patched successfully. I will have to check out the reasons

Comment by Bob on 2008-07-10 20:11:43 +0300

Pete,

Works great for me!

Thanks,
Bob

VMware Workstation 6 on Fedora Core 9
————————————————–

Kernel: 2.6.25.9-76.fc9.i686 #1 SMP

Get VMware-workstation-6.0.4-93057.i386.tar.gz
Get vmware-any-any-update-117-very-ALPHA.tgz

Need to get kernel headers to compile vmware:
kernel-devel-2.6.25.9-76.fc9.i686
kernel-headers-2.6.25.9-76.fc9.i386

Need to disable FC9 kvm since it interferes with starting vmware (rename, or uninstall):
/lib/modules/2.6.25.9-76.fc9.i686/kernel/arch/x86/kvm/kvm-amd.ko
/lib/modules/2.6.25.9-76.fc9.i686/kernel/arch/x86/kvm/kvm-intel.ko
/lib/modules/2.6.25.9-76.fc9.i686/kernel/arch/x86/kvm/kvm.ko

Need to reboot after the kvm disable, “modprobe -r kvm” is not enough!

Apply Peter’s 117 patches to vmware, some hunks will fail. This is OK.

run vmware-config.pl. vmware will build cleanly, except for the
“drag & drop” module (which is not needed).

Run vmware!

Comment by Kevin on 2008-07-14 08:08:16 +0300

Pete,

First, thanks for this, it helps greatly (I’m much closer now than I was before to getting this working).

I tried this out on Fedora 9 (x86_64), kernel “2.6.25.9-76.fc9.x86_64 #1 SMP”, with VMWare Workstation 6.0.4 (build 93057, x86_64 version from tarball). It configures and compiles/builds beautifully, but although I can start the VMware application, I am unable to run any of my virtual machines.

Whenever I try to start a VM, I get the error: “Version mismatch with vmmon module: expecting 168.0, got 167.0. You have an incorrect version of the `vmmon’ kernel module. Try reinstalling VMware Workstation.”

I think this is because during vmware-config.pl, I get the following output when it builds the vmmon module: “Unknown VMware Workstation 6.0.4 build 93057 detected. Building for Workstation 6.0.0.”

Do you have any idea how to get it to build for the correct VMWare version? I’m not sure what it’s checking/consulting to find a list of “known” versions.

Thanks!

Comment by Kevin on 2008-07-14 08:43:14 +0300

OK, so after some more googling, I found the answer to the question I just asked…

The “vmmon.tar” file in the any-any 116 patch is out of date for VMWare 6.0.4. If you just replace the “vmmon.tar” in the patch with the original Vmware 6.0.4 file, it works fine. In other words, after you extract the vmware-any-any-update-116.tgz file, but before you run it’s “runme.pl” script, just copy /usr/lib/vmware/modules/source/vmmon.tar to /tmp/vmware-any-any-update116 (assuming you extracted to /tmp) to overwrite the patch’s vmmon.tar file, then run runme.pl, and follow the rest of your instructions above. It detects the VMware version correctly and builds flawlessly.

However, as Bob said, you also need to remove the “kvm” package and reboot. I guess it interferes with VMWare’s use of Intel’s VT technology somehow.

Incidentally, the “vmblock” module built fine for me on Fedora 9.

Thanks for the great how-to!

Comment by ric_k on 2008-07-15 19:24:18 +0300

@motoprogger

the problem with “init_mm” is, that it is not present in those new kernels anymore. in order to compile the vmmon-module successfully you need to activate the option “Enable unused/obsolete exported symbols” in “Kernel Hackings” for your kernel (and recompile it).

Comment by Bob on 2008-07-16 22:38:01 +0300

Kevin,

Did you apply just the any-any-116 patch, or just the any-any-117 patch, or both?

Comment by julz on 2008-07-18 13:32:00 +0300

Hi,

does anyone had installed it correctly with Debian 2.6.25 and wireless bridge? I got it compiled and running correctly expcept the wireless bridge.

My Syslog is showing following error at startup:

Jul 17 13:28:29 zion kernel: [ 5062.126518] bridge-wlan0: enabling the bridge
Jul 17 13:28:29 zion kernel: [ 5062.126523] bridge-wlan0: is a Wireless Adapter
Jul 17 13:28:29 zion kernel: [ 5062.126526] vmnet: You are trying to use wireless bridged networking together with
Jul 17 13:28:29 zion kernel: [ 5062.126527] vmnet: vmware-any-any-update. This is not supported configuration, and
Jul 17 13:28:29 zion kernel: [ 5062.126528] vmnet: your wireless bridge will probably not work.
Jul 17 13:28:29 zion kernel: [ 5062.126531] bridge-wlan0: up
Jul 17 13:28:29 zion kernel: [ 5062.126533] bridge-wlan0: already up
Jul 17 13:28:29 zion kernel: [ 5062.126537] bridge-wlan0: attached

I’am able to ping all my local IP’s but nothing outside my host. What to do?

Cheers
-j

Comment by Jens Kuehnel on 2008-08-06 15:22:38 +0300

Hi,

work great on VMwareWorkstation-6.0.4-93057 and Fedora 8 with kernel 2.6.25.11-60.fc8. But you have to change the VMMON_VERSION from 167 to 168.

other than that I works great. Thanks a lot!

Greeting from Germany
Jens

Comment by Jens Kuehnel on 2008-08-06 15:24:50 +0300

The file is vmmon-only/include/iocontros.h and vmmon-only/include/iocontros_compat.h.

Comment by Martin on 2008-08-28 03:58:25 +0300

Works perfectly on an OpenSuSe 11 (i386), after upgrade from OpenSuSe 10.3. The vmware installation was the original one as on OpenSuSE 10.3, where the appropriate any-any patch was installed earlier. After the upgrade it was only needed to apply the vmware-any-any-update-117-very-ALPHA patch as offered here above.
The vmware-config.pl script complained:

‘Your kernel was built with “gcc” version “4.3.1”, while you are trying to use “/usr/bin/gcc” version “4.3”.’

but that is incorrect, installed is also gcc 2.3.1. Dunno why vmware doesn’t get it. Just ignore the warning and compile anyway.

Comment by Martin on 2008-08-28 06:22:29 +0300

oops, typo, of course the last line of my comment above should be
“but that is incorrect, installed is also gcc 4.3.1.”
(not 2.3.1)

Comment by foxi on 2008-09-01 00:37:40 +0300

quote:
Hey, just wanted to let you know – I actually had bad workstation tarball. Re-synced it from backup, reinstalled, patched 116 with 117 and in the end all worked fine – 5.5 builds on Fedora’s 2.6.25 kernel. Checked the server 1.0.5, no problems either.

That’s what I’m trying to do: Workstation 5.5 on kernel 2.6.25. It doesn’t work.
I cannot apply the patch 117, because there are no patches in the directory.

Comment by Bogô on 2008-09-03 14:58:56 +0300

Hi,

I had the same problem with my vmware, i followed your instructions and didn’t workout for me.
I could install vmware and run it.
The only way to compile in this kernel is using any any 116.
But when i start the vm i got the message “vmware expecting 161.0, got 167.0”.
I’m using Debian Lenny Beta 2 Kernel 2.6.24-1 and vmware 6.0.0 45731.
I extracted vmmon-only.tar from any any 116, and changed this 2 files:
vmmon-only/include/iocontrols_compat.h (Line 18)
vmmon-only/include/iocontrols.h (Line 48)
167 to 161 and it workout.
A re-run vmware-config.pl

[]

Comment by Sal on 2008-09-15 21:48:51 +0300

Thank you soooo much! I’ve been struggling to get this installed for weeks.

Comment by dumb linux user on 2008-09-17 21:38:59 +0300

Hi,

well after using it to patch FC9 2.6.25.14-108.fc9.i686 succesfully I found myself today with a new kernal version 2.6.26.3-29.fc9.i686 in FEDORA 9. I looked if there was a more modern patch available and installed it. The vmware-any-any-update117d.tar.gz but if gave me an error message of

“Version mismatch with vmmon module: expecting 169.0, got 168.0”.

So I went back to this patch vmware-any-any-update-117-very-ALPHA.tgz and followed the instruction on this page and :-))) happy vmware is working again. THANKS!!

Hope this might be helpfull. So this also works for 2.6.26 kernel!!
Take care

Comment by Opensuse on 2012-01-20 15:16:49 +0300

Just to update………….

I successfully installed VMware Player 4.0.1 from bundle without any patch reqirement in Opensuse 11.0 (kernal 2.6.25)……….