VMware Communities
don_ousian
Contributor
Contributor

vmware workstation 6, kernel 2.6.20, insmod segfaults

I've tried to install vmware workstation 6, with this result[/i]

kernel is recompiled to avoid paravirt problematic stuff[/i]

In which directory do you want to install the application's icon?

Trying to find a suitable vmmon module for your running kernel.

None of the pre-built vmmon modules for VMware Workstation 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?

Extracting the sources of the vmmon module.

Building the vmmon module.

Using 2.6.x kernel build system.

make: se ingresa al directorio `/tmp/vmware-config4/vmmon-only'

make -C /lib/modules/2.6.20.20070509/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules

make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.20.20070509'

CC /tmp/vmware-config4/vmmon-only/linux/driver.o

CC /tmp/vmware-config4/vmmon-only/linux/hostif.o

CC /tmp/vmware-config4/vmmon-only/common/comport.o

CC /tmp/vmware-config4/vmmon-only/common/cpuid.o

CC /tmp/vmware-config4/vmmon-only/common/hash.o

CC /tmp/vmware-config4/vmmon-only/common/memtrack.o

CC /tmp/vmware-config4/vmmon-only/common/phystrack.o

CC /tmp/vmware-config4/vmmon-only/common/task.o

CC /tmp/vmware-config4/vmmon-only/common/vmciContext.o

CC /tmp/vmware-config4/vmmon-only/common/vmciDatagram.o

CC /tmp/vmware-config4/vmmon-only/common/vmciDriver.o

CC /tmp/vmware-config4/vmmon-only/common/vmciDs.o

CC /tmp/vmware-config4/vmmon-only/common/vmciGroup.o

CC /tmp/vmware-config4/vmmon-only/common/vmciHashtable.o

CC /tmp/vmware-config4/vmmon-only/common/vmciProcess.o

CC /tmp/vmware-config4/vmmon-only/common/vmciResource.o

CC /tmp/vmware-config4/vmmon-only/common/vmciSharedMem.o

CC /tmp/vmware-config4/vmmon-only/common/vmx86.o

CC /tmp/vmware-config4/vmmon-only/vmcore/moduleloop.o

LD /tmp/vmware-config4/vmmon-only/vmmon.o

Building modules, stage 2.

MODPOST 1 modules

CC /tmp/vmware-config4/vmmon-only/vmmon.mod.o

LD /tmp/vmware-config4/vmmon-only/vmmon.ko

make[1]: se sale del directorio `/usr/src/linux-headers-2.6.20.20070509'

cp -f vmmon.ko ./../vmmon.o

make: se sale del directorio `/tmp/vmware-config4/vmmon-only'

sh: line 1: 10662 segmentation fault 'insmod' -p '/tmp/vmware-config4/vmmon.o' >/dev/null 2>&1

Unable to make a vmmon module that can be loaded in the running kernel:

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.

strace is not very useful[/b]

root@:/tmp/vmware-config4$ strace insmod vmmon.o

execve("/sbin/insmod", \["insmod", "vmmon.o"], ) = 0

brk(0) = 0x804b000

access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)

mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f72000

access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)

open("/etc/ld.so.cache", O_RDONLY) = 3

fstat64(3, \{st_mode=S_IFREG|0644, st_size=108054, ...}) = 0

mmap2(NULL, 108054, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f57000

close(3) = 0

access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)

open("/lib/i686/cmov/libc.so.6", O_RDONLY) = 3

read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0`\1\000"..., 512) = 512

fstat64(3, \{st_mode=S_IFREG|0644, st_size=1315328, ...}) = 0

