3.10-rc2 – No Go for VMware and NVIDIA…
Just installed kernel 3.10-rc2, and VMware and NVIDIA fail to compile:
VMware:
……………….
/tmp/modconfig-i0TsV7/vmnet-only/hub.c: In function ‘VNetHubAlloc’:
/tmp/modconfig-i0TsV7/vmnet-only/hub.c:366:28: error: dereferencing pointer to incomplete type
/tmp/modconfig-i0TsV7/vmnet-only/hub.c:367:28: error: dereferencing pointer to incomplete type
make[2]: *** [/tmp/modconfig-i0TsV7/vmnet-only/hub.o] Error 1
make[2]: *** Waiting for unfinished jobs….
make[1]: *** [_module_/tmp/modconfig-i0TsV7/vmnet-only] Error 2
make[1]: Leaving directory `/usr/src/linux-3.10-rc2′
make: *** [vmnet.ko] Error 2
……………..
CC [M] /tmp/modconfig-i0TsV7/vmblock-only/linux/module.o
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c: In function ‘SetupProcDevice’:
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:211:4: error: implicit declaration of function ‘create_proc_entry’ [-Werror=implicit-function-declaration]
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:211:21: warning: assignment makes pointer from integer without a cast [enabled by default]
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:221:20: error: dereferencing pointer to incomplete type
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c: In function ‘ExecuteBlockOp’:
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:285:9: warning: assignment from incompatible pointer type [enabled by default]
/tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:296:4: warning: passing argument 1 of ‘putname’ from incompatible pointer type [enabled by default]
In file included from include/linux/proc_fs.h:8:0,
from /tmp/modconfig-i0TsV7/vmblock-only/linux/control.c:28:
include/linux/fs.h:2042:13: note: expected ‘struct filename *’ but argument is of type ‘char *’
cc1: some warnings being treated as errors
make[2]: *** [/tmp/modconfig-i0TsV7/vmblock-only/linux/control.o] Error 1
make[2]: *** Waiting for unfinished jobs….
make[1]: *** [_module_/tmp/modconfig-i0TsV7/vmblock-only] Error 2
make[1]: Leaving directory `/usr/src/linux-3.10-rc2′
make: *** [vmblock.ko] Error 2
NVIDIA 310.51:
NVIDIA-Linux-x86_64-310.51/kernel/nv-i2c.c: In function ‘nv_i2c_del_adapter’:
/home/rgadsdon/NVIDIA-Linux-x86_64-310.51/kernel/nv-i2c.c:327:14: error: void value not ignored as it ought to be
make[4]: *** [/home/rgadsdon/NVIDIA-Linux-x86_64-310.51/kernel/nv-i2c.o] Error 1
make[3]: *** [_module_/home/rgadsdon/NVIDIA-Linux-x86_64-310.51/kernel] Error 2
make[2]: *** [sub-make] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
NVIDIA 319.17:
/home/rgadsdon/NVIDIA-Linux-x86_64-319.17/kernel/nv-i2c.c:327:14: error: void value not ignored as it ought to be
make[4]: *** [/home/rgadsdon/NVIDIA-Linux-x86_64-319.17/kernel/nv-i2c.o] Error 1
make[3]: *** [_module_/home/rgadsdon/NVIDIA-Linux-x86_64-319.17/kernel] Error 2
make[2]: *** [sub-make] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
The NVIDIA errors would appear to be the same for both the ‘released’ and ‘beta’ drivers..
VMware – partial – fix:
There is a patch for vmnet (only) with 3.10-rc1 in this thread:http://communities.vmware.com/thread/446113
– and it works, for vmnet, but with 3.10-rc2 vmblock also fails to compile..
More investigation to follow!
Robert Gadsdon. May 20, 2013..
Hi there,
in this thread there is a patch for the NVIDIA driver:
https://devtalk.nvidia.com/default/topic/543728/linux/building-nvidia-driver-on-kernel-3-9-0/2/
Look in answer #17.
The patched NVIDIA driver 319.17 compiles and runs under 3.10-rc2.
Best
Walter
Hi Walter,
Many thanks for the link.. I’ll try the patch out, and I think it should work with version 310.51 as well, as the error was similar..
Best regards,
Robert.
I can confirm the patch works!
Hi Mal,
Thanks for that info.. I hadn’t gotten round to testing it myself – yet!
Best regards,
Robert.
Here is a working patch for vmblock on kernel 3.10:
http://mysticalzero.blogspot.com/2013/07/vmblock-patch-for-linux-310-vmware.html
@maz-1 Thank you..! I cut/pasted the patch text, and applied it manually to control.c, and now vmware / vmblock compiles OK..
Best regards,
Robert Gadsdon