Bug 551294 - RN: vmware-config fails in 2.6.31 kernel
Summary: RN: vmware-config fails in 2.6.31 kernel
Status: RESOLVED FIXED
Alias: None
Product: openSUSE 11.2
Classification: openSUSE
Component: Documentation (show other bugs)
Version: RC 2
Hardware: 64bit openSUSE 11.2
: P5 - None : Normal (vote)
Target Milestone: Final
Assignee: Karl Eichwalder
QA Contact: Karl Eichwalder
URL:
Whiteboard: maint:released:11.2:30142
Keywords:
Depends on:
Blocks: 557762
  Show dependency treegraph
 
Reported: 2009-10-30 10:29 UTC by Don Hughes
Modified: 2010-02-16 20:37 UTC (History)
5 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
Source patch on vmware workstation (10.83 KB, patch)
2009-11-02 11:06 UTC, Dominique Leuenberger
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Don Hughes 2009-10-30 10:29:58 UTC
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729)

On a system upgraded from SuSE 11.1 to SuSEE 11.2 recompiling the drivers for an installed version of vmware Server 2.0.1 runing vmware-config.pl fails and you are unable to start the vmware server.  This is a known problem discussed on the vmware forums on kernels > 2.5.30.  None of their suggested fixes worked for me.  Although this is not a SuSE issue, since it could have serious impact on shops using SuSE as a virtualization base, you might mention it in the release notes.

I was able to get the vmware server to run by down-grading the kernel to 2.6.29 on the upgraded system.

Reproducible: Always

