The function make_dentry_ptr has an argument 'int type'. This argument is used to distinguish 'block dentry' and 'inline dentry'. We used 1 and 2 as the type. To make code more readable, we use enum type to replace constant use. Signed-off-by: Yuan Zhong <yuan.mark.zh...@samsung.com> --- fs/f2fs/dir.c | 8 ++++---- fs/f2fs/f2fs.h | 8 +++++++- fs/f2fs/inline.c | 8 ++++---- 3 files changed, 15 insertions(+), 9 deletions(-)
diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c index 590aeef..c39a18f 100644 --- a/fs/f2fs/dir.c +++ b/fs/f2fs/dir.c @@ -99,7 +99,7 @@ static struct f2fs_dir_entry *find_in_block(struct page *dentry_page, dentry_blk = (struct f2fs_dentry_block *)kmap(dentry_page); - make_dentry_ptr(&d, (void *)dentry_blk, 1); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_BLOCK); de = find_target_dentry(name, max_slots, &d); if (de) @@ -360,7 +360,7 @@ static int make_empty_dir(struct inode *inode, dentry_blk = kmap_atomic(dentry_page); - make_dentry_ptr(&d, (void *)dentry_blk, 1); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_BLOCK); do_make_empty_dir(inode, parent, &d); kunmap_atomic(dentry_blk); @@ -571,7 +571,7 @@ add_dentry: goto fail; } - make_dentry_ptr(&d, (void *)dentry_blk, 1); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_BLOCK); f2fs_update_dentry(inode, &d, name, dentry_hash, bit_pos); set_page_dirty(dentry_page); @@ -782,7 +782,7 @@ static int f2fs_readdir(struct file *file, struct dir_context *ctx) dentry_blk = kmap(dentry_page); - make_dentry_ptr(&d, (void *)dentry_blk, 1); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_BLOCK); if (f2fs_fill_dentries(ctx, &d, n * NR_DENTRY_IN_BLOCK)) goto stop; diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h index 511d6cd..31b440e 100644 --- a/fs/f2fs/f2fs.h +++ b/fs/f2fs/f2fs.h @@ -236,10 +236,16 @@ struct f2fs_dentry_ptr { int max; }; +enum { + DENTRY_PTR_TYPE_BLOCK = 1, + DENTRY_PTR_TYPE_INLNE, + DENTRY_PTR_TYPE_MAX +}; + static inline void make_dentry_ptr(struct f2fs_dentry_ptr *d, void *src, int type) { - if (type == 1) { + if (type == DENTRY_PTR_TYPE_BLOCK) { struct f2fs_dentry_block *t = (struct f2fs_dentry_block *)src; d->max = NR_DENTRY_IN_BLOCK; d->bitmap = &t->dentry_bitmap; diff --git a/fs/f2fs/inline.c b/fs/f2fs/inline.c index 4ba9732..ee0984c 100644 --- a/fs/f2fs/inline.c +++ b/fs/f2fs/inline.c @@ -271,7 +271,7 @@ struct f2fs_dir_entry *find_in_inline_dir(struct inode *dir, inline_dentry = inline_data_addr(ipage); - make_dentry_ptr(&d, (void *)inline_dentry, 2); + make_dentry_ptr(&d, (void *)inline_dentry, DENTRY_PTR_TYPE_INLNE); de = find_target_dentry(name, NULL, &d); unlock_page(ipage); @@ -315,7 +315,7 @@ int make_empty_inline_dir(struct inode *inode, struct inode *parent, dentry_blk = inline_data_addr(ipage); - make_dentry_ptr(&d, (void *)dentry_blk, 2); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_INLNE); do_make_empty_dir(inode, parent, &d); set_page_dirty(ipage); @@ -417,7 +417,7 @@ int f2fs_add_inline_entry(struct inode *dir, const struct qstr *name, f2fs_wait_on_page_writeback(ipage, NODE); name_hash = f2fs_dentry_hash(name); - make_dentry_ptr(&d, (void *)dentry_blk, 2); + make_dentry_ptr(&d, (void *)dentry_blk, DENTRY_PTR_TYPE_INLNE); f2fs_update_dentry(inode, &d, name, name_hash, bit_pos); set_page_dirty(ipage); @@ -507,7 +507,7 @@ int f2fs_read_inline_dir(struct file *file, struct dir_context *ctx) inline_dentry = inline_data_addr(ipage); - make_dentry_ptr(&d, (void *)inline_dentry, 2); + make_dentry_ptr(&d, (void *)inline_dentry, DENTRY_PTR_TYPE_INLNE); if (!f2fs_fill_dentries(ctx, &d, 0)) ctx->pos = NR_INLINE_DENTRY; -- 1.7.9.5 ------------------------------------------------------------------------------ Dive into the World of Parallel Programming The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net/ _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel