diff options
Diffstat (limited to 'app-emulation/open-vm-tools-kmod/files/vmhgfs-linux-3.11.patch')
-rw-r--r-- | app-emulation/open-vm-tools-kmod/files/vmhgfs-linux-3.11.patch | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/app-emulation/open-vm-tools-kmod/files/vmhgfs-linux-3.11.patch b/app-emulation/open-vm-tools-kmod/files/vmhgfs-linux-3.11.patch new file mode 100644 index 0000000..3918162 --- /dev/null +++ b/app-emulation/open-vm-tools-kmod/files/vmhgfs-linux-3.11.patch @@ -0,0 +1,42 @@ +Source: https://github.com/rasa/vmware-tools-patches/ + +--- a/modules/linux/vmhgfs/inode.c ++++ b/modules/linux/vmhgfs/inode.c +@@ -31,6 +31,9 @@ + #include <linux/namei.h> + #endif + #include <linux/highmem.h> ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0) ++#include <linux/dcache.h> ++#endif + + #include "compat_cred.h" + #include "compat_fs.h" +@@ -1890,7 +1893,11 @@ + #endif + &inode->i_dentry, + d_alias) { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0) ++ int dcount = d_count(dentry); ++#else + int dcount = dentry->d_count; ++#endif + if (dcount) { + LOG(4, ("Found %s %d \n", dentry->d_name.name, dcount)); + return HgfsAccessInt(dentry, mask & (MAY_READ | MAY_WRITE | MAY_EXEC)); +@@ -1943,10 +1950,12 @@ + list_for_each(pos, &inode->i_dentry) { + int dcount; + struct dentry *dentry = list_entry(pos, struct dentry, d_alias); +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 38) +- dcount = atomic_read(&dentry->d_count); +-#else ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 11, 0) ++ dcount = d_count(dentry); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38) + dcount = dentry->d_count; ++#else ++ dcount = atomic_read(&dentry->d_count); + #endif + if (dcount) { + LOG(4, ("Found %s %d \n", (dentry)->d_name.name, dcount)); |