Thursday, January 8, 2009

VMware Server 1.0.8 on openSUSE 11.1

I decided to upgrade my laptop system from almost "prehistoric" openSuSE 10.1 to the newest version 11.1. It was quite successful but I had to resolve an issue with VMware Server 1.0.8 which I am used to using in my work a lot.

The whole configuration process crashed on vmware kernel modules compilation. The kernel version in new openSUSE is 2.6.27.7. As there aren't precompiled modules for it within version 1.0.8 they need to be recompiled at first. Don't forget to have installed kernel-source, make, gcc and patch packages. Secondly, you need to configure installed kernel sources with make cloneconfig to correspond with the running kernel and platform. Finally, configure VMware Server installation. Everything follows here:

Building the vmmon module.Using 2.6.x kernel build system.make: Entering directory `/tmp/vmware-config2/vmmon-only'make -C /lib/modules/2.6.27.7-9-pae/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modulesmake[1]: Entering directory `/usr/src/linux-2.6.27.7-9-obj/i386/pae'make -C ../../../linux-2.6.27.7-9 O=/usr/src/linux-2.6.27.7-9-obj/i386/pae/. modulesCC [M] /tmp/vmware-config2/vmmon-only/linux/driver.oIn file included from /tmp/vmware-config2/vmmon-only/./include/x86.h:20, from /tmp/vmware-config2/vmmon-only/./include/machine.h:24, from /tmp/vmware-config2/vmmon-only/linux/driver.h:15, from /tmp/vmware-config2/vmmon-only/linux/driver.c:49:/tmp/vmware-config2/vmmon-only/./include/x86apic.h:79:1: warning: "APIC_BASE_MSR" redefinedIn file included from include2/asm/fixmap_32.h:29, from include2/asm/fixmap.h:5, from include2/asm/apic.h:9, from include2/asm/smp.h:13, from /usr/src/linux-2.6.27.7-9/include/linux/smp.h:28, from /usr/src/linux-2.6.27.7-9/include/linux/topology.h:33, from /usr/src/linux-2.6.27.7-9/include/linux/mmzone.h:687, from /usr/src/linux-2.6.27.7-9/include/linux/gfp.h:4, from /usr/src/linux-2.6.27.7-9/include/linux/kmod.h:22, from /usr/src/linux-2.6.27.7-9/include/linux/module.h:13, from /tmp/vmware-config2/vmmon-only/linux/driver.c:12:include2/asm/apicdef.h:134:1: warning: this is the location of the previous definitionIn file included from /tmp/vmware-config2/vmmon-only/./include/machine.h:24, from /tmp/vmware-config2/vmmon-only/linux/driver.h:15, from /tmp/vmware-config2/vmmon-only/linux/driver.c:49:/tmp/vmware-config2/vmmon-only/./include/x86.h:830:1: warning: "PTE_PFN_MASK" redefinedIn file included from include2/asm/paravirt.h:7, from include2/asm/irqflags.h:55, from /usr/src/linux-2.6.27.7-9/include/linux/irqflags.h:57, from include2/asm/system.h:11, from include2/asm/processor.h:17, from /usr/src/linux-2.6.27.7-9/include/linux/prefetch.h:14, from /usr/src/linux-2.6.27.7-9/include/linux/list.h:6, from /usr/src/linux-2.6.27.7-9/include/linux/module.h:9, from /tmp/vmware-config2/vmmon-only/linux/driver.c:12:include2/asm/page.h:22:1: warning: this is the location of the previous definitionIn file included from /tmp/vmware-config2/vmmon-only/linux/vmhost.h:13, from /tmp/vmware-config2/vmmon-only/linux/driver.c:71:/tmp/vmware-config2/vmmon-only/./include/compat_semaphore.h:5:27: error: asm/semaphore.h: No such file or directory/tmp/vmware-config2/vmmon-only/linux/driver.c:146: error: unknown field 'nopage' specified in initializer/tmp/vmware-config2/vmmon-only/linux/driver.c:147: warning: initialization from incompatible pointer type/tmp/vmware-config2/vmmon-only/linux/driver.c:150: error: unknown field 'nopage' specified in initializer/tmp/vmware-config2/vmmon-only/linux/driver.c:151: warning: initialization from incompatible pointer type/tmp/vmware-config2/vmmon-only/linux/driver.c: In function 'LinuxDriver_Ioctl':/tmp/vmware-config2/vmmon-only/linux/driver.c:1670: error: too many arguments to function 'smp_call_function'make[4]: *** [/tmp/vmware-config2/vmmon-only/linux/driver.o] Error 1make[3]: *** [_module_/tmp/vmware-config2/vmmon-only] Error 2make[2]: *** [sub-make] Error 2make[1]: *** [all] Error 2make[1]: Leaving directory `/usr/src/linux-2.6.27.7-9-obj/i386/pae'make: *** [vmmon.ko] Error 2make: Leaving directory `/tmp/vmware-config2/vmmon-only'Unable to build the vmmon module.

The compilation of vmmon module crashed because of incompatibility between the kernel version and available vmmon module. The solution is to download updated version of modules vmware-update-2.6.27-5.5.7-2 and update them:

This update updates all required modules and configuration script vmware-config.pl. After that, the compilation of vmmon module is successful and you can finish the configuration. I hope it will help you.

About Me

My name is David Sumsky and I'm working as a UNIX system engineer. I'm in charge of designing, installing and maintaining solutions based on UNIX platform. The purpose of this blog is to share my knowledge and experience with other people who are interested in similar topics like me. If you want to contact me you can write at dsumsky at gmail.com