Siduction Forum
Siduction Forum => Experimental => Topic started by: dibl on 2012/01/06, 14:04:18
-
How to:
1. Download the file "source.tar.lzma" from here (http://pavlinux.ru/vmware/8.0.0/), and copy it to /usr/lib/vmware/modules/. (Disregard the instructions on the linked site.)
2. In the terminal as root, change directory to /usr/lib/vmware/modules/source and back up the existing five (5) *.tar files:
for i in ./*.tar; do mv $i $i.original; done
3. Change directory to /usr/lib/vmware/modules and unpack the replacement *.tar files:
tar -xvf source.tar.lzma
It will unpack five (5) replacement *.tar files into /usr/lib/vmware/modules/source/.
Now start VMware and let it build the new kernel modules in the normal manner.
Tested on 64-bit VMware Player only, on this system:
System: Host: e6500siduction Kernel: 3.2-0.towo.3-siduction-amd64 x86_64 (64 bit, gcc: 4.6.2)
Desktop KDE 4.7.2 (Qt 4.7.4) Distro: siduction 11.1 One Step Beyond - kde - (201112302141)
Machine: System: Dell product: Latitude E6500
Mobo: Dell model: 0PP476 Bios: Dell version: A14 date: 07/31/2009
CPU: Dual core Intel Core2 Duo CPU P8600 (-MCP-) cache: 3072 KB flags: (lm nx sse sse2 sse3 sse4_1 ssse3 vmx) bmips: 9577.04
Clock Speeds: 1: 1600.00 MHz 2: 2401.00 MHz
Graphics: Card: nVidia G98M [Quadro NVS 160M] bus-ID: 01:00.0 X.Org: 1.11.2.902 driver: nvidia Resolution: 1920x1200@50.0hz
GLX Renderer: Quadro NVS 160M/PCI/SSE2 GLX Version: 3.3.0 NVIDIA 290.10 Direct Rendering: Yes
Network: Card-1: Intel 82567LM Gigabit Network Connection driver: e1000e ver: 1.5.1-k port: efe0 bus-ID: 00:19.0
IF: eth0 state: down mac: 00:21:70:d4:d3:04
Card-2: Broadcom BCM4312 802.11b/g LP-PHY driver: b43-pci-bridge bus-ID: 0c:00.0
IF: wlan0 state: up mac: 00:23:4e:ab:86:7a
Drives: HDD Total Size: 120.0GB (20.8% used) 1: OCZ_VERTEX
Info: Processes: 217 Uptime: 15 min Memory: 940.3/1997.0MB Runlevel: 5 Gcc sys: 4.6.2 Client: Shell inxi: 1.7.27
-
Worked like a charm.
As a note I used the lzma from here (http://pavlinux.ru/vmware/8.0.1/) as I am running VMWare 8.0.1
-
Doesn't quite work with the new towo kernel.
There's problems with the network module compiling.
Help me Obi-Wan ;)
-Hinto
-
It works good here -- towo kernel 3.2-5. Do you have Player ver. 4.0.1? Did you follow the guidance exactly?
-
It builds (after following the guide), but when I start up the vm guest, I get:
Version mismatch with vmmon module: expecting 264.1, got 264.0.
You have an incorrect version of the `vmmon' kernel module.
Try reinstalling VMware Player.
I'm using VMPlayer 4.0.2 build-591240, 64-bit (the latest)
-Hinto
-
Version mismatch with vmmon module: expecting 264.1, got 264.0.
You have an incorrect version of the `vmmon' kernel module.
Try reinstalling VMware Player.
Yes, I have seen that error before. I think it might result from an upgraded VMware Player (not sure they upgrade all modules every time). I think you probably do have to reinstall VMware Player from scratch (first delete the prior installation completely).
-
Still no luck.
I'll back rev VMPlayer and cross my fingers.
-Hinto
-
Yes... Back rev-ing vmplayer works...
Maybe the patch version needs to be updated?
-H
-
Yes, the patched modules work with VMware Player 4.0.1. The recent version 4.0.2 requires new module versions...
-
The recent version 4.0.2 requires new module versions...
Thanks for the warning! :)
-
We can now install and patch 4.0.2. Get the patch file "vmware802fixlinux320.tar.gz" from this (http://weltall.heliohost.org/wordpress/2012/01/26/vmware-workstation-8-0-2-player-4-0-2-fix-for-linux-kernel-3-2-and-3-3/) page.
Remove VMware Player 4.0.1 using the "vmware-installer -u vmware-player" utility. Then install VMware Player 4.0.2, but don't run it. Copy the patch file to /usr/lib/vmware/modules/source, and untar it. You can delete the "patch-modules ...sh script -- you won't use it.
As root, at the /usr/lib/vmware/modules/source directory prompt, issue
for i in ./*.tar; do tar -xvf $i; done
to untar the five .tar files. Each one will extract into a new directory with "-only" as the directory name suffix. When you are finished you should have, in addition to the original five .tar files, the following new directories:
vmblock-only vmci-only vmmon-only vmnet-only vsock-only
Next, back up the original source .tar files with
for i in ./*.tar; do mv $i $i.original; done
Next, patch vmware with
patch -p1 < vmware3.2.0.patch
It should patch 3 files, with no error output.
Finally, "tar cvf" all of the files in the vxxx-only subdirectories. So, for example,
tar cvf vmblock.tar vmblock-only/*
and do this for each of the 5 vxxx-only directories.
You are done -- the modules will now build when you start VMware Player 4.0.2.
-
Thanks.
-Hinto
-
It fails like.
Kernel: Linux julep 3.2-1.towo.3-siduction-amd64 #1 SMP PREEMPT Fri Jan 13 11:16:56 UTC 2012 x86_64 GNU/Linux
VMware-Player-4.0.2-591240.x86_64.bundle)
/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’
/tmp/vmware-root/modules/vmnet-only/netif.c: In function ‘VNetNetIfSetup’:
include/linux/highmem.h:48:21: note: expected ‘struct page *’ but argument is of type ‘const struct <anonymous>’/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: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 <anonymous>’
make[2]: *** [/tmp/vmware-root/modules/vmnet-only/netif.o] Error 1
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/linux-headers-3.2-1.towo.3-siduction-amd64'
make: *** [vmnet.ko] Error 2
make: Leaving directory `/tmp/vmware-root/modules/vmnet-only'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-root/modules/vmblock-only'
make -C /lib/modules/3.2-1.towo.3-siduction-amd64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.2-1.towo.3-siduction-amd64'
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
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-headers-3.2-1.towo.3-siduction-amd64'
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'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-root/modules/vmci-only'
make -C /lib/modules/3.2-1.towo.3-siduction-amd64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.2-1.towo.3-siduction-amd64'
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/vmciContext.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDatagram.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDoorbell.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciDriver.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciEvent.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciHashtable.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciQPair.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciQueuePair.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciResource.o
CC [M] /tmp/vmware-root/modules/vmci-only/common/vmciRoute.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-headers-3.2-1.towo.3-siduction-amd64'
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'
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-root/modules/vmci-only'
make -C /lib/modules/3.2-1.towo.3-siduction-amd64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-headers-3.2-1.towo.3-siduction-amd64'
Building modules, stage 2.
MODPOST 1 modules
make[1]: Leaving directory `/usr/src/linux-headers-3.2-1.towo.3-siduction-amd64'
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'
Starting VMware services:
Virtual machine monitor done
Virtual machine communication interface done
VM communication interface socket family failed
Blocking file system done
Virtual ethernet failed
VMware Authentication Daemon done
-
I *think* I had a typo... re-checking
-
Yep... A typo in my script (that encapsulated your steps).
Runs with latest towo kernel and latest VMPlayer.
Thanks.
-H