tree: https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git nls head: 82e650bbf0fe816841c219b7ba7feec601d1f47b commit: cc1ee227e8906d1434da440e5b8267fc4b928590 [20/47] ext4: fix use-after-free race in ext4_remount()'s error path config: sh-espt_defconfig (attached as .config) compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross git checkout cc1ee227e8906d1434da440e5b8267fc4b928590 # save the attached .config to linux build tree GCC_VERSION=7.2.0 make.cross ARCH=sh All error/warnings (new ones prefixed by >>): In file included from include/linux/srcu.h:33:0, from include/linux/notifier.h:16, from include/linux/memory_hotplug.h:7, from include/linux/mmzone.h:758, from include/linux/gfp.h:6, from include/linux/umh.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from fs/ext4/super.c:20: fs/ext4/super.c: In function 'get_qf_name': >> fs/ext4/super.c:931:40: error: 'struct ext4_sb_info' has no member named 's_qf_names'; did you mean 's_mb_maxs'? return rcu_dereference_protected(sbi->s_qf_names[type], ^ include/linux/rcupdate.h:358:12: note: in definition of macro '__rcu_dereference_protected' ((typeof(*p) __force __kernel *)(p)); \ ^ >> fs/ext4/super.c:931:9: note: in expansion of macro 'rcu_dereference_protected' return rcu_dereference_protected(sbi->s_qf_names[type], ^~~~~~~~~~~~~~~~~~~~~~~~~ >> fs/ext4/super.c:931:40: error: 'struct ext4_sb_info' has no member named 's_qf_names'; did you mean 's_mb_maxs'? return rcu_dereference_protected(sbi->s_qf_names[type], ^ include/linux/rcupdate.h:358:35: note: in definition of macro '__rcu_dereference_protected' ((typeof(*p) __force __kernel *)(p)); \ ^ >> fs/ext4/super.c:931:9: note: in expansion of macro 'rcu_dereference_protected' return rcu_dereference_protected(sbi->s_qf_names[type], ^~~~~~~~~~~~~~~~~~~~~~~~~ fs/ext4/super.c: In function 'parse_options': fs/ext4/super.c:1976:26: warning: unused variable 'grp_qf_name' [-Wunused-variable] char *p, *usr_qf_name, *grp_qf_name; ^~~~~~~~~~~ fs/ext4/super.c:1976:12: warning: unused variable 'usr_qf_name' [-Wunused-variable] char *p, *usr_qf_name, *grp_qf_name; ^~~~~~~~~~~ vim +931 fs/ext4/super.c 922 923 /* 924 * This is a helper function which is used in the mount/remount 925 * codepaths (which holds s_umount) to fetch the quota file name. 926 */ 927 static inline char *get_qf_name(struct super_block *sb, 928 struct ext4_sb_info *sbi, 929 int type) 930 { > 931 return rcu_dereference_protected(sbi->s_qf_names[type], 932 lockdep_is_held(&sb->s_umount)); 933 } 934 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip