VMware Communities
Jeff_Chua
Contributor
Contributor
Jump to solution

Vmware 9.0.x on Linux-3.10.0 patches?

Is there a patch for running vmware 9.0.1 or 9.0.2 on Linux-3.10.0-rc1 or Linux-3.9.0 (after May 02). Git pull after May 02 changes the procfs interface and vmnet no longer compiles.

Any help or pointer would be appreciated.

Thanks,

Jeff

1 Solution

Accepted Solutions
damoiselle_111
Enthusiast
Enthusiast
Jump to solution

16 Replies
damoiselle_111
Enthusiast
Enthusiast
Jump to solution

Here

Jeff_Chua
Contributor
Contributor
Jump to solution

Amazing!!! Worked on linux-3.10.0-rc1 !!! Thank you so much!!!

Jeff.

Reply
0 Kudos
mfelker
Expert
Expert
Jump to solution

I'm just wondering which OS you are running on kernel 3.10?

Thanks

Reply
0 Kudos
Jeff_Chua
Contributor
Contributor
Jump to solution

It's vanilla linux-3.10.0-rc1 git pulled from Linus's tree. And the patch damoiselle_111 created really worked and it's really a lot of effort he put in there to make it work!

Jeff

Reply
0 Kudos
mfelker
Expert
Expert
Jump to solution

OK.  I can pull down 3.10-rc1 from the Ubuntu Kernel archives (http://kernel.ubuntu.com/~kernel-ppa/mainline/)- pre-compiled since I don't care to roll my own kernel - especially if the patch takes a bit of work as you say.  This will be the the first kernel for Ubuntu 13.10 (Saucy) but the GUI  is definitely not ready for prime time and since I have a RAID 5 configuration I can only use Ubuntu 12.04 Alternate and upgrade from there (not difficult but time-consuming).

Why the Ubuntu  and Fedora devs want to make installation on all but the simplest setups almost impossible  is beyond me. Even the Ubuntu Servers partitioners  for 12.10 and 13.04 just don't hack it (freeze on partitioner) at least on my system.

----------------------------------------------------------------------------------------------------------------------------------------

Unfortunately NVIDIA.ko  failled to build. I don't think installing a newer version of the nvidia drivers because, considering its nvidia, it might break my system  I shall  wait. 

Reply
0 Kudos
Jeff_Chua
Contributor
Contributor
Jump to solution

> OK.  I can pull down 3.10-rc1 from the Ubuntu Kernel archives (http://kernel.ubuntu.com/~kernel-ppa/mainline/)- pre-compiled since I don't care to roll my own kernel - especially if the patch takes a bit of work as you say. 


If you're going to run Vmware, you WILL need the patch to make vmnet module compile on 3.10-rc1. I doubt the precompiled kernel comes with precompiled-vmware modules.


Jeff


Reply
0 Kudos
rgadsdon
Enthusiast
Enthusiast
Jump to solution

For Kernel 3.10-rc4, the vmnet patch works just fine - many thanks, @damoiselle_111

But..  vmblock fails to compile (gcc 4.8.0, Fedora 19):

...........................

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c: In function ‘SetupProcDevice’:

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:211:4: error: implicit declaration of function ‘create_proc_entry’ [-Werror=implicit-function-declaration]

    controlProcEntry = create_proc_entry(VMBLOCK_CONTROL_DEVNAME,

    ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:211:21: warning: assignment makes pointer from integer without a cast [enabled by default]

    controlProcEntry = create_proc_entry(VMBLOCK_CONTROL_DEVNAME,

                     ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:221:20: error: dereferencing pointer to incomplete type

    controlProcEntry->proc_fops = &ControlFileOps;

                    ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c: In function ‘ExecuteBlockOp’:

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:285:9: warning: assignment from incompatible pointer type [enabled by default]

    name = getname(buf);

         ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:296:4: warning: passing argument 1 of ‘putname’ from incompatible pointer type [enabled by default]

    putname(name);

    ^

In file included from include/linux/proc_fs.h:8:0,

                 from /tmp/modconfig-CfpQ4q/vmblock-only/linux/control.c:28:

include/linux/fs.h:2042:13: note: expected ‘struct filename *’ but argument is of type ‘char *’

extern void putname(struct filename *name);

             ^

cc1: some warnings being treated as errors

make[2]: *** [/tmp/modconfig-CfpQ4q/vmblock-only/linux/control.o] Error 1

make[2]: *** Waiting for unfinished jobs....

/tmp/modconfig-CfpQ4q/vmblock-only/linux/dentry.c:38:4: warning: initialization from incompatible pointer type [enabled by default]

    .d_revalidate = DentryOpRevalidate,

    ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/dentry.c:38:4: warning: (near initialization for ‘LinkDentryOps.d_revalidate’) [enabled by default]

/tmp/modconfig-CfpQ4q/vmblock-only/linux/dentry.c: In function ‘DentryOpRevalidate’:

/tmp/modconfig-CfpQ4q/vmblock-only/linux/dentry.c:104:7: warning: passing argument 2 of ‘actualDentry->d_op->d_revalidate’ makes integer from pointer without a cast [enabled by default]

       return actualDentry->d_op->d_revalidate(actualDentry, nd);

       ^

/tmp/modconfig-CfpQ4q/vmblock-only/linux/dentry.c:104:7: note: expected ‘unsigned int’ but argument is of type ‘struct nameidata *’

make[1]: *** [_module_/tmp/modconfig-CfpQ4q/vmblock-only] Error 2

make[1]: Leaving directory `/usr/src/linux-3.10-rc4'

make: *** [vmblock.ko] Error 2

make: Leaving directory `/tmp/modconfig-CfpQ4q/vmblock-only'

............................

Robert Gadsdon

rglinuxtech.com

Reply
0 Kudos
Jeff_Chua
Contributor
Contributor
Jump to solution

For Kernel 3.10-rc4, the vmnet patch works just fine - many thanks, @damoiselle_111

But.. vmblock fails to compile (gcc 4.8.0, Fedora 19):

I'm not using vmblock, so skipped that compilation.

Thanks,

Jeff

Reply
0 Kudos
mfelker
Expert
Expert
Jump to solution

Hi Jeff!

    How would one apply your patch?  I am going to see if I can  install WS TP on an Ubuntu 13.10 host with kernel 3.10.

TIA

Reply
0 Kudos
Jeff_Chua
Contributor
Contributor
Jump to solution

> How would one apply your patch?  I am going to see if I can  install WS TP on an Ubuntu 13.10 host with kernel 3.10.

# tar xf /usr/lib/vmware/modules/source/vmnet.tar

# cd vmnet-only

# patch -p1 < procfs.patch

# make

# cp vmnet.ko /lib/modules/`uname -r`/extra

Jeff

Reply
0 Kudos
Poloisfej
Contributor
Contributor
Jump to solution

The patch for vmblock was apparently pretty simple: *nix-y: vmblock patch for linux 3.10 (vmware)

But @Jeff Chua, just to clarify, did you skip vmblock with VMBLOCK_CONFED = "no" in /etc/vmware/config? "vmware-modconfig --console" doesn't seem to respect that value and makes VMware try to build that nonetheless.

Reply
0 Kudos
mfelker
Expert
Expert
Jump to solution

This question has been answered but you might want to look at https://wiki.archlinux.org/index.php/VMware.

This is a clearer approach IMHO and worked as well with WS 10 (Tech Preview) running on Ubuntu 13.10 with the 3.10 kernel.

Cheers

Reply
0 Kudos
cosmo0920
Contributor
Contributor
Jump to solution

Good! Worked on vanilla linux-3.10.1 stable. Thank you so much.

Reply
0 Kudos
yvandan
Contributor
Contributor
Jump to solution

when i did "#make", it happened

/usr/lib/vmware/modules/source/vmnet-only/vnetUserListener.c: At top level:

/usr/lib/vmware/modules/source/vmnet-only/vnetUserListener.c:40:26: fatal error: compat_sched.h: 没有那个文件或目录

#include "compat_sched.h"

                          ^

  1. compilation terminated.

can someone gave me a  help?

Reply
0 Kudos
mmmm90
Contributor
Contributor
Jump to solution

hi all,

put together some old and new stuff, this worked for me well:

https://gist.github.com/mnmnm/6387478

Reply
0 Kudos
CalvinBlueFish
Contributor
Contributor
Jump to solution

is it still useful for the kernel 3.11.3-201.fc19.x86_64? and how to use it?

Reply
0 Kudos