[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ff5a93ff-1046-182d-627c-a3a2efa3bfd6@huawei.com>
Date: Tue, 7 Nov 2017 13:45:52 +0800
From: Chao Yu <yuchao0@...wei.com>
To: Fan Li <fanofcode.li@...sung.com>, 'Chao Yu' <chao@...nel.org>,
"'Jaegeuk Kim'" <jaegeuk@...nel.org>
CC: <linux-kernel@...r.kernel.org>,
<linux-f2fs-devel@...ts.sourceforge.net>
Subject: Re: [f2fs-dev] [PATCH] f2fs: keep scanning until enough free nids are
acquired
On 2017/11/7 11:04, Fan Li wrote:
> In current version, after scan_free_nid_bits, the scan is over if nid_cnt[FREE_NID] != 0.
> In most cases, there are still free nids in the free list during the scan, and scan_free_nid_bits
> usually can't increase nid_cnt[FREE_NID].
> It causes that __build_free_nids is called many times without solving the shortage
> of the free nids. This patch fixes that.
>
> Signed-off-by: Fan li <fanofcode.li@...sung.com>
Reviewed-by: Chao Yu <yuchao0@...wei.com>
Thanks,
> ---
> fs/f2fs/node.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> index 3d0d1be..5cef118 100644
> --- a/fs/f2fs/node.c
> +++ b/fs/f2fs/node.c
> @@ -2010,7 +2010,7 @@ static void __build_free_nids(struct f2fs_sb_info *sbi, bool sync, bool mount)
> /* try to find free nids in free_nid_bitmap */
> scan_free_nid_bits(sbi);
>
> - if (nm_i->nid_cnt[FREE_NID])
> + if (nm_i->nid_cnt[FREE_NID] >= NAT_ENTRY_PER_BLOCK)
> return;
> }
>
> --
> 2.7.4
>
>
>
Powered by blists - more mailing lists