Linux EXT4 FS development
 help / color / mirror / Atom feed
* [PATCH] ext2: adjust block num when retry allocation
@ 2019-10-20 23:23 Chengguang Xu
  2019-10-21  9:18 ` Jan Kara
  0 siblings, 1 reply; 3+ messages in thread
From: Chengguang Xu @ 2019-10-20 23:23 UTC (permalink / raw)
  To: jack; +Cc: linux-ext4, Chengguang Xu

Set block num to original *count in a case
of retrying allocation in case num < *count

Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
---
Hi Jan,

This patch is only compile-tested, I'm not sure if this
kind of unexpected condition which causes reallocation
will actually happen but baesd on the code the fix seems
correct and better.

 fs/ext2/balloc.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
index e0cc55164505..924c1c765306 100644
--- a/fs/ext2/balloc.c
+++ b/fs/ext2/balloc.c
@@ -1404,6 +1404,7 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal,
 		 * use.  So we may want to selectively mark some of the blocks
 		 * as free
 		 */
+		num = *count;
 		goto retry_alloc;
 	}
 
-- 
2.21.0




^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] ext2: adjust block num when retry allocation
  2019-10-20 23:23 [PATCH] ext2: adjust block num when retry allocation Chengguang Xu
@ 2019-10-21  9:18 ` Jan Kara
  2019-10-22  5:36   ` Chengguang Xu
  0 siblings, 1 reply; 3+ messages in thread
From: Jan Kara @ 2019-10-21  9:18 UTC (permalink / raw)
  To: Chengguang Xu; +Cc: jack, linux-ext4

On Mon 21-10-19 07:23:26, Chengguang Xu wrote:
> Set block num to original *count in a case
> of retrying allocation in case num < *count
> 
> Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
> ---
> Hi Jan,
> 
> This patch is only compile-tested, I'm not sure if this
> kind of unexpected condition which causes reallocation
> will actually happen but baesd on the code the fix seems
> correct and better.

Yeah, you are right that we should reset 'num' back to *count. Although the
practial effect of this is minimal - we take this code path only when the
filesystem is corrupted. But still... Patch applied. Thanks!

								Honza
> 
>  fs/ext2/balloc.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
> index e0cc55164505..924c1c765306 100644
> --- a/fs/ext2/balloc.c
> +++ b/fs/ext2/balloc.c
> @@ -1404,6 +1404,7 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal,
>  		 * use.  So we may want to selectively mark some of the blocks
>  		 * as free
>  		 */
> +		num = *count;
>  		goto retry_alloc;
>  	}
>  
> -- 
> 2.21.0
> 
> 
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] ext2: adjust block num when retry allocation
  2019-10-21  9:18 ` Jan Kara
@ 2019-10-22  5:36   ` Chengguang Xu
  0 siblings, 0 replies; 3+ messages in thread
From: Chengguang Xu @ 2019-10-22  5:36 UTC (permalink / raw)
  To: Jan Kara; +Cc: jack, linux-ext4

 ---- 在 星期一, 2019-10-21 17:18:00 Jan Kara <jack@suse.cz> 撰写 ----
 > On Mon 21-10-19 07:23:26, Chengguang Xu wrote:
 > > Set block num to original *count in a case
 > > of retrying allocation in case num < *count
 > > 
 > > Signed-off-by: Chengguang Xu <cgxu519@mykernel.net>
 > > ---
 > > Hi Jan,
 > > 
 > > This patch is only compile-tested, I'm not sure if this
 > > kind of unexpected condition which causes reallocation
 > > will actually happen but baesd on the code the fix seems
 > > correct and better.
 > 
 > Yeah, you are right that we should reset 'num' back to *count. Although the
 > practial effect of this is minimal - we take this code path only when the
 > filesystem is corrupted. But still... Patch applied. Thanks!
 
Thanks for your review. I found another relevant bug in ext2_try_to_allocate()
today, I'll fix it up and  also plan to do some code cleanups for the allocation logic.
Do you prefer two separate patches for bugfix and cleanup or just put all in a patch series?

Thanks,
Chengguang







^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-10-22  5:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-20 23:23 [PATCH] ext2: adjust block num when retry allocation Chengguang Xu
2019-10-21  9:18 ` Jan Kara
2019-10-22  5:36   ` Chengguang Xu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox