All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [linux-stable-rc:linux-4.19.y 2397/2938] fs//ufs/balloc.c:135:6: warning: stack frame size of 1472 bytes in function 'ufs_free_blocks'
Date: Thu, 21 Jan 2021 06:43:16 +0800	[thread overview]
Message-ID: <202101210601.AeDSKJz1-lkp@intel.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 17855 bytes --]

Hi Michael,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.19.y
head:   43d555d83c3f1fb8168367ca5b47c3a6570ca487
commit: 57ac40ee09cea2ec90f71c6f49b15d0d82667b38 [2397/2938] powerpc: Drop -me200 addition to build flags
config: powerpc64-randconfig-r002-20210120 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 22b68440e1647e16b5ee24b924986207173c02d1)
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
        # install powerpc64 cross compiling tool for clang build
        # apt-get install binutils-powerpc64-linux-gnu
        # https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit/?id=57ac40ee09cea2ec90f71c6f49b15d0d82667b38
        git remote add linux-stable-rc https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
        git fetch --no-tags linux-stable-rc linux-4.19.y
        git checkout 57ac40ee09cea2ec90f71c6f49b15d0d82667b38
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> fs//ufs/balloc.c:135:6: warning: stack frame size of 1472 bytes in function 'ufs_free_blocks' [-Wframe-larger-than=]
   void ufs_free_blocks(struct inode *inode, u64 fragment, unsigned count)
        ^
   1 warning generated.
--
   drivers/target/target_core_pr.c:1649:35: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
                                   dest_node_acl->initiatorname, dest_rtpi);
                                                                 ^~~~~~~~~
   include/linux/printk.h:335:26: note: expanded from macro 'pr_debug'
           dynamic_pr_debug(fmt, ##__VA_ARGS__)
                            ~~~    ^~~~~~~~~~~
   include/linux/dynamic_debug.h:128:10: note: expanded from macro 'dynamic_pr_debug'
                                      ##__VA_ARGS__);              \
                                        ^~~~~~~~~~~
   drivers/target/target_core_pr.c:1687:5: warning: format specifies type 'unsigned short' but the argument has type 'u32' (aka 'unsigned int') [-Wformat]
                                   dest_rtpi);
                                   ^~~~~~~~~
   include/linux/printk.h:303:33: note: expanded from macro 'pr_err'
           printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
                                  ~~~     ^~~~~~~~~~~
>> drivers/target/target_core_pr.c:2012:23: warning: stack frame size of 1056 bytes in function 'core_scsi3_update_and_write_aptpl' [-Wframe-larger-than=]
   static sense_reason_t core_scsi3_update_and_write_aptpl(struct se_device *dev, bool aptpl)
                         ^
   3 warnings generated.
