[SOLVED] Trouble building VMware kernel module 8.0.3 on Slackware64-current with Linux 3.3.6
SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Trouble building VMware kernel module 8.0.3 on Slackware64-current with Linux 3.3.6
Hello Guys,
I have trouble building the VMware 8.0.3 kernel module (the vmmon one) in my Slackware64-current setup. I've built and install my custom kernel (linux 3.3.6 with pf patch) and I've also patched the VMware module source using the patch from here: http://weltall.heliohost.org
All other modules can be built successfully, except the vmmon one which always threw me errors during compilation. All other modules were successfully built when I issue the command:
Here's the error when I tried to build the vmmon module:
Code:
dwi@pavilion:source $ sudo vmware-modconfig --console --install-all
Password:
Stopping VMware services:
VMware Authentication Daemon [ OK ]
VM communication interface socket family [ OK ]
Virtual machine communication interface [ OK ]
Virtual machine monitor [ OK ]
Blocking file system [ OK ]
Using 2.6.x kernel build system.
make: Entering directory `/tmp/vmware-root/modules/vmmon-only'
make -C /lib/modules/3.3.6-pf/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
MODULEBUILDDIR= modules
make[1]: Entering directory `/usr/src/linux-3.3.6-pf'
CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driverLog.o
CC [M] /tmp/vmware-root/modules/vmmon-only/linux/driver.o
CC [M] /tmp/vmware-root/modules/vmmon-only/linux/hostif.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/memtrack.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/apic.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/vmx86.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/cpuid.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/task.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/comport.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/hashFunc.o
CC [M] /tmp/vmware-root/modules/vmmon-only/common/phystrack.o
CC [M] /tmp/vmware-root/modules/vmmon-only/vmcore/moduleloop.o
/tmp/vmware-root/modules/vmmon-only/linux/hostif.c: In function ‘HostIF_CallOnEachCPU’:
/tmp/vmware-root/modules/vmmon-only/linux/hostif.c:2823:4: error: too many arguments to function ‘smp_call_function’
In file included from include/linux/topology.h:33:0,
from include/linux/gfp.h:7,
from include/linux/mm.h:8,
from /tmp/vmware-root/modules/vmmon-only/./include/compat_page.h:23,
from /tmp/vmware-root/modules/vmmon-only/linux/hostif.c:32:
include/linux/smp.h:74:5: note: declared here
/tmp/vmware-root/modules/vmmon-only/linux/hostif.c: In function ‘HostIF_BrokenCPUHelper’:
/tmp/vmware-root/modules/vmmon-only/linux/hostif.c:2860:4: error: too many arguments to function ‘smp_call_function’
In file included from include/linux/topology.h:33:0,
from include/linux/gfp.h:7,
from include/linux/mm.h:8,
from /tmp/vmware-root/modules/vmmon-only/./include/compat_page.h:23,
from /tmp/vmware-root/modules/vmmon-only/linux/hostif.c:32:
include/linux/smp.h:74:5: note: declared here
/tmp/vmware-root/modules/vmmon-only/linux/driver.c: In function ‘LinuxDriverSyncCallOnEachCPU’:
/tmp/vmware-root/modules/vmmon-only/linux/driver.c:1319:4: error: too many arguments to function ‘smp_call_function’
In file included from include/linux/sched.h:78:0,
from include/linux/freezer.h:6,
from include/linux/fs.h:400,
from include/linux/highmem.h:4,
from /tmp/vmware-root/modules/vmmon-only/linux/driver.c:25:
include/linux/smp.h:74:5: note: declared here
make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/hostif.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/driver.o] Error 1
make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Error 2
make[1]: Leaving directory `/usr/src/linux-3.3.6-pf'
make: *** [vmmon.ko] Error 2
make: Leaving directory `/tmp/vmware-root/modules/vmmon-only'
Unable to install vmmon
dwi@pavilion:source $
I even switch to my other machine (Slackware64-current, stock kernel 3.2.13) and still get the same error. Tried to change my current kernel with Slackware64-current stock and it does not help either, I still got the same errors...
The patch I mentioned above does not touch the vmmon at all though, maybe the vmmon source needs to be patched as well? Or can I run vmware without this module, as the other modules built flawlessly.
Tried the patch on your blog and still got the same error, the vmmon module won't build (your patch is only for the vmnet source). I've spent some times googling and can't find a case similar to mine. I had this problem on my laptop and my desktop computer.
Frankly I'm confused now on what may be causing this, even reverting to stock kernel packages does not help. What I mean stock is every kernel packages is vanilla from Slackware64-current, the vmmon module still won't compile.
I've tried your patch, still the same errors. It's the vmmon module that won't compile, and from google search result I haven't seen any patch regarding the vmmon module for this vmware version.
Tried the patch again on a different computer (running Slackware64-current with stock kernel) and still same vmmon compile error.
I'm beginning to think that VMware won't play nice with Slackware, is this patch working fine in your system? Please share your configuration (Slackware version / kernel version)?
Update
This has giving me a headache all day long and the culprit is just because VMware modules source won't compile with -fPIC compiler flags I always have this line inside a script named slackbuild.sh in my /etc/profile.d directory:
Good to know that it's working since many people have reported that the patch is working on their systems
It's also working fine on my system of course because i tested it first before posting it to my blog
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.