diff options
Diffstat (limited to 'fs/ocfs2/dir.h')
-rw-r--r-- | fs/ocfs2/dir.h | 48 |
1 files changed, 40 insertions, 8 deletions
diff --git a/fs/ocfs2/dir.h b/fs/ocfs2/dir.h index 3f67e146864a..ce48b9080d87 100644 --- a/fs/ocfs2/dir.h +++ b/fs/ocfs2/dir.h | |||
@@ -26,17 +26,49 @@ | |||
26 | #ifndef OCFS2_DIR_H | 26 | #ifndef OCFS2_DIR_H |
27 | #define OCFS2_DIR_H | 27 | #define OCFS2_DIR_H |
28 | 28 | ||
29 | struct buffer_head *ocfs2_find_entry(const char *name, | ||
30 | int namelen, | ||
31 | struct inode *dir, | ||
32 | struct ocfs2_dir_entry **res_dir); | ||
33 | int ocfs2_delete_entry(handle_t *handle, | ||
34 | struct inode *dir, | ||
35 | struct ocfs2_dir_entry *de_del, | ||
36 | struct buffer_head *bh); | ||
37 | int __ocfs2_add_entry(handle_t *handle, | ||
38 | struct inode *dir, | ||
39 | const char *name, int namelen, | ||
40 | struct inode *inode, u64 blkno, | ||
41 | struct buffer_head *parent_fe_bh, | ||
42 | struct buffer_head *insert_bh); | ||
43 | static inline int ocfs2_add_entry(handle_t *handle, | ||
44 | struct dentry *dentry, | ||
45 | struct inode *inode, u64 blkno, | ||
46 | struct buffer_head *parent_fe_bh, | ||
47 | struct buffer_head *insert_bh) | ||
48 | { | ||
49 | return __ocfs2_add_entry(handle, dentry->d_parent->d_inode, | ||
50 | dentry->d_name.name, dentry->d_name.len, | ||
51 | inode, blkno, parent_fe_bh, insert_bh); | ||
52 | } | ||
53 | int ocfs2_update_entry(struct inode *dir, handle_t *handle, | ||
54 | struct buffer_head *de_bh, struct ocfs2_dir_entry *de, | ||
55 | struct inode *new_entry_inode); | ||
56 | |||
29 | int ocfs2_check_dir_for_entry(struct inode *dir, | 57 | int ocfs2_check_dir_for_entry(struct inode *dir, |
30 | const char *name, | 58 | const char *name, |
31 | int namelen); | 59 | int namelen); |
32 | int ocfs2_empty_dir(struct inode *inode); /* FIXME: to namei.c */ | 60 | int ocfs2_empty_dir(struct inode *inode); |
33 | int ocfs2_find_files_on_disk(const char *name, | 61 | int ocfs2_find_files_on_disk(const char *name, |
34 | int namelen, | 62 | int namelen, |
35 | u64 *blkno, | 63 | u64 *blkno, |
36 | struct inode *inode, | 64 | struct inode *inode, |
37 | struct buffer_head **dirent_bh, | 65 | struct buffer_head **dirent_bh, |
38 | struct ocfs2_dir_entry **dirent); | 66 | struct ocfs2_dir_entry **dirent); |
67 | int ocfs2_lookup_ino_from_name(struct inode *dir, const char *name, | ||
68 | int namelen, u64 *blkno); | ||
39 | int ocfs2_readdir(struct file *filp, void *dirent, filldir_t filldir); | 69 | int ocfs2_readdir(struct file *filp, void *dirent, filldir_t filldir); |
70 | int ocfs2_dir_foreach(struct inode *inode, loff_t *f_pos, void *priv, | ||
71 | filldir_t filldir); | ||
40 | int ocfs2_prepare_dir_for_insert(struct ocfs2_super *osb, | 72 | int ocfs2_prepare_dir_for_insert(struct ocfs2_super *osb, |
41 | struct inode *dir, | 73 | struct inode *dir, |
42 | struct buffer_head *parent_fe_bh, | 74 | struct buffer_head *parent_fe_bh, |
@@ -44,11 +76,11 @@ int ocfs2_prepare_dir_for_insert(struct ocfs2_super *osb, | |||
44 | int namelen, | 76 | int namelen, |
45 | struct buffer_head **ret_de_bh); | 77 | struct buffer_head **ret_de_bh); |
46 | struct ocfs2_alloc_context; | 78 | struct ocfs2_alloc_context; |
47 | int ocfs2_do_extend_dir(struct super_block *sb, | 79 | int ocfs2_fill_new_dir(struct ocfs2_super *osb, |
48 | handle_t *handle, | 80 | handle_t *handle, |
49 | struct inode *dir, | 81 | struct inode *parent, |
50 | struct buffer_head *parent_fe_bh, | 82 | struct inode *inode, |
51 | struct ocfs2_alloc_context *data_ac, | 83 | struct buffer_head *fe_bh, |
52 | struct ocfs2_alloc_context *meta_ac, | 84 | struct ocfs2_alloc_context *data_ac); |
53 | struct buffer_head **new_bh); | 85 | |
54 | #endif /* OCFS2_DIR_H */ | 86 | #endif /* OCFS2_DIR_H */ |