All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Kemeng Shi <shikemeng@huaweicloud.com>,
	tytso@mit.edu, adilger.kernel@dilger.ca, ojaswin@linux.ibm.com
Cc: oe-kbuild-all@lists.linux.dev, linux-ext4@vger.kernel.org,
	linux-kernel@vger.kernel.org, shikemeng@huaweicloud.com
Subject: Re: [PATCH v2 18/19] ext4: add some kunit stub for mballoc kunit test
Date: Thu, 13 Apr 2023 01:45:43 +0800	[thread overview]
Message-ID: <202304130140.2kslXTgi-lkp@intel.com> (raw)
In-Reply-To: <20230412172833.2317696-19-shikemeng@huaweicloud.com>

Hi Kemeng,

kernel test robot noticed the following build warnings:

[auto build test WARNING on tytso-ext4/dev]
[also build test WARNING on next-20230412]
[cannot apply to linus/master v6.3-rc6]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Kemeng-Shi/ext4-fix-wrong-unit-use-in-ext4_mb_normalize_request/20230412-172757
base:   https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git dev
patch link:    https://lore.kernel.org/r/20230412172833.2317696-19-shikemeng%40huaweicloud.com
patch subject: [PATCH v2 18/19] ext4: add some kunit stub for mballoc kunit test
config: loongarch-randconfig-r004-20230409 (https://download.01.org/0day-ci/archive/20230413/202304130140.2kslXTgi-lkp@intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/357d528a1ead868fa038c4bfe426744ac7c34ea6
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Kemeng-Shi/ext4-fix-wrong-unit-use-in-ext4_mb_normalize_request/20230412-172757
        git checkout 357d528a1ead868fa038c4bfe426744ac7c34ea6
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=loongarch SHELL=/bin/bash fs/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@intel.com>
| Link: https://lore.kernel.org/oe-kbuild-all/202304130140.2kslXTgi-lkp@intel.com/

All warnings (new ones prefixed by >>):

   fs/ext4/mballoc.c: In function 'ext4_mb_mark_group_bb':
>> fs/ext4/mballoc.c:3752:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
    3752 |         handle_t *handle = mc->handle;
         |         ^~~~~~~~
--
   fs/ext4/balloc.c: In function 'ext4_get_group_desc':
>> fs/ext4/balloc.c:275:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     275 |         unsigned int group_desc;
         |         ^~~~~~~~
   fs/ext4/balloc.c: In function 'ext4_read_block_bitmap_nowait':
   fs/ext4/balloc.c:435:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     435 |         struct ext4_group_desc *desc;
         |         ^~~~~~
   fs/ext4/balloc.c: In function 'ext4_wait_block_bitmap':
   fs/ext4/balloc.c:538:9: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
     538 |         struct ext4_group_desc *desc;
         |         ^~~~~~


vim +3752 fs/ext4/mballoc.c

80cb2f14af5f5f Kemeng Shi 2023-04-13  3743  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3744  static int
80cb2f14af5f5f Kemeng Shi 2023-04-13  3745  ext4_mb_mark_group_bb(struct ext4_mark_context *mc, ext4_group_t group,
a760807c4967d7 Kemeng Shi 2023-04-13  3746  		      ext4_grpblk_t blkoff, ext4_grpblk_t len, int flags)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3747  {
357d528a1ead86 Kemeng Shi 2023-04-13  3748  #ifdef CONFIG_EXT4_KUNIT_TESTS
357d528a1ead86 Kemeng Shi 2023-04-13  3749  	KUNIT_STATIC_STUB_REDIRECT(ext4_mb_mark_group_bb,
357d528a1ead86 Kemeng Shi 2023-04-13  3750  				   mc, group, blkoff, len, flags);
357d528a1ead86 Kemeng Shi 2023-04-13  3751  #endif
a760807c4967d7 Kemeng Shi 2023-04-13 @3752  	handle_t *handle = mc->handle;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3753  	struct super_block *sb = mc->sb;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3754  	struct ext4_sb_info *sbi = EXT4_SB(sb);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3755  	struct buffer_head *bitmap_bh = NULL;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3756  	struct ext4_group_desc *gdp;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3757  	struct buffer_head *gdp_bh;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3758  	int err;
a760807c4967d7 Kemeng Shi 2023-04-13  3759  	unsigned int i, already, changed = len;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3760  
a760807c4967d7 Kemeng Shi 2023-04-13  3761  	mc->changed = 0;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3762  	bitmap_bh = ext4_read_block_bitmap(sb, group);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3763  	if (IS_ERR(bitmap_bh))
80cb2f14af5f5f Kemeng Shi 2023-04-13  3764  		return PTR_ERR(bitmap_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3765  
a760807c4967d7 Kemeng Shi 2023-04-13  3766  	if (handle) {
a760807c4967d7 Kemeng Shi 2023-04-13  3767  		BUFFER_TRACE(bitmap_bh, "getting write access");
a760807c4967d7 Kemeng Shi 2023-04-13  3768  		err = ext4_journal_get_write_access(handle, sb, bitmap_bh,
a760807c4967d7 Kemeng Shi 2023-04-13  3769  						    EXT4_JTR_NONE);
a760807c4967d7 Kemeng Shi 2023-04-13  3770  		if (err)
a760807c4967d7 Kemeng Shi 2023-04-13  3771  			goto out_err;
a760807c4967d7 Kemeng Shi 2023-04-13  3772  	}
a760807c4967d7 Kemeng Shi 2023-04-13  3773  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3774  	err = -EIO;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3775  	gdp = ext4_get_group_desc(sb, group, &gdp_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3776  	if (!gdp)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3777  		goto out_err;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3778  
a760807c4967d7 Kemeng Shi 2023-04-13  3779  	if (handle) {
a760807c4967d7 Kemeng Shi 2023-04-13  3780  		BUFFER_TRACE(gdp_bh, "get_write_access");
a760807c4967d7 Kemeng Shi 2023-04-13  3781  		err = ext4_journal_get_write_access(handle, sb, gdp_bh,
a760807c4967d7 Kemeng Shi 2023-04-13  3782  						    EXT4_JTR_NONE);
a760807c4967d7 Kemeng Shi 2023-04-13  3783  		if (err)
a760807c4967d7 Kemeng Shi 2023-04-13  3784  			goto out_err;
a760807c4967d7 Kemeng Shi 2023-04-13  3785  	}
a760807c4967d7 Kemeng Shi 2023-04-13  3786  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3787  	ext4_lock_group(sb, group);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3788  	if (ext4_has_group_desc_csum(sb) &&
80cb2f14af5f5f Kemeng Shi 2023-04-13  3789  	    (gdp->bg_flags & cpu_to_le16(EXT4_BG_BLOCK_UNINIT))) {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3790  		gdp->bg_flags &= cpu_to_le16(~EXT4_BG_BLOCK_UNINIT);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3791  		ext4_free_group_clusters_set(sb, gdp,
80cb2f14af5f5f Kemeng Shi 2023-04-13  3792  			ext4_free_clusters_after_init(sb, group, gdp));
80cb2f14af5f5f Kemeng Shi 2023-04-13  3793  	}
80cb2f14af5f5f Kemeng Shi 2023-04-13  3794  
a760807c4967d7 Kemeng Shi 2023-04-13  3795  	if (flags & EXT4_MB_BITMAP_MARKED_CHECK) {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3796  		already = 0;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3797  		for (i = 0; i < len; i++)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3798  			if (mb_test_bit(blkoff + i, bitmap_bh->b_data) ==
80cb2f14af5f5f Kemeng Shi 2023-04-13  3799  					mc->state)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3800  				already++;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3801  		changed = len - already;
a760807c4967d7 Kemeng Shi 2023-04-13  3802  	}
80cb2f14af5f5f Kemeng Shi 2023-04-13  3803  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3804  	if (mc->state) {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3805  		mb_set_bits(bitmap_bh->b_data, blkoff, len);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3806  		ext4_free_group_clusters_set(sb, gdp,
80cb2f14af5f5f Kemeng Shi 2023-04-13  3807  			ext4_free_group_clusters(sb, gdp) - changed);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3808  	} else {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3809  		mb_clear_bits(bitmap_bh->b_data, blkoff, len);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3810  		ext4_free_group_clusters_set(sb, gdp,
80cb2f14af5f5f Kemeng Shi 2023-04-13  3811  			ext4_free_group_clusters(sb, gdp) + changed);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3812  	}
80cb2f14af5f5f Kemeng Shi 2023-04-13  3813  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3814  	ext4_block_bitmap_csum_set(sb, gdp, bitmap_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3815  	ext4_group_desc_csum_set(sb, group, gdp);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3816  	ext4_unlock_group(sb, group);
a760807c4967d7 Kemeng Shi 2023-04-13  3817  	mc->changed = changed;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3818  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3819  	if (sbi->s_log_groups_per_flex) {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3820  		ext4_group_t flex_group = ext4_flex_group(sbi, group);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3821  		struct flex_groups *fg = sbi_array_rcu_deref(sbi,
80cb2f14af5f5f Kemeng Shi 2023-04-13  3822  					   s_flex_groups, flex_group);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3823  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3824  		if (mc->state)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3825  			atomic64_sub(changed, &fg->free_clusters);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3826  		else
80cb2f14af5f5f Kemeng Shi 2023-04-13  3827  			atomic64_add(changed, &fg->free_clusters);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3828  	}
80cb2f14af5f5f Kemeng Shi 2023-04-13  3829  
a760807c4967d7 Kemeng Shi 2023-04-13  3830  	err = ext4_handle_dirty_metadata(handle, NULL, bitmap_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3831  	if (err)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3832  		goto out_err;
a760807c4967d7 Kemeng Shi 2023-04-13  3833  	err = ext4_handle_dirty_metadata(handle, NULL, gdp_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3834  	if (err)
80cb2f14af5f5f Kemeng Shi 2023-04-13  3835  		goto out_err;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3836  
a760807c4967d7 Kemeng Shi 2023-04-13  3837  	if (flags & EXT4_MB_SYNC_UPDATE) {
80cb2f14af5f5f Kemeng Shi 2023-04-13  3838  		sync_dirty_buffer(bitmap_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3839  		sync_dirty_buffer(gdp_bh);
a760807c4967d7 Kemeng Shi 2023-04-13  3840  	}
80cb2f14af5f5f Kemeng Shi 2023-04-13  3841  
80cb2f14af5f5f Kemeng Shi 2023-04-13  3842  out_err:
80cb2f14af5f5f Kemeng Shi 2023-04-13  3843  	brelse(bitmap_bh);
80cb2f14af5f5f Kemeng Shi 2023-04-13  3844  	return err;
80cb2f14af5f5f Kemeng Shi 2023-04-13  3845  }
c9de560ded61fa Alex Tomas 2008-01-29  3846  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests

  reply	other threads:[~2023-04-12 17:46 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-12 17:28 [PATCH v2 00/19] Fixes, cleanups and unit test for mballoc Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 01/19] ext4: fix wrong unit use in ext4_mb_normalize_request Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 02/19] ext4: fix unit mismatch in ext4_mb_new_blocks_simple Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 03/19] ext4: fix wrong unit use in ext4_mb_find_by_goal Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 04/19] ext4: treat stripe in block unit Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 05/19] ext4: add EXT4_MB_HINT_GOAL_ONLY test in ext4_mb_use_preallocated Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 06/19] ext4: remove ext4_block_group and ext4_block_group_offset declaration Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 07/19] ext4: try all groups in ext4_mb_new_blocks_simple Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 08/19] ext4: get block from bh before pass it to ext4_free_blocks_simple in ext4_free_blocks Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 09/19] ext4: remove unsed parameter and unnecessary forward declaration of ext4_mb_new_blocks_simple Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 10/19] ext4: fix wrong unit use in ext4_mb_clear_bb Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 11/19] ext4: fix wrong unit use in ext4_mb_new_blocks Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 12/19] ext4: factor out codes to update block bitmap and group descriptor on disk from ext4_mb_mark_bb Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 13/19] ext4: call ext4_mb_mark_group_bb in ext4_free_blocks_simple Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 14/19] ext4: extent ext4_mb_mark_group_bb to support allocation under journal Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 15/19] ext4: call ext4_mb_mark_group_bb in ext4_mb_mark_diskspace_used Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 16/19] ext4: call ext4_mb_mark_group_bb in ext4_mb_clear_bb Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 17/19] ext4: call ext4_mb_mark_group_bb in ext4_group_add_blocks Kemeng Shi
2023-04-12 17:28 ` [PATCH v2 18/19] ext4: add some kunit stub for mballoc kunit test Kemeng Shi
2023-04-12 17:45   ` kernel test robot [this message]
2023-04-12 18:16   ` kernel test robot
2023-04-12 17:28 ` [PATCH v2 19/19] ext4: add first unit test for ext4_mb_new_blocks_simple in mballoc Kemeng Shi
2023-04-12 18:16   ` kernel test robot
2023-04-12 18:58   ` kernel test robot
2023-04-12 19:49   ` kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202304130140.2kslXTgi-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=ojaswin@linux.ibm.com \
    --cc=shikemeng@huaweicloud.com \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.