Reputation: 101
After having upgraded my guest ubuntu to linux-image-3.13.0-46 I got an error install vmware-tools and I cannot share folders any more.
I ran vmware player 7.0.0 build-2305329 both in Windows 8 and Ubuntu 14.04 LTS host machine and during the installation I got the following error log out:
from /tmp/modconfig-NVbKuD/vmhgfs-only/inode.c:29:
include/linux/kernel.h:793:27: error: ‘struct dentry’ has no member named ‘d_alias’
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
^
Is there any workaround about this issue?
Thanks
Upvotes: 8
Views: 4432
Reputation: 1
open-vm-tools is supported and recommended by VMware for Ubuntu. So, you can easily install open-vm-tools if you have really trouble with VMware Tools. Hope it helps.
Upvotes: 0
Reputation: 849
As for VMWare Fusion, the bug was fixed at 7.1.2 release [1]. The version of vmware-tools is 9.9.3.
[1] VMware Fusion 7.1.2 Release Notes https://www.vmware.com/support/fusion/doc/fusion-712-release-notes.html
Upvotes: 0
Reputation: 487
This patch should fix the problem.
Edit Working Gist patch
Instructions for use:
cd vmware-tools-distrib/lib/modules/source/
tar -xvf vmhgfs.tar
cd vmhgfs-only
patch inode.c < inode.patch
cd ..
mv vmhgfs.tar vmhgfs.tar.orig
tar cvf vmhgfs.tar vmhgfs-only
cd vmware-tools-distrib
sudo ./vmware-install.pl
Upvotes: 1
Reputation: 171
vmware-tools-distrib-9.9.2-2496486:
I have fixed the problem by going to the directory where vmhgfs.tar is located (in my case /usr/lib/vmware-tools/modules/source), unpack the tar and manually edit inode.c.
At line 1925(just search for "d_alias" to find the exact line) you need to add an if. In the end looks like that:
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
d_alias) {
#else
d_u.d_alias) {
#endif
Then again around line 1983 (search again for "d_alias"):
#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0)
struct dentry *dentry = list_entry(pos, struct dentry, d_alias);
#else
struct dentry *dentry = list_entry(pos, struct dentry, d_u.d_alias);
#endif
Caveat: Not sure on the kernel version but I have put there 3,13,0 though my Ubuntu reports:
# uname -a
Linux md-ubuntu 3.13.0-46-generic #76-Ubuntu SMP Thu Feb 26 18:52:13 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
And this was working fine with 3.13.0-45.
So probably if you downgrade the kernel the above hack will not work properly.
Then you need to pack again the tar archive (just move the old one out of the way:
# mv vmhgfs.tar vmhgfs.tar.orig
and pack again the directory:
# tar cvf vmhgfs.tar vmhgfs-only
)
Hope it helps.
Upvotes: 11