PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : VMware-server und 2.6.27 Kernel geht (noch) nicht?!



Fabeltier
06.11.08, 01:05
Hallo,
Ich versuche gerade erfolglos den VMware-server zu installieren. Nachdem sich das Script vmware-install.pl ueber das Fehlen von asm/semaphore.h beschwerte, fand ich einen Patch unter http://www.insecure.ws/warehouse/vmware-update-2.6.27-5.5.7-2.tar.gz
Dieser funktionierte jedoch nur mit maessigem Erfolg. Alles kompiliert zwar, aber schliesslich schlaegt insmod fehl, weil "init_mm" in diesem rel. neuen Kernel nicht mehr definiert zu sein scheint (fehlt eine CONFIG Option? Wenn ja, welche?).

Ich habe dann versucht den Kernel nochmal zu kompilieren aber kein make-kpkg clean zu machen (und auch kein make clean). Das Makefile aus dem lib/modules rauskopiert, das .config aus dem Kernel extrahiert und nochmal in die Sourcen kompiliert.. versucht ueber die Kernel-headers zu kompilieren, ebenso wie auch ueber die Sourcen direkt. Und natuerlich vmmon.ko manuell zu-insmod-en.. alles ohne Erfolg. "init_mm" fehlt irgendwie.

Wie bekomme ich das VMware-server jetz installiert? Bzw, brauch ich das vmmon.ko denn unbedingt, ich mein beim Qemu ist der Accelerator doch auch nicht obligatorisch dabei?!

Versionen:
Debian Lenny / Sid
Kernel 2.6.27.4 (modified)
VMware-server-1.0.7-108231
VMware-mui-1.0.7-108231
vmware-update-2.6.27-5.5.7-2

Eine typische Situation (Installation ueber vmware-update) waere diese hier (hier wird das Modul ueber /usr/src/linux/include gebaut).


tower<00:45:32>::root("/tmp/vmware-update-2.6.27-5.5.7-2/");
# ./runme.pl
Updating /usr/bin/vmware-config.pl ... already patched
Updating /usr/bin/vmware ... No patch needed/available
Updating /usr/bin/vmnet-bridge ... No patch needed/available
Updating /usr/lib/vmware/bin/vmware-vmx ... No patch needed/available
Updating /usr/lib/vmware/bin-debug/vmware-vmx ... No patch needed/available
VMware modules in "/usr/lib/vmware/modules/source" has been updated.

Before running VMware for the first time after update, you need to configure it
for your running kernel by invoking the following command:
"/usr/bin/vmware-config.pl". Do you want this script to invoke the command for
you now? [yes]

Making sure services for VMware Server are stopped.

Stopping VMware services:
Virtual machine monitor done

Configuring fallback GTK+ 2.4 libraries.

In which directory do you want to install the mime type 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 Server 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? [/usr/src/linux/include]

Extracting the sources of the vmmon module.

Building the vmmon module.

Building for VMware Server 1.0.0.
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config3/vmmon-only'
make -C /usr/src/linux/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/usr/src/linux-2.6.27.4'
CC [M] /tmp/vmware-config3/vmmon-only/linux/driver.o
CC [M] /tmp/vmware-config3/vmmon-only/linux/driverLog.o
CC [M] /tmp/vmware-config3/vmmon-only/linux/hostif.o
/tmp/vmware-config3/vmmon-only/linux/hostif.c: In function ‘HostIF_SetFastClockRate’:
/tmp/vmware-config3/vmmon-only/linux/hostif.c:3441: warning: passing argument 2 of ‘send_sig’ discards qualifiers from pointer target type
CC [M] /tmp/vmware-config3/vmmon-only/common/comport.o
CC [M] /tmp/vmware-config3/vmmon-only/common/cpuid.o
CC [M] /tmp/vmware-config3/vmmon-only/common/hash.o
CC [M] /tmp/vmware-config3/vmmon-only/common/memtrack.o
CC [M] /tmp/vmware-config3/vmmon-only/common/phystrack.o
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:1195:
/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:2667: warning: ‘sysenterState.SysenterStateV45::validEIP’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2667: warning: ‘sysenterState.SysenterStateV45::cs’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2667: warning: ‘sysenterState.SysenterStateV45::rsp’ may be used uninitialized in this function
/tmp/vmware-config3/vmmon-only/common/task_compat.h:2667: 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/common/vmciDatagram.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciDriver.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciDs.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciGroup.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciHashtable.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciProcess.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciResource.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmciSharedMem.o
CC [M] /tmp/vmware-config3/vmmon-only/common/vmx86.o
CC [M] /tmp/vmware-config3/vmmon-only/vmcore/compat.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: "init_mm" [/tmp/vmware-config3/vmmon-only/vmmon.ko] undefined!
CC /tmp/vmware-config3/vmmon-only/vmmon.mod.o
LD [M] /tmp/vmware-config3/vmmon-only/vmmon.ko
make[1]: Leaving directory `/usr/src/linux-2.6.27.4'
cp -f vmmon.ko ./../vmmon.o
make: Leaving directory `/tmp/vmware-config3/vmmon-only'
Unable to make a vmmon module that can be loaded in the running kernel:
insmod: error inserting '/tmp/vmware-config3/vmmon.o': -1 Unknown symbol in module
There is probably a slight difference in the kernel configuration between the
set of C header files you specified and your running kernel. You may want to
rebuild a kernel based on that directory, or specify another directory.

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.



PS: hab mal in den kernelsourcen gegrept und da ist immer noch einiges an init_mm vorhanden... seltsam.

Gruesse :confused:

stefan.becker
08.11.08, 18:25
http://www.vmware.com/download/server/

Es gibt inzwischen Version 1.08. Ist ein Versuch wert.

_Cyber_
30.12.08, 22:20
ist zwar schon lange her, trotzdem:

INIT_MM findest du unter Kernel Hacking -> Enable unused/obsolete exported symbols

danach kompilieren (übrigens mit deinem obigen patch und kernel 2.6.28) die vmware-module korrekt durch.

>>>cyber