From: kbuild test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: [linux-stable-rc:linux-5.4.y 4066/4655] drivers/staging/exfat/exfat_super.c:3835:12: warning: stack frame size of 1040 bytes in function 'exfat_fill_super'
Date: Thu, 23 Apr 2020 13:48:11 +0800 [thread overview]
Message-ID: <202004231306.hljV9CL3%lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 9520 bytes --]
TO: Dirk Mueller <dmueller@suse.com>
CC: "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>
CC: David Gibson <david@gibson.dropbear.id.au>
CC: Rob Herring <robh@kernel.org>
Hi Dirk,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.4.y
head: 186764443bf32f12e07093aaff52dd4a25231781
commit: 35b34d264cb347909ec89d9fa895900035d5438c [4066/4655] scripts/dtc: Remove redundant YYLOC global declaration
config: powerpc-randconfig-a001-20200423 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project 2de52422acf04662b45599f77c14ce1b2cec2b81)
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install powerpc cross compiling tool for clang build
# apt-get install binutils-powerpc-linux-gnu
git checkout 35b34d264cb347909ec89d9fa895900035d5438c
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=powerpc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> drivers/staging/exfat/exfat_super.c:3835:12: warning: stack frame size of 1040 bytes in function 'exfat_fill_super' [-Wframe-larger-than=]
static int exfat_fill_super(struct super_block *sb, void *data, int silent)
^
>> drivers/staging/exfat/exfat_super.c:2200:12: warning: stack frame size of 1568 bytes in function 'exfat_readdir' [-Wframe-larger-than=]
static int exfat_readdir(struct file *filp, struct dir_context *ctx)
^
2 warnings generated.
vim +/exfat_fill_super +3835 drivers/staging/exfat/exfat_super.c
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3834
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 @3835 static int exfat_fill_super(struct super_block *sb, void *data, int silent)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3836 {
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3837 struct inode *root_inode = NULL;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3838 struct exfat_sb_info *sbi;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3839 int debug, ret;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3840 long error;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3841 char buf[50];
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3842
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3843 /*
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3844 * GFP_KERNEL is ok here, because while we do hold the
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3845 * supeblock lock, memory pressure can't call back into
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3846 * the filesystem, since we're only just about to mount
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3847 * it and have no inodes etc active!
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3848 */
6e58fc14d7ed91 Jia-Ye Li 2019-09-25 3849 sbi = kvzalloc(sizeof(*sbi), GFP_KERNEL);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3850 if (!sbi)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3851 return -ENOMEM;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3852 mutex_init(&sbi->s_lock);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3853 sb->s_fs_info = sbi;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3854 sb->s_flags |= SB_NODIRATIME;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3855 sb->s_magic = EXFAT_SUPER_MAGIC;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3856 sb->s_op = &exfat_sops;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3857 sb->s_export_op = &exfat_export_ops;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3858
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3859 error = parse_options(data, silent, &debug, &sbi->options);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3860 if (error)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3861 goto out_fail;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3862
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3863 setup_dops(sb);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3864
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3865 error = -EIO;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3866 sb_min_blocksize(sb, 512);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3867 sb->s_maxbytes = 0x7fffffffffffffffLL; /* maximum file size */
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3868
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3869 ret = ffsMountVol(sb);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3870 if (ret) {
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3871 if (!silent)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3872 pr_err("[EXFAT] ffsMountVol failed\n");
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3873
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3874 goto out_fail;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3875 }
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3876
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3877 /* set up enough so that it can read an inode */
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3878 exfat_hash_init(sb);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3879
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3880 /*
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3881 * The low byte of FAT's first entry must have same value with
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3882 * media-field. But in real world, too many devices is
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3883 * writing wrong value. So, removed that validity check.
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3884 *
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3885 * if (FAT_FIRST_ENT(sb, media) != first)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3886 */
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3887
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3888 /* codepage is not meaningful in exfat */
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3889 if (sbi->fs_info.vol_type != EXFAT) {
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3890 error = -EINVAL;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3891 sprintf(buf, "cp%d", sbi->options.codepage);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3892 sbi->nls_disk = load_nls(buf);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3893 if (!sbi->nls_disk) {
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3894 pr_err("[EXFAT] Codepage %s not found\n", buf);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3895 goto out_fail2;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3896 }
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3897 }
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3898
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3899 sbi->nls_io = load_nls(sbi->options.iocharset);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3900
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3901 error = -ENOMEM;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3902 root_inode = new_inode(sb);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3903 if (!root_inode)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3904 goto out_fail2;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3905 root_inode->i_ino = EXFAT_ROOT_INO;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3906 SET_IVERSION(root_inode, 1);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3907
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3908 error = exfat_read_root(root_inode);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3909 if (error < 0)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3910 goto out_fail2;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3911 error = -ENOMEM;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3912 exfat_attach(root_inode, EXFAT_I(root_inode)->i_pos);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3913 insert_inode_hash(root_inode);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3914 sb->s_root = d_make_root(root_inode);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3915 if (!sb->s_root) {
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3916 pr_err("[EXFAT] Getting the root inode failed\n");
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3917 goto out_fail2;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3918 }
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3919
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3920 return 0;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3921
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3922 out_fail2:
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3923 ffsUmountVol(sb);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3924 out_fail:
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3925 if (root_inode)
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3926 iput(root_inode);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3927 sb->s_fs_info = NULL;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3928 exfat_free_super(sbi);
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3929 return error;
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3930 }
c48c9f7ff32b8b Valdis Kletnieks 2019-08-28 3931
:::::: The code at line 3835 was first introduced by commit
:::::: c48c9f7ff32b8b3965a08e40eb6763682d905b5d staging: exfat: add exfat filesystem code to staging
:::::: TO: Valdis Klētnieks <valdis.kletnieks@vt.edu>
:::::: CC: Greg Kroah-Hartman <gregkh@linuxfoundation.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: 30303 bytes --]
reply other threads:[~2020-04-23 5:48 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=202004231306.hljV9CL3%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.