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.