mmap2(NULL, 1320356, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xb7e14000

mmap2(0xb7f51000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13d) = 0xb7f51000

mmap2(0xb7f54000, 9636, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f54000

close(3) = 0

mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7e13000

set_thread_area(\{entry_number:-1 -> 6, base_addr:0xb7e136c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0

mprotect(0xb7f51000, 4096, PROT_READ) = 0

munmap(0xb7f57000, 108054) = 0

brk(0) = 0x804b000

brk(0x806c000) = 0x806c000

\--- SIGSEGV (Segmentation fault) @ 0 (0) ---

\+++ killed by SIGSEGV \+++

Process 11915 detached

Any clue?[/b]

0 Kudos
20 Replies
KevinG
Immortal
Immortal

What exact Linux distribution are you trying to use?

Post the output from the following

VMWARE_DEBUG=yes vmware-config.pl

0 Kudos
don_ousian
Contributor
Contributor

Debian sid/unstable.

Info is almost the same.

root@:~$ export VMWARE_DEBUG=yes

root@:~$ vmware-config.pl

Making sure services for VMware Workstation are stopped.

Stopping VMware services:

Virtual machine monitor done

Blocking file system:umount: /proc/fs/vmblock/mountPoint: no se ha encontrado

done

Bridged networking on /dev/vmnet0 done

Host network detection done

Bridged networking on /dev/vmnet2 done

DHCP server on /dev/vmnet8 done

NAT service on /dev/vmnet8 done

Host-only networking on /dev/vmnet8 done

Virtual ethernet done

Configuring fallback GTK+ 2.4 libraries.

In which directory do you want to install the theme icons?

What directory contains your desktop menu entry files? These files have a

.desktop file extension.

In which directory do you want to install the application's icon?

Trying to find a suitable vmmon module for your running kernel.

None of the pre-built vmmon modules for VMware Workstation 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?

Extracting the sources of the vmmon module.

Building the vmmon module.

Using 2.6.x kernel build system.

make: se ingresa al directorio `/tmp/vmware-config6/vmmon-only'

make -C /lib/modules/2.6.20.20070509/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules

make[1]: se ingresa al directorio `/usr/src/linux-headers-2.6.20.20070509'

CC /tmp/vmware-config6/vmmon-only/linux/driver.o

CC /tmp/vmware-config6/vmmon-only/linux/hostif.o

CC /tmp/vmware-config6/vmmon-only/common/comport.o

CC /tmp/vmware-config6/vmmon-only/common/cpuid.o

CC /tmp/vmware-config6/vmmon-only/common/hash.o

CC /tmp/vmware-config6/vmmon-only/common/memtrack.o

CC /tmp/vmware-config6/vmmon-only/common/phystrack.o

CC /tmp/vmware-config6/vmmon-only/common/task.o

CC /tmp/vmware-config6/vmmon-only/common/vmciContext.o

CC /tmp/vmware-config6/vmmon-only/common/vmciDatagram.o

CC /tmp/vmware-config6/vmmon-only/common/vmciDriver.o

CC /tmp/vmware-config6/vmmon-only/common/vmciDs.o

CC /tmp/vmware-config6/vmmon-only/common/vmciGroup.o

CC /tmp/vmware-config6/vmmon-only/common/vmciHashtable.o

CC /tmp/vmware-config6/vmmon-only/common/vmciProcess.o

CC /tmp/vmware-config6/vmmon-only/common/vmciResource.o

CC /tmp/vmware-config6/vmmon-only/common/vmciSharedMem.o

CC /tmp/vmware-config6/vmmon-only/common/vmx86.o

CC /tmp/vmware-config6/vmmon-only/vmcore/moduleloop.o

LD /tmp/vmware-config6/vmmon-only/vmmon.o

Building modules, stage 2.

MODPOST 1 modules

CC /tmp/vmware-config6/vmmon-only/vmmon.mod.o

LD /tmp/vmware-config6/vmmon-only/vmmon.ko

make[1]: se sale del directorio `/usr/src/linux-headers-2.6.20.20070509'

cp -f vmmon.ko ./../vmmon.o

make: se sale del directorio `/tmp/vmware-config6/vmmon-only'

sh: line 1: 2980 segmentation fault 'insmod' -p '/tmp/vmware-config6/vmmon.o' >/dev/null 2>&1

Unable to make a vmmon module that can be loaded in the running kernel:

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.

0 Kudos
nitram_
Contributor
Contributor

hi,

i noticed the exact same thing in my debian sid installation. i suspect this is due to the recent libc update (see below).

regards

martin

apt-cache policy libc6

libc6:

Installed: 2.5-7

Candidate: 2.5-7

Version table:

2.6~20070518-2 0

1 http://ftp.de.debian.org experimental/main Packages

      • 2.5-7 0

990 http://ftp.de.debian.org sid/main Packages

100 /var/lib/dpkg/status

2.3.6.ds1-13 0

300 http://ftp.de.debian.org stable/main Packages

500 http://ftp.de.debian.org testing/main Packages

0 Kudos
don_ousian
Contributor
Contributor

I did suspect, but I wasn't quite sure if it was me or could happend somebody else.

Rebuildng module-init-tools has not solved the problem.

regards

0 Kudos
plesko
Contributor
Contributor

I am also experiencing this problem with VMware workstation installation on Debian unstable. I have been unable to resolve this. Please let me know if you find a solution to this

0 Kudos
dimitris
Contributor
Contributor

...

What is the location of the directory of C header files that match your running

kernel?

Extracting the sources of the vmmon module.

Building the vmmon module.

Using 2.6.x kernel build system.

make: Entering directory `/tmp/vmware-config1/vmmon-only'

make -C /lib/modules/2.6.21.2-greebo/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. modules

make[1]: Entering directory `/home/d/linux/linux-2.6.21.2'

CC /tmp/vmware-config1/vmmon-only/linux/driver.o

CC /tmp/vmware-config1/vmmon-only/linux/hostif.o

CC /tmp/vmware-config1/vmmon-only/common/comport.o

CC /tmp/vmware-config1/vmmon-only/common/cpuid.o

CC /tmp/vmware-config1/vmmon-only/common/hash.o

CC /tmp/vmware-config1/vmmon-only/common/memtrack.o

CC /tmp/vmware-config1/vmmon-only/common/phystrack.o

CC /tmp/vmware-config1/vmmon-only/common/task.o

CC /tmp/vmware-config1/vmmon-only/common/vmciContext.o

CC /tmp/vmware-config1/vmmon-only/common/vmciDatagram.o

CC /tmp/vmware-config1/vmmon-only/common/vmciDriver.o

CC /tmp/vmware-config1/vmmon-only/common/vmciDs.o

CC /tmp/vmware-config1/vmmon-only/common/vmciGroup.o

CC /tmp/vmware-config1/vmmon-only/common/vmciHashtable.o

CC /tmp/vmware-config1/vmmon-only/common/vmciProcess.o

CC /tmp/vmware-config1/vmmon-only/common/vmciResource.o

CC /tmp/vmware-config1/vmmon-only/common/vmciSharedMem.o

CC /tmp/vmware-config1/vmmon-only/common/vmx86.o

CC /tmp/vmware-config1/vmmon-only/vmcore/moduleloop.o

LD /tmp/vmware-config1/vmmon-only/vmmon.o

Building modules, stage 2.

MODPOST 1 modules

CC /tmp/vmware-config1/vmmon-only/vmmon.mod.o

LD /tmp/vmware-config1/vmmon-only/vmmon.ko

make[1]: Leaving directory `/home/d/linux/linux-2.6.21.2'

cp -f vmmon.ko ./../vmmon.o

make: Leaving directory `/tmp/vmware-config1/vmmon-only'

sh: line 1: 7935 Segmentation fault 'insmod' -p '/tmp/vmware-config1/vmmon.o' >/dev/null 2>&1

Unable to make a vmmon module that can be loaded in the running kernel:

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.

d@greebo:~/tmp/vmware-distrib$ uname -a

Linux greebo 2.6.21.2-greebo #1 SMP PREEMPT Wed May 23 15:52:39 PDT 2007 i686 GNU/Linux

d@greebo:~/tmp/vmware-distrib$ apt-cache policy libc6

libc6:

Installed: 2.5-8

Candidate: 2.5-8

Version table:

2.6~20070518-2 0

1 http://localhost experimental/main Packages

      • 2.5-8 0

990 http://localhost unstable/main Packages

100 /var/lib/dpkg/status

d@greebo:~/tmp/vmware-distrib$

0 Kudos
don_ousian
Contributor
Contributor

Yes, that's it. I also tested with recent Debian package linux-image version 2.6.21.

Same result.

I think it's a problem of libc6.

I think I'm going to have to take a look to diff source packages from debian and ubuntu because yesterday I installed succesfully vmware workstation 6 in a ubuntu feisty which has a libc6 version 2.5-0.

0 Kudos
jasse
Contributor
Contributor

I had a similiar issue, I found the solution here:

http://www.vmware.com/community/thread.jspa?threadID=85612

(installed module-init-tools from stable)

0 Kudos
don_ousian
Contributor
Contributor

Ok, downgrading module-init-tools (and thus insmod) has sorted it.

Looks like an upstream bug in insmod.

For other peoples reference - if you're seeing segfaults when calling insmod on debian - downgrade from 3.3pre-11-1 to 3.3-pre4-2

It worked for me.

No more insmod segfaults in 2.6.20. I suppose 2.6.21 will be the same.

Thanks for your help folks.

0 Kudos
dimitris
Contributor
Contributor

Yup, insmod was the culprit. The patch below seems innocuous and works for me, if you're not inclined to downgrade:

\--- module-init-tools-3.3-pre11.orig/insmod.c 2007-03-22 00:36:02.000000000 -0700

\+++ module-init-tools-3.3-pre11/insmod.c 2007-05-25 11:42:43.000000000 -0700

@@ -106,7 +106,7 @@ int main(int argc, char *argv[])

unsigned long len;

void *file;

char *filename, *options = strdup("");

\- char *p, *progname = argv[0];

+ char *progname = argv[0];

if (!options) {

fprintf(stderr,

@@ -115,11 +115,10 @@ int main(int argc, char *argv[])

exit(1);

}

\- (p = strrchr(argv[0], '/')) ? p++ : argv[0];

\- if (strstr(p, "insmod.static"))

\- try_old_version("insmod.static", argv);

\- else

+ if (strstr(progname, "insmod.static") == NULL)

try_old_version("insmod", argv);

+ else

+ try_old_version("insmod.static", argv);

if (argv[1] && (streq(argv[1], "--version") || streq(argv[1], "-V"))) {

puts(PACKAGE " version " VERSION);

0 Kudos
plesko
Contributor
Contributor

awesome. I checked this with my machine at home and vmware-server and it works. Thanks for the help everybody.

0 Kudos
jeri
Contributor
Contributor

Confirmed under Debian, module-init-tools_3.3-pre11-1 has this problem but module-init-tools_3.3-pre4-2 does not. Version of gcc and libc6 makes no difference.

Kernel 2.6.21 OK too.

0 Kudos
meeas
Contributor
Contributor

Quick FYI, you can also comment out the "if" portion that tries to run the "insmod -p". It is the only time the script calls insmod, the rest of the time it calls modprobe which works fine.

For vmware server 1.0.3 it is lines 2920-2924 in /usr/bin/vmware-config.pl

0 Kudos
Ast3riK
Contributor
Contributor

Debian etch stable, kernel 2.6.18-4

There is one more problem after...

module-init-tools_3.3-pre4-2

/usr/lib/vmware/bin/vmware: symbol lookup error: /usr/lib/vmware/lib/libvmwareui.so.0/libvmwareui.so.0: undefined symbol: ZN3Gtk13RecentManager11getdefaultEv

I'll try Kernel 2.6.21.5....

0 Kudos
hscharmann
Contributor
Contributor

the installation went fine after commenting out the 'if', but as I want to start vmware ws 6

it didn't work out:

$ vmware

/usr/lib/vmware/bin/vmware: symbol lookup error: /usr/lib/vmware/bin/vmware: undefined symbol: ZN3Gtk8Notebook24setwindow_creation_hookERKN4sigc4slotIPS0_PNS_6WidgetEiiNS1_3nilES6_S6_S6_EE

/usr/lib/vmware/bin/vmware-tray: symbol lookup error: /usr/lib/vmware/bin/vmware-tray: undefined symbol: ZN3Gtk10StatusIcon6createERKNS7StockIDE

$ uname -a

Linux hannez 2.6.18-4-amd64 #1 SMP Fri May 4 00:37:33 UTC 2007 x86_64 GNU/Linux

0 Kudos
gpe92
Contributor
Contributor

I've downgrade module-init-tools to 3.3-pre4.2 and now the config script works fine but when I try to launch vmplayer I've this error too:

/usr/local/lib/vmware/bin/vmplayer: symbol lookup error: /usr/local/lib/vmware/lib/libvmwareui.so.0/libvmwareui.so.0: undefined symbol: ZN3Gtk13RecentManager11getdefaultEv

Ma config: Debian testing, kernel 2.6.18-4

0 Kudos
hscharmann
Contributor
Contributor

this problem is solved by doing this

$ export VMWARE_USE_SHIPPED_GTK=yes

before starting vmware

0 Kudos
dkmaster
Contributor
Contributor

The version 3.3-pre11-3 of debian module-init-tools works fine for me (amd-64).

0 Kudos
Grogan
Enthusiast
Enthusiast

I got hit by this using module-init-tools 3.3-pre11 on a non debian system too. (32 bit kernel and distro). Thought I was doing a good thing by getting the latest module-init-tools (it's a "from scratch" system, so compiled from source, not a binary package from a distributor). So it's not specific to the debian packages.

I already had vmware configured for my 2.6.22-rc4 kernel at the time, so I didn't have a problem until I had to run vmware-config.pl again when I installed the next kernel.

Fortunately I had already seen threads about this problem here so it didn't take me long to remember.

I "downgraded" to the latest stable module-init-tools 3.2.2 which is evidently what I should have gotten in the first place.

0 Kudos