Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 37774 - gentoo-sources-2.4.22-r4 makes vmware a zombie
Summary: gentoo-sources-2.4.22-r4 makes vmware a zombie
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High blocker (vote)
Assignee: Chris Gianelloni (RETIRED)
URL:
Whiteboard:
Keywords:
: 37909 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-01-10 02:49 UTC by Carsten Lohrke (RETIRED)
Modified: 2004-03-20 09:37 UTC (History)
9 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carsten Lohrke (RETIRED) gentoo-dev 2004-01-10 02:49:39 UTC
http://forums.gentoo.org/viewtopic.php?p=766194#766194

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Carsten Lohrke (RETIRED) gentoo-dev 2004-01-10 06:46:04 UTC
from dmesg:

/dev/vmnet: open called by PID 25408 (vmware-vmx)
bridge-eth0: set IFF_PROMISC
/dev/vmnet: port on hub 0 successfully opened
sr0: CDROM (ioctl) reports ILLEGAL REQUEST.
Unable to handle kernel NULL pointer dereference at virtual address 000005e8
 printing eip:
f0dac67b
*pde = 00000000
Oops: 0002
CPU:    0
EIP:    0010:[<f0dac67b>]    Tainted: PF
EFLAGS: 00013246
eax: 00000000   ebx: 00000001   ecx: 00000000   edx: 00000000
esi: 00000000   edi: c8a62e00   ebp: d8e63e70   esp: d8e63e58
ds: 0018   es: 0018   ss: 0018
Process vmware-vmx (pid: 1543, stackpage=d8e63000)
Stack: c04121ad d8c37f00 c015e3e8 d86d6ac0 d82ae7c0 ffffffea d8e63f90 f0daa6d7
       c8a62e00 00000000 c8a62e00 c8a62e00 d8c3e0c0 00203246 00000000 f0db42d7
       d8c3e0c0 00000000 00203202 f0db42b8 d8c3e180 d8c3e180 00203286 d8c3e180
Call Trace:    [<c04121ad>] [<f0daa6d7>] [<f0db42d7>] [<f0db42b8>] [<c040da97>]
  [<c0419ce6>] [<c034567a>] [<c0411f77>] [<c01d412f>] [<c01d6933>] [<c01d0dd8>]
  [<c021d54f>] [<c01d247b>]

Code: 89 9e e8 05 00 00 50 50 8b 45 0c 50 57 e8 33 0d 00 00 83 c4
Comment 2 Tim Yamin (RETIRED) gentoo-dev 2004-01-10 15:18:33 UTC
Carlo: Can you please run that OOPS through ksymoops - emerge ksymoops and do "ksymoops < file_with_OOPS > file_out", where file_with_OOPS contains the stack trace and file_out contains the resulting data from ksymoops? Please run this on the kernel on which you experience problems.
Comment 3 Carsten Lohrke (RETIRED) gentoo-dev 2004-01-11 05:17:05 UTC
Did it. Unfortunately nothing (beside the usual options warning).
Comment 4 Chris Gianelloni (RETIRED) gentoo-dev 2004-01-12 05:31:01 UTC
I'm just trying to figure out how this is a VMWare problem.  The problem does not occur under gentoo-sources-2.4.22-r2, which means it is something that was changed in the kernel which is causing the problem.

Can someone on the kernel team give me some direction on this?
Comment 5 Chris Gianelloni (RETIRED) gentoo-dev 2004-01-12 05:31:47 UTC
*** Bug 37909 has been marked as a duplicate of this bug. ***
Comment 6 Bálint Balogh 2004-01-12 05:43:29 UTC
I guess, I found what causes this problem.

The poll_initwait interface has been changed in the new kernel, but VMware still thinks it should use the old interface.

I made the following changes in /opt/vmware/lib/modules/source/vmmon.tar in vmmon-only/include/compat_wait.h:

I replaced line #38 with the following two lines:
(defined(WE_ARE_WOLK) && LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 20)) || \
LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4 ,22)

Original line #38:
(defined(WE_ARE_WOLK) && LINUX_VERSION_CODE >= KERNEL_VERSION(2, 4, 20))