--
   drivers/staging/erofs/unzip_vle.c:19:6: warning: no previous prototype for function 'z_erofs_exit_zip_subsystem' [-Wmissing-prototypes]
   void z_erofs_exit_zip_subsystem(void)
        ^
   drivers/staging/erofs/unzip_vle.c:19:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void z_erofs_exit_zip_subsystem(void)
   ^
   static 
   drivers/staging/erofs/unzip_vle.c:40:5: warning: no previous prototype for function 'z_erofs_init_zip_subsystem' [-Wmissing-prototypes]
   int z_erofs_init_zip_subsystem(void)
       ^
   drivers/staging/erofs/unzip_vle.c:40:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int z_erofs_init_zip_subsystem(void)
   ^
   static 
   drivers/staging/erofs/unzip_vle.c:513:6: warning: no previous prototype for function 'erofs_workgroup_free_rcu' [-Wmissing-prototypes]
   void erofs_workgroup_free_rcu(struct erofs_workgroup *grp)
        ^
   drivers/staging/erofs/unzip_vle.c:513:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void erofs_workgroup_free_rcu(struct erofs_workgroup *grp)
   ^
   static 
   drivers/staging/erofs/unzip_vle.c:528:6: warning: no previous prototype for function 'z_erofs_vle_work_release' [-Wmissing-prototypes]
   void z_erofs_vle_work_release(struct z_erofs_vle_work *work)
        ^
   drivers/staging/erofs/unzip_vle.c:528:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void z_erofs_vle_work_release(struct z_erofs_vle_work *work)
   ^
   static 
   drivers/staging/erofs/unzip_vle.c:1567:5: warning: no previous prototype for function 'z_erofs_map_blocks_iter' [-Wmissing-prototypes]
   int z_erofs_map_blocks_iter(struct inode *inode,
       ^
   drivers/staging/erofs/unzip_vle.c:1567:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int z_erofs_map_blocks_iter(struct inode *inode,
   ^
   static 
>> drivers/staging/erofs/unzip_vle.c:595:12: warning: stack frame size of 1264 bytes in function 'z_erofs_do_read_page' [-Wframe-larger-than=]
   static int z_erofs_do_read_page(struct z_erofs_vle_frontend *fe,
              ^
   6 warnings generated.
--
>> drivers/staging/fbtft/fbtft-core.c:1106:5: warning: stack frame size of 1136 bytes in function 'fbtft_init_display' [-Wframe-larger-than=]
   int fbtft_init_display(struct fbtft_par *par)
       ^
   1 warning generated.
   drivers/staging/fbtft/fbtft-core.c:653: warning: Function parameter or member 'pdata' not described in 'fbtft_framebuffer_alloc'
--
>> drivers/block/pktcdvd.c:1427:12: warning: stack frame size of 1280 bytes in function 'kcdrwd' [-Wframe-larger-than=]
   static int kcdrwd(void *foobar)
              ^
>> drivers/block/pktcdvd.c:1322:13: warning: stack frame size of 1056 bytes in function 'pkt_run_state_machine' [-Wframe-larger-than=]
   static void pkt_run_state_machine(struct pktcdvd_device *pd, struct packet_data *pkt)
               ^
   2 warnings generated.
--
>> fs//btrfs/relocation.c:646:22: warning: stack frame size of 1072 bytes in function 'build_backref_tree' [-Wframe-larger-than=]
   struct backref_node *build_backref_tree(struct reloc_control *rc,
                        ^
   1 warning generated.
--
>> fs//btrfs/send.c:3882:12: warning: stack frame size of 1200 bytes in function 'process_recorded_refs' [-Wframe-larger-than=]
   static int process_recorded_refs(struct send_ctx *sctx, int *pending_move)
              ^
   1 warning generated.
--
   drivers/md/dm-integrity.c:3616:12: warning: no previous prototype for function 'dm_integrity_init' [-Wmissing-prototypes]
   int __init dm_integrity_init(void)
              ^
   drivers/md/dm-integrity.c:3616:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   int __init dm_integrity_init(void)
   ^
   static 
   drivers/md/dm-integrity.c:3635:6: warning: no previous prototype for function 'dm_integrity_exit' [-Wmissing-prototypes]
   void dm_integrity_exit(void)
        ^
   drivers/md/dm-integrity.c:3635:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
   void dm_integrity_exit(void)
   ^
   static 
>> drivers/md/dm-integrity.c:1643:13: warning: stack frame size of 1104 bytes in function 'dm_integrity_map_continue' [-Wframe-larger-than=]
   static void dm_integrity_map_continue(struct dm_integrity_io *dio, bool from_map)
               ^
>> drivers/md/dm-integrity.c:1492:13: warning: stack frame size of 1216 bytes in function '__journal_read_write' [-Wframe-larger-than=]
   static bool __journal_read_write(struct dm_integrity_io *dio, struct bio *bio,
               ^
   4 warnings generated.
--
>> drivers/md/raid1.c:2496:13: warning: stack frame size of 1584 bytes in function 'raid1d' [-Wframe-larger-than=]
   static void raid1d(struct md_thread *thread)
               ^
   1 warning generated.
--
   drivers/md/raid10.c:2938:17: warning: stack frame size of 2208 bytes in function 'raid10_sync_request' [-Wframe-larger-than=]
   static sector_t raid10_sync_request(struct mddev *mddev, sector_t sector_nr,
                   ^
>> drivers/md/raid10.c:2748:13: warning: stack frame size of 1360 bytes in function 'raid10d' [-Wframe-larger-than=]
   static void raid10d(struct md_thread *thread)
               ^
   2 warnings generated.
--
>> drivers/md/raid5.c:984:13: warning: stack frame size of 1584 bytes in function 'ops_run_io' [-Wframe-larger-than=]
   static void ops_run_io(struct stripe_head *sh, struct stripe_head_state *s)
               ^
   1 warning generated.
   drivers/md/raid5.c:2242: warning: Function parameter or member 'num' not described in 'scribble_alloc'
   drivers/md/raid5.c:2242: warning: Function parameter or member 'cnt' not described in 'scribble_alloc'
   drivers/md/raid5.c:2242: warning: Function parameter or member 'flags' not described in 'scribble_alloc'
   drivers/md/raid5.c:3709: warning: Function parameter or member 'sh' not described in 'handle_stripe_fill'
   drivers/md/raid5.c:3709: warning: Function parameter or member 's' not described in 'handle_stripe_fill'
   drivers/md/raid5.c:3709: warning: Function parameter or member 'disks' not described in 'handle_stripe_fill'
..

Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for FSL_EMB_PERFMON
   Depends on E500 || PPC_83xx
   Selected by
   - PPC_FSL_BOOK3E


vim +/ufs_free_blocks +135 fs//ufs/balloc.c

^1da177e4c3f415 Linus Torvalds    2005-04-16  131  
^1da177e4c3f415 Linus Torvalds    2005-04-16  132  /*
^1da177e4c3f415 Linus Torvalds    2005-04-16  133   * Free 'count' fragments from fragment number 'fragment' (free whole blocks)
^1da177e4c3f415 Linus Torvalds    2005-04-16  134   */
54fb996ac15c401 Evgeniy Dushistov 2007-02-12 @135  void ufs_free_blocks(struct inode *inode, u64 fragment, unsigned count)
6ef4d6bf86a8296 Evgeniy Dushistov 2006-06-25  136  {
^1da177e4c3f415 Linus Torvalds    2005-04-16  137  	struct super_block * sb;
^1da177e4c3f415 Linus Torvalds    2005-04-16  138  	struct ufs_sb_private_info * uspi;
^1da177e4c3f415 Linus Torvalds    2005-04-16  139  	struct ufs_cg_private_info * ucpi;
^1da177e4c3f415 Linus Torvalds    2005-04-16  140  	struct ufs_cylinder_group * ucg;
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  141  	unsigned overflow, cgno, bit, end_bit, i;
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  142  	u64 blkno;
^1da177e4c3f415 Linus Torvalds    2005-04-16  143  	
^1da177e4c3f415 Linus Torvalds    2005-04-16  144  	sb = inode->i_sb;
^1da177e4c3f415 Linus Torvalds    2005-04-16  145  	uspi = UFS_SB(sb)->s_uspi;
^1da177e4c3f415 Linus Torvalds    2005-04-16  146  
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  147  	UFSD("ENTER, fragment %llu, count %u\n",
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  148  	     (unsigned long long)fragment, count);
^1da177e4c3f415 Linus Torvalds    2005-04-16  149  	
^1da177e4c3f415 Linus Torvalds    2005-04-16  150  	if ((fragment & uspi->s_fpbmask) || (count & uspi->s_fpbmask)) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  151  		ufs_error (sb, "ufs_free_blocks", "internal error, "
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  152  			   "fragment %llu, count %u\n",
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  153  			   (unsigned long long)fragment, count);
^1da177e4c3f415 Linus Torvalds    2005-04-16  154  		goto failed;
^1da177e4c3f415 Linus Torvalds    2005-04-16  155  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  156  
cdd9eefdf905e92 Fabian Frederick  2015-06-10  157  	mutex_lock(&UFS_SB(sb)->s_lock);
^1da177e4c3f415 Linus Torvalds    2005-04-16  158  	
^1da177e4c3f415 Linus Torvalds    2005-04-16  159  do_more:
^1da177e4c3f415 Linus Torvalds    2005-04-16  160  	overflow = 0;
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  161  	cgno = ufs_dtog(uspi, fragment);
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  162  	bit = ufs_dtogd(uspi, fragment);
^1da177e4c3f415 Linus Torvalds    2005-04-16  163  	if (cgno >= uspi->s_ncg) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  164  		ufs_panic (sb, "ufs_free_blocks", "freeing blocks are outside device");
2e006393ba5b599 Evgeniy Dushistov 2006-06-25  165  		goto failed_unlock;
^1da177e4c3f415 Linus Torvalds    2005-04-16  166  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  167  	end_bit = bit + count;
^1da177e4c3f415 Linus Torvalds    2005-04-16  168  	if (end_bit > uspi->s_fpg) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  169  		overflow = bit + count - uspi->s_fpg;
^1da177e4c3f415 Linus Torvalds    2005-04-16  170  		count -= overflow;
^1da177e4c3f415 Linus Torvalds    2005-04-16  171  		end_bit -= overflow;
^1da177e4c3f415 Linus Torvalds    2005-04-16  172  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  173  
^1da177e4c3f415 Linus Torvalds    2005-04-16  174  	ucpi = ufs_load_cylinder (sb, cgno);
^1da177e4c3f415 Linus Torvalds    2005-04-16  175  	if (!ucpi) 
2e006393ba5b599 Evgeniy Dushistov 2006-06-25  176  		goto failed_unlock;
9695ef16ed4e00b Evgeniy Dushistov 2006-06-25  177  	ucg = ubh_get_ucg (UCPI_UBH(ucpi));
^1da177e4c3f415 Linus Torvalds    2005-04-16  178  	if (!ufs_cg_chkmagic(sb, ucg)) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  179  		ufs_panic (sb, "ufs_free_blocks", "internal error, bad magic number on cg %u", cgno);
2e006393ba5b599 Evgeniy Dushistov 2006-06-25  180  		goto failed_unlock;
^1da177e4c3f415 Linus Torvalds    2005-04-16  181  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  182  
^1da177e4c3f415 Linus Torvalds    2005-04-16  183  	for (i = bit; i < end_bit; i += uspi->s_fpb) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  184  		blkno = ufs_fragstoblks(i);
9695ef16ed4e00b Evgeniy Dushistov 2006-06-25  185  		if (ubh_isblockset(UCPI_UBH(ucpi), ucpi->c_freeoff, blkno)) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  186  			ufs_error(sb, "ufs_free_blocks", "freeing free fragment");
^1da177e4c3f415 Linus Torvalds    2005-04-16  187  		}
9695ef16ed4e00b Evgeniy Dushistov 2006-06-25  188  		ubh_setblock(UCPI_UBH(ucpi), ucpi->c_freeoff, blkno);
eb315d2ae614493 Al Viro           2017-06-08  189  		inode_sub_bytes(inode, uspi->s_fpb << uspi->s_fshift);
^1da177e4c3f415 Linus Torvalds    2005-04-16  190  		if ((UFS_SB(sb)->s_flags & UFS_CG_MASK) == UFS_CG_44BSD)
^1da177e4c3f415 Linus Torvalds    2005-04-16  191  			ufs_clusteracct (sb, ucpi, blkno, 1);
^1da177e4c3f415 Linus Torvalds    2005-04-16  192  
^1da177e4c3f415 Linus Torvalds    2005-04-16  193  		fs32_add(sb, &ucg->cg_cs.cs_nbfree, 1);
ee3ffd6c1263236 Evgeniy Dushistov 2006-06-25  194  		uspi->cs_total.cs_nbfree++;
^1da177e4c3f415 Linus Torvalds    2005-04-16  195  		fs32_add(sb, &UFS_SB(sb)->fs_cs(cgno).cs_nbfree, 1);
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  196  
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  197  		if (uspi->fs_magic != UFS2_MAGIC) {
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  198  			unsigned cylno = ufs_cbtocylno(i);
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  199  
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  200  			fs16_add(sb, &ubh_cg_blks(ucpi, cylno,
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  201  						  ufs_cbtorpos(i)), 1);
^1da177e4c3f415 Linus Torvalds    2005-04-16  202  			fs32_add(sb, &ubh_cg_blktot(ucpi, cylno), 1);
^1da177e4c3f415 Linus Torvalds    2005-04-16  203  		}
54fb996ac15c401 Evgeniy Dushistov 2007-02-12  204  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  205  
9695ef16ed4e00b Evgeniy Dushistov 2006-06-25  206  	ubh_mark_buffer_dirty (USPI_UBH(uspi));
9695ef16ed4e00b Evgeniy Dushistov 2006-06-25  207  	ubh_mark_buffer_dirty (UCPI_UBH(ucpi));
1751e8a6cb935e5 Linus Torvalds    2017-11-27  208  	if (sb->s_flags & SB_SYNCHRONOUS)
9cb569d601e0b93 Christoph Hellwig 2010-08-11  209  		ubh_sync_block(UCPI_UBH(ucpi));
^1da177e4c3f415 Linus Torvalds    2005-04-16  210  
^1da177e4c3f415 Linus Torvalds    2005-04-16  211  	if (overflow) {
^1da177e4c3f415 Linus Torvalds    2005-04-16  212  		fragment += count;
^1da177e4c3f415 Linus Torvalds    2005-04-16  213  		count = overflow;
^1da177e4c3f415 Linus Torvalds    2005-04-16  214  		goto do_more;
^1da177e4c3f415 Linus Torvalds    2005-04-16  215  	}
^1da177e4c3f415 Linus Torvalds    2005-04-16  216  
9e9ad5f408889db Artem Bityutskiy  2012-07-12  217  	ufs_mark_sb_dirty(sb);
cdd9eefdf905e92 Fabian Frederick  2015-06-10  218  	mutex_unlock(&UFS_SB(sb)->s_lock);
abf5d15fd2e5251 Evgeniy Dushistov 2006-06-25  219  	UFSD("EXIT\n");
^1da177e4c3f415 Linus Torvalds    2005-04-16  220  	return;
^1da177e4c3f415 Linus Torvalds    2005-04-16  221  
2e006393ba5b599 Evgeniy Dushistov 2006-06-25  222  failed_unlock:
cdd9eefdf905e92 Fabian Frederick  2015-06-10  223  	mutex_unlock(&UFS_SB(sb)->s_lock);
2e006393ba5b599 Evgeniy Dushistov 2006-06-25  224  failed:
abf5d15fd2e5251 Evgeniy Dushistov 2006-06-25  225  	UFSD("EXIT (FAILED)\n");
^1da177e4c3f415 Linus Torvalds    2005-04-16  226  	return;
^1da177e4c3f415 Linus Torvalds    2005-04-16  227  }
^1da177e4c3f415 Linus Torvalds    2005-04-16  228  

:::::: The code at line 135 was first introduced by commit
:::::: 54fb996ac15c4014fa4d6b0ec8e42da134204897 [PATCH] ufs2 write: block allocation update

:::::: TO: Evgeniy Dushistov <dushistov@mail.ru>
:::::: CC: Linus Torvalds <torvalds@woody.linux-foundation.org>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 26863 bytes --]

                 reply	other threads:[~2021-01-20 22:43 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202101210601.AeDSKJz1-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    /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.