VMware Communities
Ecoplacehunter
Contributor
Contributor

vmhgfs module not compilable for VMware Tools 9.9.0 (Fusion7.1) after Ubuntu Linux kernel update to 3.13.0-46-generic (Febr. 2015) (Shared Folder Feature not working in Ubuntu 14.04 LTS (Guest) on MacOSX Yosemite (Host))?

vmhgfs module not compilable for VMware Tools 9.9.0 (Fusion7.1) and VMware Tools 9.9.2 (Fusion7.1.1 Build 2496486) after Ubuntu Linux kernel update to 3.13.0-46-generic (Febr. 2015) (Shared Folder Feature of VMware Tools not working in Ubuntu 14.04 LTS (Guest) on MacOSX Yosemite (Host))? 


Hello Community and the VMware Developer Team,


On February, 13th 2015 we lost the Shared Folder Feature between Ubuntu and MacOSX. Probably, the update of the Linux kernel to 3.13.0-46-generic caused this problem (although the existing, compiled vmhgfs module of the VMware Tools in Ubuntu wouldn't be damaged by the Linux kernel update!). We use VMware Fusion 7.0.0 with Ubuntu 14.04 LTS and MacOSX for one year without problems with older Linux kernels.

We updated to VMware Fusion 7.1.0 and Fusion7.1.1 Build 2496486 with VMware Tools 9.9.2 in the hope to fix the Shared Folder Feature problem that occured first in vers. 7.0.0.

We can suppose that there is an incompatibility between the compiled vmhgfs module and the new Linux kernel 3.13.0-46-generic.

We tried to reinstall VMware tools 9.9.0 and vers. 9.9.2 but the vmhgfs module couldn't be compiled and the Shared Folder Feature is not working. All other VMware tool features are working fine.

1. In Ubuntu 14.04 LTS the terminal command lsmod | grep "vm." lists no vmhgfs module

2. During vmhgfs module compilation there were several "errors" near "/vmhgfs-only/" and "make[]:"


Here is one of our terminal journals for you: 


"


include/linux/compiler-gcc4.h:14:34: error: ‘struct dentry’ has no member named ‘d_alias’

#define __compiler_offsetof(a,b) __builtin_offsetof(a,b)

                                  ^

include/linux/stddef.h:17:31: note: in expansion of macro ‘__compiler_offsetof’

#define offsetof(TYPE,MEMBER) __compiler_offsetof(TYPE,MEMBER)

                               ^

include/linux/kernel.h:794:29: note: in expansion of macro ‘offsetof’

  (type *)( (char *)__mptr - offsetof(type,member) );})

                             ^

include/linux/list.h:687:40: note: in expansion of macro ‘container_of’

#define hlist_entry(ptr, type, member) container_of(ptr,type,member)

                                        ^

include/linux/list.h:698:15: note: in expansion of macro ‘hlist_entry’

     ____ptr ? hlist_entry(____ptr, type, member) : NULL; \

               ^

include/linux/list.h:710:13: note: in expansion of macro ‘hlist_entry_safe’

       pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))

             ^