While these modifications may not be correct in all possible configurations, it seems to work for me (note: I haven't done any extensive testing yet).
Comment 7 Rene Androsch 2004-01-12 06:37:54 UTC
Okay at least it seems to go further than the last time! Thanks for the hint!
Comment 8 Rene Androsch 2004-01-16 14:01:04 UTC
Okay, I'm running gentoo-sources 2.4.22-r4 now for 4 days, with the little modification posted above. Windows XP Pro (university license) works flawless. To my suprise, winxp boots in about 40 seconds in VMware, but needs about 80 seconds on the same hardware, non emulated :)

So I think, it would be best to update the VMware-workstation ebuild and close this bug as fixed!
Comment 9 Ant 2004-01-21 02:59:32 UTC
Additional Information from vmware-config.pl

`/tmp/vmware-config2/vmmon-only/driver-2.4.22-r5-2004011913'
../linux/hostif.c: In function `HostIF_SemaphoreWait': 
../linux/hostif.c:1818: warning: passing arg 1 of `poll_initwait_Rsmp_ce49a19e' from incompatible pointer type
../linux/hostif.c:1835: warning: passing arg 1 of `poll_freewait_Rsmp_9ce323ee' from incompatible pointer type 
Comment 10 HIROSE Masaaki 2004-01-24 01:29:43 UTC
vmmon patch (comment #6)  with gentoo-sources-2.4.22-r4 is work fine.
but with gentoo-sources-2.4.22-r5, kernel panic and freeze.

Jan 24 16:56:17 [kernel] kernel BUG at filemap.c:81!
Jan 24 16:56:17 [kernel] Unable to handle kernel paging request at virtual addre
ss 17b970b4
Jan 24 16:56:37 [kernel] Unable to handle kernel NULL pointer dereference at vir
tual address 00000000
Jan 24 16:58:35 [kernel] Unable to handle kernel NULL pointer dereference at vir
tual address 00000009
Comment 11 witr 2004-02-22 05:52:24 UTC
...Um.  It has been almost a month.  Any update?  I still can't use VmWare with a 2.4.22_r5 kernel as noted above...
Comment 12 Rene Androsch 2004-02-22 09:12:02 UTC
I was using it with gentoo-sources-2.4.22-r5 now several days -> worked. I still have to try with -r7.
BTW: I'm using network connections within VMware and my USB mouse (but emulated as PS/2 mouse).
My logitech IO Pen is not recognized :( WinXP in VMware doesn't even show an unsupported device :(
Comment 13 HIROSE Masaaki 2004-02-22 19:33:03 UTC
I'm using vmware-workstation  4.0.5.6030-r1.
vmware don't work with gentoo-sources-2.4.22-r7, but work fine with gs-sources-2.4.25_pre7-r2.

I suppose epoll patch is cause of this problem.

Comment 14 Chris Gianelloni (RETIRED) gentoo-dev 2004-02-26 10:10:37 UTC
Hirose: care to elaborate?
Comment 15 HIROSE Masaaki 2004-02-28 00:18:12 UTC
I tested vmware-workstation-4.0.5.6030-r1 with some sys-kernel/*.

OK
  o gs-sources-2.4.25_pre7-r2
  o vanilla-sources-2.4.25
  o gentoo-sources-2.4.22-r2
  o gentoo-sources-2.4.22-r4 (patched comment #6)

NG
  o gentoo-sources-2.4.22-r7
  o gentoo-sources-2.4.22-r5

with gentoo-sources-2.4.22-r{5,7},
if start guest OS (Windows 2000), then kernel oops occur and vmware freeze.

1. strace when freeze is as follows.

(snip)
gettimeofday({1077951059, 681523}, NULL) = 0
ioctl(32, FIONREAD, [0])                = 0
poll( <unfinished ...>
^^^^

2. difference between gentoo-sources-2.4.22-r2 and 2.4.22-r4 which seems to
be relat3ed is epoll patch in
/usr/src/linux-2.4.22-gentoo-r{3,4}/patches.txt.

For two reasons, I suppose epoll patch is cause of this problem.

--- 
Unable to handle kernel NULL pointer dereference at virtual address 000005e8
 printing eip:
f8e1f6b2
*pde = 00000000
Oops: 0002
CPU:    0
EIP:    0010:[<f8e1f6b2>]    Tainted: PF
EFLAGS: 00010246
eax: 00000000   ebx: 00000001   ecx: 00000000   edx: c0000000
esi: 00000000   edi: c283ba00   ebp: c40b1e70   esp: c40b1e58
ds: 0018   es: 0018   ss: 0018
Process vmware-vmx (pid: 3119, stackpage=c40b1000)
Stack: 00000000 00003286 42a26000 c2486f80 c33c1500 ffffffea c40b1f90 f8e1d6cf 
       c283ba00 00000000 c283ba00 c283ba00 c40b0000 00003ac1 00003ac0 00003282 
       00000000 c010360c c010360c c01037a8 00000001 00003202 c01f661f c01e9f95 
Call Trace:    [<f8e1d6cf>] [<c01f661f>] [<c01e9f95>] [<c02155db>] [<c01f6842>]
  [<c023166f>] [<c03eef1c>] [<c01eac30>] [<c01eb123>] [<c020ee2a>] [<c01c5cff>]

Code: 89 9e e8 05 00 00 50 50 8b 45 0c 50 57 e8 2c 0d 00 00 83 c4 
 

Comment 16 Michael Stahl 2004-02-28 05:13:20 UTC
This bug persists with 2.4.22-gentoo-r7. It is not possible to even compile the vmware stuff w/o warning (which, in fact, seem to be errors preventing vmware to work properly);

# vmware-config.pl
Making sure VMware Workstation's services are stopped.

Stopping VMware services:
   Virtual machine monitor                                             done
   Bridged networking on /dev/vmnet0                                   done
   DHCP server on /dev/vmnet8                                          done
   NAT networking on /dev/vmnet8                                       done
   Host-only networking on /dev/vmnet8                                 done
   Virtual ethernet                                                    done

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

None of VMware Workstation's pre-built vmmon modules 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] y

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? [/lib/modules/2.4.22-gentoo-r7/build/include]

Extracting the sources of the vmmon module.

Building the vmmon module.

make: Entering directory `/tmp/vmware-config0/vmmon-only'
make[1]: Entering directory `/tmp/vmware-config0/vmmon-only'
make[2]: Entering directory `/tmp/vmware-config0/vmmon-only/driver-2.4.22-gentoo-r7'
make[2]: Leaving directory `/tmp/vmware-config0/vmmon-only/driver-2.4.22-gentoo-r7'
make[2]: Entering directory `/tmp/vmware-config0/vmmon-only/driver-2.4.22-gentoo-r7'
../include/vm_asm.h: In function `Div643264':
../include/vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
../linux/hostif.c: In function `HostIF_SemaphoreWait':
../linux/hostif.c:1818: warning: passing arg 1 of `poll_initwait_R7306442a' from incompatible pointer type
../linux/hostif.c:1835: warning: passing arg 1 of `poll_freewait_Re4108fbc' from incompatible pointer type
../include/vm_asm.h: In function `Div643264':
../include/vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
../include/vm_asm.h: In function `Vmx86_GetkHzEstimate':
../include/vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
../include/vm_asm.h: In function `Div643264':
../include/vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
../include/vm_asm.h: In function `Div643264':
../include/vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
make[2]: Leaving directory `/tmp/vmware-config0/vmmon-only/driver-2.4.22-gentoo-r7'
make[1]: Leaving directory `/tmp/vmware-config0/vmmon-only'
make: Leaving directory `/tmp/vmware-config0/vmmon-only'
The module loads perfectly in the running kernel.

Extracting the sources of the vmnet module.

Building the vmnet module.

make: Entering directory `/tmp/vmware-config0/vmnet-only'
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
vm_asm.h: In function `Div643264':
vm_asm.h:1095: warning: use of memory input without lvalue in asm operand 4 is deprecated
make: Leaving directory `/tmp/vmware-config0/vmnet-only'
The module loads perfectly in the running kernel.

You have already setup networking.

Would you like to skip networking setup and keep your old settings as they are?
(yes/no) [yes]
Comment 17 Chris Gianelloni (RETIRED) gentoo-dev 2004-02-28 08:49:20 UTC
Man... you guys rock on the verbosity... thank you...

Unfortunately, this is getting a bit beyond my scope of expertise... so I'm going to start bugging the x86-kernel guys and see if they can help.... stay tuned for the next exciting episode...

same bat time...

same bat channel...
Comment 18 Chris Gianelloni (RETIRED) gentoo-dev 2004-03-18 16:34:19 UTC
What if you use the new 4.5.1 ebuild?

Same problems?  I know it fixes quite a few problems with 2.6 kernels.
Comment 19 Carsten Lohrke (RETIRED) gentoo-dev 2004-03-19 12:20:15 UTC
Chris: The fix in comment #6 seem to work for a lot of people (including myself, gentoo-sources-2.4.22-r7) and I saw no negative report in forums.g.o. Why not just applying the changes? Personally I don't tend to switch to vmware 4.5.1 yet.
Comment 20 Chris Gianelloni (RETIRED) gentoo-dev 2004-03-19 12:40:22 UTC
I was mostly asking since the 4.5.1 ebuild is going to be marked stable soon and 4.0.x will be removed.  They use the same licenses, so there's no need to keep the older version around, especially if the newer version fixes many of the problems without requiring patching.
Comment 21 Michael Stahl 2004-03-20 03:09:24 UTC
This did it for me, thanks for the tip. The 4.5.1 ebuild works flawlessly under 2.4.22-gentoo-r7.
Comment 22 Chris Gianelloni (RETIRED) gentoo-dev 2004-03-20 09:37:55 UTC
I'm going to resolve this bug and mark the new vmware version as stable.