X-Git-Url: https://git.camperquake.de/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=include%2Flinux%2Fdcache_compat.h;fp=include%2Flinux%2Fdcache_compat.h;h=271a0cbef76adfd8bdb72f07363aa0549f7bb3c8;hb=f1a05fa11484d67161606fd1ecf50bf2abc25ced;hp=a42356276a045d86bfdcabfad66b9d9c7a11e309;hpb=94a9bb4709111f5fadb434cce1af6ccb6534e241;p=zfs.git diff --git a/include/linux/dcache_compat.h b/include/linux/dcache_compat.h index a423562..271a0cb 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 */