Re: [PATCH v3] ext4: fix log printing of ext4_mb_regular_allocator()
From: Andreas Dilger <hidden>
Date: 2020-08-15 21:47:46
On Aug 14, 2020, at 6:10 PM, brookxu [off-list ref] wrote:
Fix log printing of ext4_mb_regular_allocator(),it may be an unintentional behavior. V3: It may be better to add a comma between start and len, which is convenient for script processing. V2: Add more valuable information, such as group, start, len, lost. Signed-off-by: Chunguang Xu <redacted>
A very minor cleanup possible, but not really worthwhile to resubmit if Ted wants to apply it. Either way, it looks good. Reviewed-by: Andreas Dilger <redacted>
quoted hunk ↗ jump to hunk
--- fs/ext4/mballoc.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-)diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index c0a331e..70b110f 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c@@ -2218,6 +2218,7 @@ static int ext4_mb_good_group_nolock(struct ext4_allocation_context *ac,struct ext4_sb_info *sbi; struct super_block *sb; struct ext4_buddy e4b; + unsigned int lost; sb = ac->ac_sb; sbi = EXT4_SB(sb);@@ -2341,22 +2342,24 @@ static int ext4_mb_good_group_nolock(struct ext4_allocation_context *ac,* We've been searching too long. Let's try to allocate * the best chunk we've found so far */ - ext4_mb_try_best_found(ac, &e4b); if (ac->ac_status != AC_STATUS_FOUND) { /* * Someone more lucky has already allocated it. * The only thing we can do is just take first * found block(s) - printk(KERN_DEBUG "EXT4-fs: someone won our chunk\n"); */ + lost = (unsigned int)atomic_inc_return(&sbi->s_mb_lost_chunks);
(minor) no need for a typecast here? The return type is already "int", so it would be better to declare "int lost" and that would make the line a bit shorter.
+ mb_debug(sb, "lost chunk, group: %u, start: %d, len: %d, lost: %u\n", + ac->ac_b_ex.fe_group, ac->ac_b_ex.fe_start, + ac->ac_b_ex.fe_len, lost); + ac->ac_b_ex.fe_group = 0; ac->ac_b_ex.fe_start = 0; ac->ac_b_ex.fe_len = 0; ac->ac_status = AC_STATUS_CONTINUE; ac->ac_flags |= EXT4_MB_HINT_FIRST; cr = 3; - atomic_inc(&sbi->s_mb_lost_chunks); goto repeat; } } -- 1.8.3.1
Cheers, Andreas
Attachments
- signature.asc [application/pgp-signature] 873 bytes