aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/dcache_compat.h
diff options
context:
space:
mode:
authorRichard Yao <[email protected]>2012-06-06 17:08:00 +0000
committerBrian Behlendorf <[email protected]>2012-06-11 10:04:49 -0700
commit6a0936babc14a44986265a12f206c41999bd48c3 (patch)
treea2787bcc41bca759e12636977f541bcb54bd0e1f /include/linux/dcache_compat.h
parentab85f8455b995741c479f1cdcf21304de87fdaa8 (diff)
Linux 3.4 compat, d_make_root() replaces d_alloc_root()
torvalds/linux@adc0e91ab142abe93f5b0d7980ada8a7676231fe introduced introduced d_make_root() as a replacement for d_alloc_root(). Further commits appear to have removed d_alloc_root() from the Linux source tree. This causes the following failure: error: implicit declaration of function 'd_alloc_root' [-Werror=implicit-function-declaration] To correct this we update the code to use the current d_make_root() interface for readability. Then we introduce an autotools check to determine if d_make_root() is available. If it isn't then we define some compatibility logic which used the older d_alloc_root() interface. Signed-off-by: Richard Yao <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #776
Diffstat (limited to 'include/linux/dcache_compat.h')
-rw-r--r--include/linux/dcache_compat.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/dcache_compat.h b/include/linux/dcache_compat.h
index 5f7d5e97f..a42356276 100644
--- a/include/linux/dcache_compat.h
+++ b/include/linux/dcache_compat.h
@@ -31,4 +31,8 @@
#define dname(dentry) ((char *)((dentry)->d_name.name))
#define dlen(dentry) ((int)((dentry)->d_name.len))
+#ifndef HAVE_D_MAKE_ROOT
+#define d_make_root(inode) d_alloc_root(inode)
+#endif /* HAVE_D_MAKE_ROOT */
+
#endif /* _ZFS_DCACHE_H */