/tmp/modconfig-h4Zwi0/vmhgfs-only/inode.c:1920:7: note: in expansion of macro ‘hlist_for_each_entry’

       hlist_for_each_entry(dentry,

       ^

make[2]: *** [/tmp/modconfig-h4Zwi0/vmhgfs-only/inode.o] Error 1

make[1]: *** [_module_/tmp/modconfig-h4Zwi0/vmhgfs-only] Error 2

make[1]: Leaving directory `/usr/src/linux-headers-3.13.0-46-generic'

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

make: Leaving directory `/tmp/modconfig-h4Zwi0/vmhgfs-only'

"

3. And /mnt/hgfs is empty but folder sharing is enabled for Mac's "Documents" directory for example. If we run vmware-hgfsclient in a terminal, we get the list of shared folders but /mnt/hgfs is empty. 


Could you fix the incompatibility between the vmhgfs module and the new Linux kernel 3.13.0-46-generic, please?

Best regards,

Toni


92 Replies
VimaUser
Contributor
Contributor

Fusion 7.1.2 is out, release date June the 5th.

VMware Fusion 7.1.2 Release Notes

Resolved Issues

...

When you installed VMware Tools on a Ubuntu guest operating system with kernel 3.13.0-46-generic, you could not enable folder sharing

This issue is resolved.

...

Reply
0 Kudos
Ecoplacehunter
Contributor
Contributor

Hello Community,

how to install VMware tools for VWware Fusion 7.1.2??

There is no option "Install VWware Tools" in the "Virtual Machine" section of the VM menu. Maybe the installation of VWware Tools is different towards the older VWware Fusion versions.

So we were waiting for some fixes of issues several months, were posting this discussion and there is no notification for this new release and the changed installation of VWware tools from VWware?!! This is a very poor service!

Best regards,

Toni

Reply
0 Kudos
ChipMcK
Hot Shot
Hot Shot

There is no option "Install VWware Tools" in the "Virtual Machine" section of the VM menu.

You did start the virtual machine, yes?

Reply
0 Kudos
JoeCairns
Contributor
Contributor

Host OS: Mac OS 10.10.4

Guest OS: Ubuntu 12.04.1 LTS (GNU/Linux 3.2.0-30-generic x86_64)

VMWare Fusion 7.1.2

VMWare Tools 9.9.3-2759765

Lost all my shared folders after installing this version of Fusion.  Have tried everything I could think of to get it back, anyone have any ideas on how to get them back?

Reply
0 Kudos
steve_goddard
VMware Employee
VMware Employee

Hi there Joe,

I am the developer for the shared folders feature. Sorry to hear about your state and situation.

When you state you installed the Fusion 7.1.2, did you also do a VMware tools install in the Ubuntu 12.04 VM too?

If so, did it uninstall the previous tools first or had you already did an uninstall of the tools first yourself?

If you ran the install you did select the Shared Folders feature to install?

Also I assume the user interface has Sharing set to enabled?

(It didn't get reset for some reason.)

Have you updated the Ubuntu 12.04 version by performing an Ubuntu Software Update at all?

If so, and the kernel got updated, you will need to rerun /usr/bin/vmware-config-tools.pl as root.

Assuming all those what occurs if you run a terminal shell and do the following:

lsmod |grep vmhgfs

Also do:

modinfo vmhgfs

As root user do:

mount |grep hgfs

The above first 2 tests should show you have vmhgfs kernel component installed and running.

The last one should show if there was a mount created.

These questions will help get a better understanding of your current state. It will help me probably come up with more questions.

Smiley Happy

Thanks.

Steve

Thanks. Steve
Reply
0 Kudos
JoeCairns
Contributor
Contributor

Hi Steve,

>> If you ran the install you did select the Shared Folders feature to install?

Thanks for responding.  Yes, we have a server 12.04 setup, did the following to install the update:

Select "Install VMware tools" from the vmware menu


From the prompt:

mount /dev/cdrom /mnt/cdrom

tar xzvf /mnt/cdrom/VMwareTools-9.9.3-2759765.tar.gz -C /tmp/

cd /tmp/vmware-tools-distrib/

./vmware-install.pl -d

reboot


I then removed and added the folder to share.  Shared folders was check, but I decided to uncheck, and check it again and got the following message:

"Unable to update run-time folder sharing status:  There was an error mounting the Sahred Folders file system inside the guest operating system"


>> Have you updated the Ubuntu 12.04 version by performing an Ubuntu Software Update at all?


Negative, we can't touch that, we're emulating a client machine and need all the guest OS and contents at particular versions


>> Assuming all those what occurs if you run a terminal shell and do the following:

lsmod |grep vmhgfs

root@client-vm:~# lsmod |grep vmhgfs

root@client-vm:~#


Also do:

modinfo vmhgfs

root@client-vm:~# modinfo vmhgfs

ERROR: modinfo: could not find module vmhgfs

root@client-vm:~#

root@client-vm:~# mount |grep hgfs

root@client-vm:~#

My limited linux-fu tells me vmhgfs is not installed.  If I installed the package with the above steps, should that not install vmhgfs as well?

Thanks for your help with this, my chestnuts are in the fire.  I really appreciate it.

Reply
0 Kudos
JoeCairns
Contributor
Contributor

Steve, I just went back to a working snapshot and reran the VMware tool install process again to watch the output more closely.  Apparently, vmhgfs is throwing an error during compilation:

Using kernel build system.

make: Entering directory `/tmp/modconfig-EdosTK/vmhgfs-only'

/usr/bin/make -C /lib/modules/3.2.0-30-generic/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \

    MODULEBUILDDIR= modules

make[1]: Entering directory `/usr/src/linux-headers-3.2.0-30-generic'

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/backdoor.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/backdoorGcc64.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/bdhandler.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/cpName.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/cpNameLinux.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/cpNameLite.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/dentry.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/dir.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/file.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/filesystem.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/fsutil.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/hgfsBd.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/hgfsEscape.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/hgfsUtil.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/inode.o

  CC [M]  /tmp/modconfig-EdosTK/vmhgfs-only/link.o

/tmp/modconfig-EdosTK/vmhgfs-only/inode.c: In function ‘HgfsPermission’:

/tmp/modconfig-EdosTK/vmhgfs-only/inode.c:1992:34: error: ‘union <anonymous>’ has no member named ‘d_alias’

/tmp/modconfig-EdosTK/vmhgfs-only/inode.c:1992:34: warning: initialization from incompatible pointer type [enabled by default]

/tmp/modconfig-EdosTK/vmhgfs-only/inode.c:1992:34: warning: (near initialization for ‘dentry’) [enabled by default]

/tmp/modconfig-EdosTK/vmhgfs-only/inode.c:1992:34: error: ‘union <anonymous>’ has no member named ‘d_alias’

make[2]: *** [/tmp/modconfig-EdosTK/vmhgfs-only/inode.o] Error 1

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

make[1]: *** [_module_/tmp/modconfig-EdosTK/vmhgfs-only] Error 2

make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-30-generic'

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

make: Leaving directory `/tmp/modconfig-EdosTK/vmhgfs-only'

Reply
0 Kudos
steve_goddard
VMware Employee
VMware Employee

Hi Joe,

This was fixed or so I thought and is on some distributions but not here apparently.

Our code which checks for back-ports of some kernel fixes and was modified to check for the d_alias field of the dentry kernel structure, which should detect which way to compile.

Furthermore, the check was modified to include kernel versions 3.2.0 but the code is not quite correct for all installations.

I am going to investigate it and make it work in all cases. I hope it turns out to be fairly simple.

If that turns out to be true I might be able to give you a patch to fix up the code to compile correctly while you wait for the official tools release.

Thanks for the very useful information as it helps to narrow down these issues much more quickly.


Steve

Thanks. Steve
Reply
0 Kudos
fmouse
Enthusiast
Enthusiast

Steve, I'm having exactly the same build error for link.o in Vmware Tools for Linux. A brief synopsis of the error (almost identical to Joe's)

  CC [M]  /tmp/modconfig-hAD0Im/vmhgfs-only/link.o

/tmp/modconfig-hAD0Im/vmhgfs-only/inode.c: In function 'HgfsPermission':

/tmp/modconfig-hAD0Im/vmhgfs-only/inode.c:1992:34: error: 'union <anonymous>' has no member named 'd_alias'

/tmp/modconfig-hAD0Im/vmhgfs-only/inode.c:1992:34: warning: initialization from incompatible pointer type [enabled by default]

/tmp/modconfig-hAD0Im/vmhgfs-only/inode.c:1992:34: warning: (near initialization for 'dentry') [enabled by default]

/tmp/modconfig-hAD0Im/vmhgfs-only/inode.c:1992:34: error: 'union <anonymous>' has no member named 'd_alias'

make[2]: *** [/tmp/modconfig-hAD0Im/vmhgfs-only/inode.o] Error 1

I'm running Professional Version 7.1.2 (2779224) on a Mac running OS X Yosemite 10.10.4 (14E46). My guest OS is Linux Mint release 13, kernel 3.2.0-64-generic.

I'm heavily dependent on my shared directories on a daily basis and am crippled in my work without them. Is there a fix for this problem yet? I've been using VMware tools updates for years with no problems at all up to this point.

Reply
0 Kudos
fmouse
Enthusiast
Enthusiast

I've backversioned VMware Fusion to v7.1.1-2498930 with VMwareTools-9.9.2-2496486 which solved the problem and my shared directories are back. I would appreciate an email when this problem has been solved so I can once again keep up with VMware releases.

Reply
0 Kudos
steve_goddard
VMware Employee
VMware Employee

Hi there,

I have fixed this internally and tested this in Debian and Ubuntu versions that are running 3.2 kernel versions and having reproduced the same issue fixed the backwards compatibility that was broken.

I don't know when VMware will be releasing an update but I will see what I can do to help you guys move forward until then.

Steve

Thanks. Steve
fmouse
Enthusiast
Enthusiast

Thanks Steve. I know it takes time for fixes to percolate up through a large company such as VMware but I'll keep checking back to this thread and watching for updates pushed out to customers. It would help if you would post to this thread when the update is made public, and give us the new version number.

Reply
0 Kudos
ddefolo
Contributor
Contributor

Steve,

Can you share if your fix will resolve what appears to be the same issue with the following combination of stuff:

VMware Workstation 11.1.2 build-2780323

VMwareTools-9.9.3-2759765

Guest OS: Ubuntu 12.04 LTS with 3.5.0-54-generic kernel

I just got prompted to upgrade from VMware Workstation 11.1.0 which pulled down a VMwareTools update and this appears to have broken shared folder feature with the same build errors others are reporting here.

Is there a workaround?  I'm tempted to uninstalls 11.1.2 to go back to 11.1.0 where this was all happy.

Dan

Reply
0 Kudos