29.06.2007 12:33
Updating VMware Tools to compile under 2.6.21.5
Today I deployed a new virtual machine on our ESX hosts at work. This time it
should be a linux guest (Debian 4.0) with the most recent stable kernel
version (2.6.21.5) but when trying to install the VMware tools package (VMware Tools 3.0.1 build-43424) some
of the provided kernel modules (namely vmmemctl, vmhgfs and vmxnet)
refused to compile on 2.6.21.5.
Fortunately, there was not much todo to make them compile again but I wasn't able to find a working patch in the VMware community forums nor anywhere else, so I want to provide the updated module sources here for your convenience.
After you did that, all modules should compile flawlessly.
If they don't, don't hesitate to contact me.
Fortunately, there was not much todo to make them compile again but I wasn't able to find a working patch in the VMware community forums nor anywhere else, so I want to provide the updated module sources here for your convenience.
1. vmmemctl
The following error messages appear when trying to compile the vmmemctl module:Building the vmmemctl module. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config0/vmmemctl-only' make -C /lib/modules/2.6.21.5/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-2.6.21.5' CC [M] /tmp/vmware-config0/vmmemctl-only/os.o /tmp/vmware-config0/vmmemctl-only/os.c:26:26: error: linux/config.h: No such file or directory make[2]: *** [/tmp/vmware-config0/vmmemctl-only/os.o] Error 1 make[1]: *** [_module_/tmp/vmware-config0/vmmemctl-only] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.21.5' make: *** [vmmemctl.ko] Error 2 make: Leaving directory `/tmp/vmware-config0/vmmemctl-only'Downloads:
- vmwaretools-3.0.1-43424-vmmemctl-2.6.21.5.diff
- vmmemctl.tar (updated tarball suitable for installation)
2. vmhgfs
The following error messages appear when trying to compile the vmhgfs module:Building the vmhgfs module. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config0/vmhgfs-only' make -C /lib/modules/2.6.21.5/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-2.6.21.5' CC [M] /tmp/vmware-config0/vmhgfs-only/cpName.o CC [M] /tmp/vmware-config0/vmhgfs-only/cpNameLinux.o CC [M] /tmp/vmware-config0/vmhgfs-only/dev.o CC [M] /tmp/vmware-config0/vmhgfs-only/driver.o /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsChangeFileAttributes': /tmp/vmware-config0/vmhgfs-only/driver.c:763: error: 'struct inode' has no member named 'i_blksize' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsInitializeInode': /tmp/vmware-config0/vmhgfs-only/driver.c:835: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsIget': /tmp/vmware-config0/vmhgfs-only/driver.c:884: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsCreate': /tmp/vmware-config0/vmhgfs-only/driver.c:1535: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsLookup': /tmp/vmware-config0/vmhgfs-only/driver.c:1635: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsMkdir': /tmp/vmware-config0/vmhgfs-only/driver.c:1727: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsDelete': /tmp/vmware-config0/vmhgfs-only/driver.c:1854: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsRename': /tmp/vmware-config0/vmhgfs-only/driver.c:2046: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c:2048: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsRevalidate': /tmp/vmware-config0/vmhgfs-only/driver.c:2288: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsSetattr': /tmp/vmware-config0/vmhgfs-only/driver.c:2425: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsOpen': /tmp/vmware-config0/vmhgfs-only/driver.c:2801: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsDirOpen': /tmp/vmware-config0/vmhgfs-only/driver.c:3414: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsClearInode': /tmp/vmware-config0/vmhgfs-only/driver.c:4105: error: 'struct inode' has no member named 'u' /tmp/vmware-config0/vmhgfs-only/driver.c: At top level: /tmp/vmware-config0/vmhgfs-only/driver.c:4245: warning: initialization from incompatible pointer type /tmp/vmware-config0/vmhgfs-only/driver.c: In function 'HgfsGetSb': /tmp/vmware-config0/vmhgfs-only/driver.c:4454: error: too few arguments to function 'get_sb_nodev' /tmp/vmware-config0/vmhgfs-only/driver.c: At top level: /tmp/vmware-config0/vmhgfs-only/driver.c:4500: warning: initialization from incompatible pointer type make[2]: *** [/tmp/vmware-config0/vmhgfs-only/driver.o] Error 1 make[1]: *** [_module_/tmp/vmware-config0/vmhgfs-only] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.21.5' make: *** [vmhgfs.ko] Error 2 make: Leaving directory `/tmp/vmware-config0/vmhgfs-only' Unable to build the vmhgfs module.Downloads:
- vmwaretools-3.0.1-43424-vmhgfs-2.6.21.5.diff
- vmhgfs.tar (updated tarball suitable for installation)
3. vmxnet
The following error messages appear when trying to compile the vmxnet module:Building the vmxnet module. Using 2.6.x kernel build system. make: Entering directory `/tmp/vmware-config2/vmxnet-only' make -C /lib/modules/2.6.21.5/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules make[1]: Entering directory `/usr/src/linux-2.6.21.5' CC [M] /tmp/vmware-config2/vmxnet-only/vmxnet.o /tmp/vmware-config2/vmxnet-only/vmxnet.c:11:26: error: linux/config.h: No such file or directory /tmp/vmware-config2/vmxnet-only/vmxnet.c: In function 'vmxnet_open': /tmp/vmware-config2/vmxnet-only/vmxnet.c:813: warning: passing argument 2 of 'request_irq' from incompatible pointer type /tmp/vmware-config2/vmxnet-only/vmxnet.c: In function 'vmxnet_tx': /tmp/vmware-config2/vmxnet-only/vmxnet.c:945: error: 'CHECKSUM_HW' undeclared (first use in this function) /tmp/vmware-config2/vmxnet-only/vmxnet.c:945: error: (Each undeclared identifier is reported only once /tmp/vmware-config2/vmxnet-only/vmxnet.c:945: error: for each function it appears in.) make[2]: *** [/tmp/vmware-config2/vmxnet-only/vmxnet.o] Error 1 make[1]: *** [_module_/tmp/vmware-config2/vmxnet-only] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.21.5' make: *** [vmxnet.ko] Error 2 make: Leaving directory `/tmp/vmware-config2/vmxnet-only' Unable to build the vmxnet module.Downloads:
- vmwaretools-3.0.1-43424-vmxnet-2.6.21.5.diff
- vmxnet.tar (updated tarball suitable for installation)
Installation Instructions
1. Click on the "Install VMware Tools" option in your Virtual Machine 2. Mount the VMware Tools CD mount /cdrom 3. Copy the tar.gz file to a temporary location and extract it cp /cdrom/VMwareTools-3.0.1-43424.tar.gz /tmp cd /tmp tar xzf VMwareTools-3.0.1-43424.tar.gz 4. Replace the shipped tarballs with the ones you downloaded here cp /where/you/downloaded/my/tarballs/*.tar /tmp/vmware-tools-distrib/lib/modules/source 5. Install VMware Tools cd /tmp/vmware-tools-distrib ./vmware-install.pl
After you did that, all modules should compile flawlessly.
If they don't, don't hesitate to contact me.
08.06.2007 13:11
Matrox Parhelia driver 1.4.4.9 for Linux is out
![]() |
After a long time without any updates to the unofficial mtx driver I finally compiled a new release together today. Have fun! Downloads:
|
ChangeLog:
* Corrected the wording in the installer when a newer Xorg version is
detected that is not directly supported by a precompiled mtx_drv.so to
avoid confusion
* Some small cleanups in the installer to prevent it from moving files
that aren't there and therefore to reduce error messages during
installation
* In 2.6.22-rc2 the symbol "pci_module_init" has finally been removed, now
the mtx driver takes care about that
* Added two small patches from forum user "dagnygren" fixing bugs regarding
memory allocation
* Added a small helper file called "make.sh" to only build the Matrox
Kernel module instead of installing the whole beast
Links:
Posted by Alexander Griesser | Permanent Link | Categories: Matrox Parhelia Drivers | Comments: --> New comment
