generic_permission(inode, mask, check_acl)
#endif
-#ifdef HAVE_BLKDEV_PUT_2ARGS
-#define ll_blkdev_put(a, b) blkdev_put(a, b)
-#else
-#define ll_blkdev_put(a, b) blkdev_put(a)
-#endif
-
#ifdef HAVE_DENTRY_OPEN_USE_PATH
#define ll_dentry_open(a,b,c) dentry_open(a,b,c)
#else
}
#endif
-#ifdef HAVE_INVALIDATE_BDEV_2ARG
-#define ll_invalidate_bdev(a,b) invalidate_bdev((a),(b))
-#else
-#define ll_invalidate_bdev(a,b) invalidate_bdev((a))
-#endif
-
#ifndef FS_HAS_FIEMAP
#define FS_HAS_FIEMAP (0)
#endif
#define ll_d_hlist_empty(list) hlist_empty(list)
#define ll_d_hlist_entry(ptr, type, name) hlist_entry(ptr.first, type, name)
#define ll_d_hlist_for_each(tmp, i_dentry) hlist_for_each(tmp, i_dentry)
+#ifdef HAVE_HLIST_FOR_EACH_3ARG
+#define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
+ p = NULL; hlist_for_each_entry(dentry, i_dentry, alias)
+#else
#define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
hlist_for_each_entry(dentry, p, i_dentry, alias)
+#endif
+#define DECLARE_LL_D_HLIST_NODE_PTR(name) struct ll_d_hlist_node *name
#else
#define ll_d_hlist_node list_head
#define ll_d_hlist_empty(list) list_empty(list)
#define ll_d_hlist_entry(ptr, type, name) list_entry(ptr.next, type, name)
#define ll_d_hlist_for_each(tmp, i_dentry) list_for_each(tmp, i_dentry)
#define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
- p = NULL; list_for_each_entry(dentry, i_dentry, alias)
+ list_for_each_entry(dentry, i_dentry, alias)
+#define DECLARE_LL_D_HLIST_NODE_PTR(name) /* nothing */
#endif
#define bio_hw_segments(q, bio) 0
#endif
-#if !defined(HAVE_CPUMASK_OF_NODE) && defined(HAVE_NODE_TO_CPUMASK)
-# ifdef HAVE_OFED_CPUMASK_OF_NODE
-# undef cpumask_of_node
-# define HAVE_CPUMASK_OF_NODE
-# endif
-#define cpumask_of_node(i) (&node_to_cpumask(i))
-#endif
-
#ifndef QUOTA_OK
# define QUOTA_OK 0
#endif