VMware Communities
rgadsdon
Enthusiast
Enthusiast

Linux Host: Kernel 4.12 Breaks vmmon..

vmnet (from VMware 12.5.6) compiles OK with Kernel 4.12-rc2, but vmmon fails:

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

/usr/lib/vmware/modules/source/vmmon-only/./include/pgtbl.h: In function ‘PgtblPGD2PTELocked’:

/usr/lib/vmware/modules/source/vmmon-only/./include/pgtbl.h:125:28: error: passing argument 1 of ‘pud_offset’ from incompatible pointer type [-Werror=incompatible-pointer-types]

pud = compat_pud_offset(pgd, addr);

^

/usr/lib/vmware/modules/source/vmmon-only/./include/compat_pgtable.h:72:56: note: in definition of macro ‘compat_pud_offset’

# define compat_pud_offset(pgd, address) pud_offset(pgd, address)

^~~

In file included from ./include/linux/mm.h:70:0,

from /usr/lib/vmware/modules/source/vmmon-only/./include/compat_page.h:23,

from /usr/lib/vmware/modules/source/vmmon-only/linux/hostif.c:32:

./arch/x86/include/asm/pgtable.h:826:22: note: expected ‘p4d_t * {aka struct <anonymous> *}’ but argument is of type ‘compat_pgd_t * {aka struct <anonymous> *}’

static inline pud_t *pud_offset(p4d_t *p4d, unsigned long address)

^~~~~~~~~~

cc1: some warnings being treated as errors

make[2]: *** [scripts/Makefile.build:303: /usr/lib/vmware/modules/source/vmmon-only/linux/hostif.o] Error 1

make[1]: *** [Makefile:1512: _module_/usr/lib/vmware/modules/source/vmmon-only] Error 2

make[1]: Leaving directory '/usr/src/linux-4.12-rc1'

make: *** [Makefile:120: vmmon.ko] Error 2

Robert Gadsdon

rglinuxtech.com

12 Replies
dariusd
VMware Employee
VMware Employee

Thanks for reporting this.  I'll file a problem report so that we can remedy this in a future release, and I'll post back here if/when we have a patch for it.  (If someone else doesn't beat me to it. Smiley Wink)

Thanks,

--

Darius

Reply
0 Kudos
mkubecek
Hot Shot
Hot Shot

I tried this patch: vmmon: adapt to 5-level page table hierarchy · mkubecek/vmware-host-modules@00aba44 · GitHub

With it, vmmon module builds and loads under 4.12-rc3 but the host system crashes when I start a guest. I'm not sure if it's related, though, the host goes into a reboot immediatelly, doesn't even invoke kdump. 😞

Reply
0 Kudos
rgadsdon
Enthusiast
Enthusiast

Yes, I can confirm the results, with kernel 4.12-rc3..   vmmon compiles OK, and vmware user runtime executes, but host system immediately reboots when a client is started.  

No crash info etc. on serial console, so no more clues..

RG.

Reply
0 Kudos
mfelker
Expert
Expert

What Linux distro are you running?    Kernel 4.12 won't even boot on Ubuntu 17.10 for me

Reply
0 Kudos
mkubecek
Hot Shot
Hot Shot

I'm testing it on openSUSE 42.2 (also one machine with openSUSE Tumbleweed but I have no VMware there). Kernel packages are from Kernel:HEAD OBS repository (here ).

Reply
0 Kudos
rgadsdon
Enthusiast
Enthusiast

Tested with Fedora (25 and 26).    Kernel 4.12-rc3 from kernel.org.

RG.

Reply
0 Kudos
rgadsdon
Enthusiast
Enthusiast

VMware 12.5.7 is out, and I can confirm that this now works OK with Kernel 4.12 (tested with 4.12-rc6)

Thanks!

Robert Gadsdon

rglinuxtech.com

dariusd
VMware Employee
VMware Employee

You're too quick!  Workstation 12.5.7 should indeed be compatible with kernel 4.12 (or at least its release candidates).  Last I looked it had not yet been made public and I was eagerly awaiting its release, I stepped away from the keyboard for a while, and now you've already downloaded it and tested and posted back here.  :smileycool:

Thanks for reporting back!

It turns out that the fix for this was quite intrusive... so it was less amenable to distribution as a standalone patch, and (particularly with the propensity for host reboots) more worthwhile putting it through the full quality assurance cycle before a proper release, hence the lack of a patch posted earlier.  I hope the delay has not caused too much inconvenience.

Cheers,

--

Darius

Reply
0 Kudos
mfelker
Expert
Expert

Hi Darius:

     Finally got around to installing Ubuntu 17.10 but VMware WS buid 12.5.7 does not start for me using kernel 4.12.    How is this issue coming along for others?

Marty

Reply
0 Kudos
dariusd
VMware Employee
VMware Employee

There's a lot more that we need to fix before Workstation will run on Ubuntu 17.10... it's not just the kernel that's incompatible, it seems there is all sorts of breakage in GTK+ and appLoader and probably other things too.  In theory our kernel modules should be manually buildable on that host OS, but that's just one piece of the big compatibility puzzle.

I don't have any insight on when we might be able to expect Workstation to function correctly on Ubuntu 17.10.

Cheers,

--

Darius

Reply
0 Kudos
mfelker
Expert
Expert

Thanks for the honest reply.   So for the time being I'll stick with Siduction 17.1.0 fully updated to kernel 4.11.    WS is running fine on that distro. 

Reply
0 Kudos
excolo
Contributor
Contributor

Please keep us updated on Ubuntu 17.10 version. We have a lot of Engineers that will be moving to 17.10 as soon as its out... Thank You

Reply
0 Kudos