Skip to content

Commit bed6b03

Browse files
chaseyuJaegeuk Kim
authored andcommitted
f2fs: clean up addrs_per_{inode,block}()
Introduce a new help addrs_per_page() to wrap common code from addrs_per_inode() and addrs_per_block() for cleanup. Signed-off-by: Chao Yu <[email protected]> Signed-off-by: Jaegeuk Kim <[email protected]>
1 parent 7309871 commit bed6b03

File tree

2 files changed

+10
-17
lines changed

2 files changed

+10
-17
lines changed

fs/f2fs/f2fs.h

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3227,21 +3227,15 @@ static inline bool f2fs_need_compress_data(struct inode *inode)
32273227
return false;
32283228
}
32293229

3230-
static inline unsigned int addrs_per_inode(struct inode *inode)
3230+
static inline unsigned int addrs_per_page(struct inode *inode,
3231+
bool is_inode)
32313232
{
3232-
unsigned int addrs = CUR_ADDRS_PER_INODE(inode) -
3233-
get_inline_xattr_addrs(inode);
3233+
unsigned int addrs = is_inode ? (CUR_ADDRS_PER_INODE(inode) -
3234+
get_inline_xattr_addrs(inode)) : DEF_ADDRS_PER_BLOCK;
32343235

3235-
if (!f2fs_compressed_file(inode))
3236-
return addrs;
3237-
return ALIGN_DOWN(addrs, F2FS_I(inode)->i_cluster_size);
3238-
}
3239-
3240-
static inline unsigned int addrs_per_block(struct inode *inode)
3241-
{
3242-
if (!f2fs_compressed_file(inode))
3243-
return DEF_ADDRS_PER_BLOCK;
3244-
return ALIGN_DOWN(DEF_ADDRS_PER_BLOCK, F2FS_I(inode)->i_cluster_size);
3236+
if (f2fs_compressed_file(inode))
3237+
return ALIGN_DOWN(addrs, F2FS_I(inode)->i_cluster_size);
3238+
return addrs;
32453239
}
32463240

32473241
static inline void *inline_xattr_addr(struct inode *inode, struct page *page)

include/linux/f2fs_fs.h

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -259,15 +259,14 @@ struct node_footer {
259259
#define CUR_ADDRS_PER_INODE(inode) (DEF_ADDRS_PER_INODE - \
260260
get_extra_isize(inode))
261261
#define DEF_NIDS_PER_INODE 5 /* Node IDs in an Inode */
262-
#define ADDRS_PER_INODE(inode) addrs_per_inode(inode)
262+
#define ADDRS_PER_INODE(inode) addrs_per_page(inode, true)
263263
/* Address Pointers in a Direct Block */
264264
#define DEF_ADDRS_PER_BLOCK ((F2FS_BLKSIZE - sizeof(struct node_footer)) / sizeof(__le32))
265-
#define ADDRS_PER_BLOCK(inode) addrs_per_block(inode)
265+
#define ADDRS_PER_BLOCK(inode) addrs_per_page(inode, false)
266266
/* Node IDs in an Indirect Block */
267267
#define NIDS_PER_BLOCK ((F2FS_BLKSIZE - sizeof(struct node_footer)) / sizeof(__le32))
268268

269-
#define ADDRS_PER_PAGE(page, inode) \
270-
(IS_INODE(page) ? ADDRS_PER_INODE(inode) : ADDRS_PER_BLOCK(inode))
269+
#define ADDRS_PER_PAGE(page, inode) (addrs_per_page(inode, IS_INODE(page)))
271270

272271
#define NODE_DIR1_BLOCK (DEF_ADDRS_PER_INODE + 1)
273272
#define NODE_DIR2_BLOCK (DEF_ADDRS_PER_INODE + 2)

0 commit comments

Comments
 (0)