Kernel – 4.15-rc1 is Out – Breaks VMware and NVIDIA…
Kernel 4.15-rc1 has been released, and brief details are here: http://lkml.iu.edu/hypermail/linux/kernel/1711.3/00971.html
With VMware 14.0.0 – plus the 4.14 vmmon patch – vmmon breaks again:
........................... /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c: In function ‘LinuxDriverInitTSCkHz’: /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c:254:22: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] tscTimer.function = LinuxDriverEstimateTSCkHzDeferred; ^ /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c:256:12: error: ‘struct timer_list’ has no member named ‘data’ tscTimer.data = 0; ^ /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c: In function ‘init_module’: /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c:338:4: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration] init_timer(&tscTimer); ^~~~~~~~~~ init_timers At top level: /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.c:981:1: warning: always_inline function might not be inlinable [-Wattributes] LinuxDriverSyncReadTSCs(uint64 *delta) // OUT: TSC max - TSC min ^~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors make[2]: *** [scripts/Makefile.build:310: /tmp/modconfig-hOVOTM/vmmon-only/linux/driver.o] Error 1 make[2]: *** Waiting for unfinished jobs.... /tmp/modconfig-hOVOTM/vmmon-only/linux/hostif.c: In function ‘HostIF_InitUptime’: /tmp/modconfig-hOVOTM/vmmon-only/linux/hostif.c:1779:4: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration] init_timer(&uptimeState.timer); ^~~~~~~~~~ init_timers /tmp/modconfig-hOVOTM/vmmon-only/linux/hostif.c:1780:31: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] uptimeState.timer.function = HostIFUptimeResyncMono; ................................
NVIDIA 387.34 also fails to compile:
............. CONFTEST: is_export_symbol_gpl_refcount_dec_and_test CC [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv-gpu-numa.o CC [M] /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.o /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.c: In function ‘nv_start_rc_timer’: /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.c:3389:5: error: implicit declaration of function ‘init_timer’; did you mean ‘init_timers’? [-Werror=implicit-function-declaration] init_timer(&nvl->rc_timer); ^~~~~~~~~~ init_timers /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.c:3390:28: error: assignment from incompatible pointer type [-Werror=incompatible-pointer-types] nvl->rc_timer.function = nvidia_rc_timer; ^ /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.c:3391:18: error: ‘struct timer_list’ has no member named ‘data’ nvl->rc_timer.data = (unsigned long) nvl; ^ cc1: some warnings being treated as errors make[3]: *** [/usr/src/linux-4.15-rc1/scripts/Makefile.build:311: /home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel/nvidia/nv.o] Error 1 make[2]: *** [/usr/src/linux-4.15-rc1/Makefile:1502: _module_/home/rgadsdon/kernel/NVIDIA-Linux-x86_64-387.34/kernel] Error 2 make[2]: Leaving directory '/usr/src/linux-4.15-rc1' make[1]: *** [Makefile:146: sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-4.15-rc1' make: *** [Makefile:84: modules] Error 2
More research needed, but no fixes found – so far..
Robert Gadsdon. November 26, 2017.
Could you please test this patch?
https://github.com/mkubecek/vmware-host-modules/commit/562121d7bc06
I don’t have time to reboot to 4.15-rc1 and test it right now.
Quick test with 4.15-rc1 – vmmon now compiles OK, and loads/runs – briefly tested with Win7 Guest..
RG.