« Update on the state of Dutch Tech | Main | Installing Fedora 11 on my Asus EEE 701 4g Surf »
Monday
29Jun2009

VMware Server 2.0.1 on linux 2.6.29

Good morning earthbound darlings! I ran into a problem recently after upgrading my kernel to 2.6.29. I run VMware server so that I can access an ancient Windows XP image that I turn to if ever I need Internet Explorer or some other arcane Windows program that simply will not run under Linux.

After my upgrade to 2.6.29 I found, to my horror, that VMware once again didn't work. I say "once again" because VMware often will not survive an upgrade to a higher kernel version. In the past, I always relied on the so-called "vmware-any-any" patch that a VMware guru would release which would fix the problem 9 times out of ten.

The VMware-any-any patch seems to have splintered a bit since I last used it, and there are different versions of it floating around the net with different names.

I figured I would just wait until VMware released a new version of their (free) server product, as that invariably fixes this type of kernel incompatibility problem as well.

The problem is, it's taking too long. And I needed to use my XP image. So I decided to do some Googling. Wouldn't you know it, there was an answer on the vmware boards that addressed a similar problem for VMware Workstation. I figured there couldn't be *that* much difference between the two products, and it turns out, there isn't. Well, not where fixing this problem is concerned anyway.

So here's the skinny:

If you're running VMware Server 2.0.1 on a 2.6.29 Linux kernel and the /usr/bin/vmware-config.pl command keeps crapping out on you with the following tex among all the other output:

/tmp/vmware-config0/vmmon-only/linux/driver.c:xxxx: error: too many arguments to function ‘smp_call_function’
make[2]: *** [/tmp/vmware-config0/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-config0/vmmon-only] Error 2

Then go to the following url and download the two scripts listed there. One is a patch, the other is a shell script that will automate the patch process.

As you may have noticed, the post is taken from VMware's own community forum, so there should be relatively low risk running them. I've also taken a look at the patch file contained therein, and can find nothing dodgy or creepy about the patch that is being applied to your VMware server modules.

Put both patches in the same directory and run the script by entering

sh sh vmware-6.5.2-modules-2.6.29-fix.sh

If you had Worsktation, things would probably go wonderfully and you would be done. With Server, unfortunately, running the above script throws an error message (don't worry, running the script doesn't change anything until the script knows it won't get any errors). The error message relates to the patch that it tries to apply to the "vmblock-only" code, which is not present in VMware server.

The solution is a no-brainer: Edit the patch file you downloaded, namely "vmware-6.5.2-modules-2.6.29-fix.patch" and remove the first 12 lines, the lines that relate to the vmblock-only code. This means you will be deleting all the lines starting from the line that reads:

diff -urN source-OLD/vmblock-only/Makefile source-NEW/vmblock-only/Makefile

and deleting all the way up to, but NOT INCLUDING, the line that reads:

diff -urN source-OLD/vmci-only/Makefile source-NEW/vmci-only/Makefile

After deleting the lines, save the file, and then re-run the script again. In my case, the patch applied seamlessly and a subsequent run of

/usr/bin/vmware-config.pl

was able to recompile my VMware perfectly for the running kernel. I tested it, and much to my relief, I can now access my Windows XP image again. Just for old time's sake.

Don't forget, when VMware eventually does release a new server version (greater than 2.0.1), chances are it will work without the above hack.

Hope this helps someone else. I carried this out on a Fedora 10 install. Although other distro's should work equally well. The important thing here is the kernel version (2.6.29) and VMware version (2.0.1).

Until next time, earthlings.

Tux lives

 

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments (11)

Great guys, thanks.
It compiled.
But no vmware entry in my menu yet.
Running vmware from the console tries to launch it in my browser, but that did not work out.
It needs a username and pw.
I'll reboot my machine (Fedora 11) and see if that has any effect.

Cheers,
Hanno.

August 4, 2009 | Unregistered CommenterHanno Spreeuw

Hello Hanno!

Congratulations on being the VERY first person to post to the blog with a (sort of) question. Well, I'm interpreting it as such anyway. :-)

If it asks for a username and password then it would seem that you have come a long way: Vmware is probably installed and working. The username and password it asks for is necessary to open the VMware management interface, which is web based.

It probably asked you for a username to use for this upon installing VMware server. If not, then running the command /usr/bin/vmware-config.pl will run the vmware configurator that will in turn ask which username to use to access vmware.

Unless you're supremely paranoid (and some of us are, no shame in that), it's easiest to use the username that you do your day to day work with on the linux system. Your regular user in other words.

Once you've specified that, you can log in to the web interface using your chosen username and the normal password that goes with it.

Bob's your uncle. Bill's your middle name. Some say fanny is a dirty word.

Let me know if that works out for you. One thing's for sure: Your machine seems to have passed the installation phase of VMware.

Tux lives

August 9, 2009 | Unregistered Commentertux

Thanks Dutch Techies!

Oh, and we're not all earthlings, you insensitive clods! ;-)

September 29, 2009 | Unregistered CommenterAaron Sami Abassi

Hi Techies,

this helped me really a lot. I was able to install VMware-server 2.0.1-156745.x86_64 on Sidux, running a 2.6.30-kernel!

Thanks a lot,
Karl

October 4, 2009 | Unregistered CommenterKarl SCHUH

Just posting to confirm that the same procedure works with Fedora 11, VMware-server-2.0.1-156745.i386 and kernel 2.6.30.5-43.fc11.i586

Thanks for the advice.

October 7, 2009 | Unregistered Commenteroli

Thank you for your wonderfully idea. It runs under Mandriva 2009 nearly perfect. But the USB- device dont work (im not sure it's a problem with the Win 7 client or with vmware-server). My entry in /etc/fstab:
usbfs /proc/bus/usb usbfs auto 0 0
does not fix the problem.. I think, i must a little bit search in google ;-)
Greetings from Germany

October 7, 2009 | Unregistered Commenteracculeer

Hi,
The USB - problem is fixed ;-)
I run vmwareserver under an different user .. Then i switched to root and all was ok.

October 7, 2009 | Unregistered Commenteracculeer

http://74.125.153.132/search?q=cache:d3BVjZx7gqoJ:communities.vmware.com/thread/236364%3Bjsessionid%3D7B6726FFA48C92C077DE56D743A4BE22%3Ftstart%3D0+fedora+11+vmware+worstation+2.6.30&cd=1&hl=en&ct=clnk&gl=in&client=firefox-a
http://communities.vmware.com/thread/203231

http://forums.fedoraforum.org/showthread.php?s=4ad53d4ef38eb1db1dade5c2a32a24a1&t=223965

http://communities.vmware.com/thread/221724
patch for Workstation 6.5.2 on Linux 2.6.31 kernel

Ye another patch for VMware under Linux. huh when will we have an end to this ? if ever :(

October 16, 2009 | Unregistered CommenterMohiuddin Khan Inamdar

http://communities.vmware.com/thread/208963
patch for 2.6.30 kernel for Workstation 6.5.2

October 16, 2009 | Unregistered CommenterMohiuddin Khan Inamdar

Any luck with kernel 2.6.31 ? i'm running Fedora 12 with 2.6.31.9-174.fc12.i686.PAE on i386. I've tried many patches, fixes and scripts, but so far no luck, same error that it's unable to build the vmmon module.

Thanks.

January 11, 2010 | Unregistered CommenterAmram Pena

Nice post. www.dutchtechies.com deserevs an award.

March 7, 2010 | Unregistered CommenterFlossie

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>