Steps to Reproduce:
1.upgrade
2.vmware will not start unless you re-run vmware-config.pl
3.vmware-config.pl fails during recompile of drivers
Comment 1 Forgotten User hF2Xo_CmFP 2009-10-31 13:49:13 UTC
Same problems here after update 11.1 to 11.2 RC2 x64.

Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-config1/vmmon-only'
make -C /lib/modules/2.6.31.5-0.1-default/build/include/.. SUBDIRS=$PWD
SRCROOT=$PWD/. modules
make[1]: Entering directory
`/usr/src/linux-2.6.31.5-0.1-obj/x86_64/default'
make -C ../../../linux-2.6.31.5-0.1
O=/usr/src/linux-2.6.31.5-0.1-obj/x86_64/default/. modules
CC [M] /tmp/vmware-config1/vmmon-only/linux/driver.o
In file included from /tmp/vmware-config1/vmmon-only/linux/driver.c:31:
/tmp/vmware-config1/vmmon-only/./include/compat_wait.h:78: error:
conflicting types for ‘poll_initwait’
/usr/src/linux-2.6.31.5-0.1/include/linux/poll.h:70: note: previous
declaration of ‘poll_initwait’ was here
In file included from /tmp/vmware-config1/vmmon-only/./include/vmware.h:38,
from /tmp/vmware-config1/vmmon-only/linux/driver.c:99:
/tmp/vmware-config1/vmmon-only/./include/vm_basic_types.h:108:7:
warning: "__FreeBSD__" is not defined
In file included from
/tmp/vmware-config1/vmmon-only/./include/vcpuset.h:103,
from /tmp/vmware-config1/vmmon-only/./include/modulecall.h:37,
from /tmp/vmware-config1/vmmon-only/./common/vmx86.h:33,
from /tmp/vmware-config1/vmmon-only/linux/driver.h:29,
from /tmp/vmware-config1/vmmon-only/linux/driver.c:101:
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:329:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:333:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:401:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:407:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:460:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:506:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:551:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:595:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:640:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:684:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:729:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:773:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:775:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:816:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:860:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:862:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:903:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:945:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:947:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:986:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1028:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1030:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1069:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1223:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1227:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1313:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1536:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1663:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_atomic.h:1796:7: warning:
"_MSC_VER" is not defined
In file included from
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86_64.h:39,
from /tmp/vmware-config1/vmmon-only/./include/vm_asm.h:41,
from /tmp/vmware-config1/vmmon-only/linux/driver.c:103:
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86.h:486:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86.h:779:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86.h:820:7: warning:
"_MSC_VER" is not defined
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86.h:922:7: warning:
"_MSC_VER" is not defined
In file included from /tmp/vmware-config1/vmmon-only/./include/vm_asm.h:41,
from /tmp/vmware-config1/vmmon-only/linux/driver.c:103:
/tmp/vmware-config1/vmmon-only/./include/vm_asm_x86_64.h:56:7: warning:
"_MSC_VER" is not defined
In file included from /tmp/vmware-config1/vmmon-only/linux/driver.c:119:
/tmp/vmware-config1/vmmon-only/./common/hostif.h:53:7: warning:
"WINNT_DDK" is not defined
/tmp/vmware-config1/vmmon-only/linux/driver.c: In function
‘LinuxDriverSyncCallOnEachCPU’:
/tmp/vmware-config1/vmmon-only/linux/driver.c:1423: error: too many
arguments to function ‘smp_call_function’
/tmp/vmware-config1/vmmon-only/linux/driver.c: In function
‘LinuxDriver_Ioctl’:
/tmp/vmware-config1/vmmon-only/linux/driver.c:1987: error: ‘struct
task_struct’ has no member named ‘euid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1987: error: ‘struct
task_struct’ has no member named ‘uid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1988: error: ‘struct
task_struct’ has no member named ‘fsuid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1988: error: ‘struct
task_struct’ has no member named ‘uid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1989: error: ‘struct
task_struct’ has no member named ‘egid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1989: error: ‘struct
task_struct’ has no member named ‘gid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1990: error: ‘struct
task_struct’ has no member named ‘fsgid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:1990: error: ‘struct
task_struct’ has no member named ‘gid’
/tmp/vmware-config1/vmmon-only/linux/driver.c:2007: error: too many
arguments to function ‘smp_call_function’
make[4]: *** [/tmp/vmware-config1/vmmon-only/linux/driver.o] Error 1
make[3]: *** [_module_/tmp/vmware-config1/vmmon-only] Error 2
make[2]: *** [sub-make] Error 2
make[1]: *** [all] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.31.5-0.1-obj/x86_64/default'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-config1/vmmon-only'
Unable to build the vmmon module.
Comment 2 Dominique Leuenberger 2009-11-02 11:06:26 UTC
Created attachment 325098 [details]
Source patch on vmware workstation

Certainly not compiz issue. At best I can imagine this to be a documentation issue.

For reference: I've been running vmware (6.5.x) on openSUSE Factory with this patch.


Together with the followin shell script, the building of the modules is rather simple (copy patch and shell script to /usr/lib/vmware/modules/source )

#!/bin/sh

/etc/init.d/vmware stop

# clean up all the existing build dirs...
find -maxdepth 1 -type d -name "??*" -exec rm -rf {} \;

#unpack the tarballs
for a in *.tar; do tar xf $a; done
patch -p1 < CP.patch

for a in $(find -maxdepth 1 -type d -name "vm*") ; do
  pushd $a
  make
  popd
done


pushd vsock-only
cp ../vmci-only/Module.symvers .
make
popd

test -d /lib/modules/$(uname -r)/misc || install -d /lib/modules/$(uname -r)/misc
find -name "*.ko" -exec install -t /lib/modules/$(uname -r)/misc {} \;
depmod -aq
/etc/init.d/vmware start
Comment 3 Don Hughes 2009-11-03 01:15:46 UTC
Dominique,

I tried to apply the patch that you provided to my system, and it failed to apply.

I am running VMware Server 2.0.1 build-156745
Comment 4 Karl Eichwalder 2009-11-05 09:26:32 UTC
I need more info, please.  How do we want to address this issue?  coolo, will you please assign the bug to the right person?
Comment 5 Forgotten User hF2Xo_CmFP 2009-11-06 12:19:12 UTC
(In reply to comment #4)
> I need more info, please.  How do we want to address this issue?  coolo, will
> you please assign the bug to the right person?


I will try to help you with more info.
Just tell me what you need....

Gerrit Jan
Comment 6 Stephan Kulow 2009-11-06 12:29:38 UTC
it's dominique's package afaik
Comment 7 Dominique Leuenberger 2009-11-06 12:38:29 UTC
only open-vm-tools is 'my' package.
vmware-config.pl is part of the binary distribution of the vmware products only.

We (openSUSE) ship 'only' open-vm-tools and the corresponding KMP (vmware-guest-kmp-*).

The main issue is that vmware server / workstation / player come with a script to build kernel modules, but they are outdated source codes. Unfortunately they are still not part of the kernel (long story).

Basically there is nothing we can change: vmware ships code that does not work on latest kernels (there are normally patches to be found in the VMWare forum for this issue.)

so basically there is not much we can do, except maybe a wiki page and possibly an addition to the release notes, pointing to said wiki page.

@coolo: a such I don't think I'm the right assignee for this ticket (It's not related / created issue by any openSUSE package).
Comment 8 Forgotten User hF2Xo_CmFP 2009-11-06 13:41:55 UTC
Thanks for the reply.
I think i will contact vmware about this....

GJ
Comment 9 Forgotten User hF2Xo_CmFP 2009-11-06 14:00:09 UTC
There is a lot about this on;

http://communities.vmware.com/thread/239129?tstart=0


So it is a vmware problem....
Comment 10 Don Hughes 2009-11-08 18:29:42 UTC
Although I would appreciate any assistance in getting this resolved, As I indicated in the original posting, I realize that this is a VMware issue, it is just that I think that there should be some indication in the release notes so that other VMware users don't have a bad upgrade experience and waste a lot of time.
Comment 11 Karl Eichwalder 2009-11-09 07:19:42 UTC
Thanks for the discussion.  If an entry in the release notes is wanted and necessary, please provide a draft version.
Comment 12 Don Hughes 2009-11-10 15:00:21 UTC
How about:

VMware Server v2 up through at least 2.0.2 build 203138 released 10/27/2009 only supports linux kernels up to 2.6.27 and vmware-config.pl fails on kernel 2.6.31 used by openSuSE 11.2.  For additional information see: http://www.vmware.com/support/pubs/server_pubs.html and http://communities.vmware.com/message/1327112#1327112
Comment 13 Dirk-Michael Brosig 2009-11-22 14:39:32 UTC
Newer kernels using a struct to access the user subroutines. That's not a SuSE-problem.

The simple solution to change the file source/vmnet-only/netif.c funktion 

VNetNetIfSetup

   static struct net_device_ops ndo_dev;

   ether_setup(dev); // turns on IFF_BROADCAST, IFF_MULTICAST

   ndo_dev.ndo_init = VNetNetifProbe;
   ndo_dev.ndo_open = VNetNetifOpen;
   ndo_dev.ndo_start_xmit = VNetNetifStartXmit;
   ndo_dev.ndo_stop = VNetNetifClose;
   ndo_dev.ndo_get_stats = VNetNetifGetStats;
   ndo_dev.ndo_set_mac_address = VNetNetifSetMAC;
   ndo_dev.ndo_set_multicast_list = VNetNetifSetMulticast;
   dev->netdev_ops=&ndo_dev;

#ifdef KERNEL_2_3_43
.
.

Dont forget to repack this changed file into vmnet.tar. You get a lot of warnings while compile, but it works for all my VM's.
Comment 14 Dominique Leuenberger 2009-11-23 20:55:37 UTC
There is nothing I can do. Karl is the best if we can manage to get anything in the release notes (a proposition is in comment #12)
Comment 15 Karl Eichwalder 2009-11-24 09:28:39 UTC
Thanks, fine.
Comment 16 Karl Eichwalder 2009-11-24 14:17:25 UTC
This is my proposal with XML markup:

  <!-- bnc#551294 -->
  <sect3 id="vmwareserver">
   <title>VMware Server v2</title>

   <para>VMware Server v2 up through at least 2.0.2 build 203138 released
2009-10-27 only supports Linux kernels up to 2.6.27 and
<command>vmware-config.pl</command> fails on kernel 2.6.31 used by openSuSE
11.2.  For additional information, see <ulink
url="http://www.vmware.com/support/pubs/server_pubs.html"/> and <ulink
url="http://communities.vmware.com/message/1327112#1327112"/>.
</para>
  </sect3>
Comment 17 Don Hughes 2009-12-06 15:29:56 UTC
I am closing this since it was reported mainly for informational purposes.
Comment 18 Swamp Workflow Management 2010-01-21 13:49:32 UTC
Update released for: desktop-translations, release-notes-openSUSE, translation-update, translation-update-cs, translation-update-da, translation-update-de, translation-update-es, translation-update-fi, translation-update-fr, translation-update-gl, translation-update-hr, translation-update-hu, translation-update-it, translation-update-ja, translation-update-ka, translation-update-km, translation-update-ko, translation-update-lt, translation-update-nb, translation-update-nl, translation-update-pa, translation-update-pl, translation-update-pt, translation-update-pt_BR, translation-update-ro, translation-update-ru, translation-update-sk, translation-update-uk, translation-update-wa, yast2-trans, yast2-trans-af, yast2-trans-am, yast2-trans-ar, yast2-trans-be, yast2-trans-bg, yast2-trans-bn, yast2-trans-bs, yast2-trans-ca, yast2-trans-cs, yast2-trans-cy, yast2-trans-da, yast2-trans-de, yast2-trans-el, yast2-trans-en_GB, yast2-trans-en_US, yast2-trans-es, yast2-trans-et, yast2-trans-fa, yast2-trans-fi, yast2-trans-fr, yast2-trans-gl, yast2-trans-gu, yast2-trans-he, yast2-trans-hi, yast2-trans-hr, yast2-trans-hu, yast2-trans-id, yast2-trans-it, yast2-trans-ja, yast2-trans-jv, yast2-trans-ka, yast2-trans-km, yast2-trans-ko, yast2-trans-ku, yast2-trans-lo, yast2-trans-lt, yast2-trans-mk, yast2-trans-mr, yast2-trans-ms, yast2-trans-my, yast2-trans-nb, yast2-trans-nl, yast2-trans-pa, yast2-trans-pl, yast2-trans-pt, yast2-trans-pt_BR, yast2-trans-ro, yast2-trans-ru, yast2-trans-si, yast2-trans-sk, yast2-trans-sl, yast2-trans-sr, yast2-trans-sv, yast2-trans-sw, yast2-trans-ta, yast2-trans-tg, yast2-trans-th, yast2-trans-tk, yast2-trans-tr, yast2-trans-uk, yast2-trans-vi, yast2-trans-wa, yast2-trans-xh, yast2-trans-zh_CN, yast2-trans-zh_TW, yast2-trans-zu
Products:
openSUSE 11.2 (i586)
Comment 19 Forgotten User taWGjDL4xO 2010-02-16 20:37:51 UTC
FYI: If you have 64 bit openSUSE, there's a patch here
http://opensuse.swerdna.org/susevmwareserver.html