No matter inline data flag is set or not, get_node_page is going work now. But actually we can avoid it by puting the check of inline data flag in advance to save this cpu cycle.
Signed-off-by: Shawn Lin <shawn....@rock-chips.com> --- fs/f2fs/inline.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/fs/f2fs/inline.c b/fs/f2fs/inline.c index 358214e..0182106 100644 --- a/fs/f2fs/inline.c +++ b/fs/f2fs/inline.c @@ -81,17 +81,15 @@ int f2fs_read_inline_data(struct inode *inode, struct page *page) { struct page *ipage; + if (!f2fs_has_inline_data(inode)) + return -EAGAIN; + ipage = get_node_page(F2FS_I_SB(inode), inode->i_ino); if (IS_ERR(ipage)) { unlock_page(page); return PTR_ERR(ipage); } - if (!f2fs_has_inline_data(inode)) { - f2fs_put_page(ipage, 1); - return -EAGAIN; - } - if (page->index) zero_user_segment(page, 0, PAGE_CACHE_SIZE); else -- 2.3.7 ------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785111&iu=/4140 _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel