Hi Pengyang,

On 12/12, Hou Pengyang wrote:
> In fsync_node_pages path, after locking the last_page for setting dirty,
> we should check if the page has been truncated. Or there may be a mem leak,
> as this dirty last_page will NOT be found in next page-cache travese.
> 
> This patch adds page->mapping checking, and will NOT rewrite the page if
> it has been truncated.
> 
> Signed-off-by: Hou Pengyang <[email protected]>
> ---
>  fs/f2fs/node.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> index c1bbfdc..78c5b50 100644
> --- a/fs/f2fs/node.c
> +++ b/fs/f2fs/node.c
> @@ -1410,6 +1410,11 @@ int fsync_node_pages(struct f2fs_sb_info *sbi, struct 
> inode *inode,
>                       "Retry to write fsync mark: ino=%u, idx=%lx",
>                                       ino, last_page->index);
>               lock_page(last_page);

We grabbed a reference count for this last_page, and thus, it won't be released.
Something that I missed?

Thanks,

> +             if (unlikely(last_page->mapping != NODE_MAPPING(sbi))) {
> +                     unlock_page(last_page);
> +                     f2fs_put_page(last_page, 0);
> +                     goto out;
> +             }
>               f2fs_wait_on_page_writeback(last_page, NODE, true);
>               set_page_dirty(last_page);
>               unlock_page(last_page);
> -- 
> 2.10.1
> 
> 
> ------------------------------------------------------------------------------
> Developer Access Program for Intel Xeon Phi Processors
> Access to Intel Xeon Phi processor-based developer platforms.
> With one year of Intel Parallel Studio XE.
> Training and support from Colfax.
> Order your platform today.http://sdm.link/xeonphi
> _______________________________________________
> Linux-f2fs-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most 
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to