diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/dcache_compat.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/include/linux/dcache_compat.h b/include/linux/dcache_compat.h index a42356276..271a0cbef 100644 --- a/include/linux/dcache_compat.h +++ b/include/linux/dcache_compat.h @@ -35,4 +35,29 @@ #define d_make_root(inode) d_alloc_root(inode) #endif /* HAVE_D_MAKE_ROOT */ +/* + * 2.6.30 API change, + * The const keyword was added to the 'struct dentry_operations' in + * the dentry structure. To handle this we define an appropriate + * dentry_operations_t typedef which can be used. + */ +#ifdef HAVE_CONST_DENTRY_OPERATIONS +typedef const struct dentry_operations dentry_operations_t; +#else +typedef struct dentry_operations dentry_operations_t; +#endif + +/* + * 2.6.38 API change, + * Added d_set_d_op() helper function which sets some flags in + * dentry->d_flags based on which operations are defined. + */ +#ifndef HAVE_D_SET_D_OP +static inline void +d_set_d_op(struct dentry *dentry, dentry_operations_t *op) +{ + dentry->d_op = op; +} +#endif /* HAVE_D_SET_D_OP */ + #endif /* _ZFS_DCACHE_H */ |