From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.kernel.org ([198.145.29.136]:52092 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756803AbcIGNgZ (ORCPT ); Wed, 7 Sep 2016 09:36:25 -0400 Subject: Re: [f2fs-dev] [PATCH] f2fs: check free_sections for defragmentation To: Jaegeuk Kim , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net References: <20160901204605.21448-1-jaegeuk@kernel.org> From: Chao Yu Message-ID: <33559c8d-fa39-219c-fff5-18e5586957e7@kernel.org> Date: Wed, 7 Sep 2016 21:35:30 +0800 MIME-Version: 1.0 In-Reply-To: <20160901204605.21448-1-jaegeuk@kernel.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-fsdevel-owner@vger.kernel.org List-ID: Hi Jaegeuk, On 2016/9/2 4:46, Jaegeuk Kim wrote: > Fix wrong condition check for defragmentation of a file. > > Signed-off-by: Jaegeuk Kim > --- > fs/f2fs/file.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c > index 37c24be..a8aa6fd 100644 > --- a/fs/f2fs/file.c > +++ b/fs/f2fs/file.c > @@ -2037,7 +2037,7 @@ static int f2fs_defragment_range(struct f2fs_sb_info *sbi, > * avoid defragment running in SSR mode when free section are allocated > * intensively > */ > - if (has_not_enough_free_secs(sbi, sec_num)) { > + if (free_sections(sbi) <= sec_num) { Why don't we check dirty dentry/node/imeta blocks here? they will be generated at any time after f2fs_balance_fs. So, isn't original condition more strict than new one? Thanks, > err = -EAGAIN; > goto out; > } >