int fso_bufcnt;
};
+struct fsfilt_fid {
+ __u32 ino;
+ __u32 gen;
+};
+
struct lustre_dquot;
struct fsfilt_operations {
cfs_list_t fs_list;
struct inode *inode, int frags);
int (* fs_dquot)(struct lustre_dquot *dquot, int cmd);
lvfs_sbdev_type (* fs_journal_sbdev)(struct super_block *sb);
+ struct dentry *(* fs_fid2dentry)(struct vfsmount *mnt,
+ struct fsfilt_fid *fid,
+ int ignore_gen);
};
extern int fsfilt_register_ops(struct fsfilt_operations *fs_ops);
return -EOPNOTSUPP;
}
+static inline struct dentry *fsfilt_fid2dentry(struct obd_device *obd,
+ struct vfsmount *mnt,
+ struct fsfilt_fid *fid,
+ int ignore_gen)
+{
+ if (obd->obd_fsops->fs_fid2dentry)
+ return obd->obd_fsops->fs_fid2dentry(mnt, fid, ignore_gen);
+ return ERR_PTR(-EOPNOTSUPP);
+}
+
#endif /* __KERNEL__ */
#endif