tree: https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git xfs-5.15-merge-next head: f63862d45f0c08bf8e32883decfacd2150c74a1b commit: 7f47a994841800acc1f0d7a9c897065e2c4d86ac [39/58] xfs: don't crash with assfail config: parisc-randconfig-r034-20210811 (attached as .config) compiler: hppa-linux-gcc (GCC) 10.3.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://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git/commit/?id=7f47a994841800acc1f0d7a9c897065e2c4d86ac git remote add djwong-xfs https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git git fetch --no-tags djwong-xfs xfs-5.15-merge-next git checkout 7f47a994841800acc1f0d7a9c897065e2c4d86ac # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross ARCH=parisc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): fs/ext4/super.c: In function 'ext4_remount': >> fs/ext4/super.c:5843:6: error: variable 'enable_quota' set but not used [-Werror=unused-but-set-variable] 5843 | int enable_quota = 0; | ^~~~~~~~~~~~ cc1: all warnings being treated as errors vim +/enable_quota +5843 fs/ext4/super.c 673c610033a820 Theodore Ts'o 2010-12-15 5836 617ba13b31fbf5 Mingming Cao 2006-10-11 5837 static int ext4_remount(struct super_block *sb, int *flags, char *data) ac27a0ec112a08 Dave Kleikamp 2006-10-11 5838 { 617ba13b31fbf5 Mingming Cao 2006-10-11 5839 struct ext4_super_block *es; 617ba13b31fbf5 Mingming Cao 2006-10-11 5840 struct ext4_sb_info *sbi = EXT4_SB(sb); f25391ebb475d3 Lukas Czerner 2020-07-23 5841 unsigned long old_sb_flags, vfs_flags; 617ba13b31fbf5 Mingming Cao 2006-10-11 5842 struct ext4_mount_options old_opts; c79d967de3741c Christoph Hellwig 2010-05-19 @5843 int enable_quota = 0; 8a266467b8c484 Theodore Ts'o 2008-07-26 5844 ext4_group_t g; c5e06d101aaf72 Johann Lombardi 2011-05-24 5845 int err = 0; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5846 #ifdef CONFIG_QUOTA 03dafb5f59bd31 Chen Gang 2013-01-24 5847 int i, j; 33458eaba4dfe7 Theodore Ts'o 2018-10-12 5848 char *to_free[EXT4_MAXQUOTAS]; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5849 #endif d4c402d9fd97a5 Curt Wohlgemuth 2010-05-16 5850 char *orig_data = kstrdup(data, GFP_KERNEL); b237e3044450fc Harshad Shirwadkar 2021-04-01 5851 struct ext4_parsed_options parsed_opts; b237e3044450fc Harshad Shirwadkar 2021-04-01 5852 b237e3044450fc Harshad Shirwadkar 2021-04-01 5853 parsed_opts.journal_ioprio = DEFAULT_JOURNAL_IOPRIO; b237e3044450fc Harshad Shirwadkar 2021-04-01 5854 parsed_opts.journal_devnum = 0; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5855 21ac738ede0b49 Chengguang Xu 2018-07-29 5856 if (data && !orig_data) 21ac738ede0b49 Chengguang Xu 2018-07-29 5857 return -ENOMEM; 21ac738ede0b49 Chengguang Xu 2018-07-29 5858 ac27a0ec112a08 Dave Kleikamp 2006-10-11 5859 /* Store the original options */ ac27a0ec112a08 Dave Kleikamp 2006-10-11 5860 old_sb_flags = sb->s_flags; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5861 old_opts.s_mount_opt = sbi->s_mount_opt; a2595b8aa67011 Theodore Ts'o 2010-12-15 5862 old_opts.s_mount_opt2 = sbi->s_mount_opt2; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5863 old_opts.s_resuid = sbi->s_resuid; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5864 old_opts.s_resgid = sbi->s_resgid; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5865 old_opts.s_commit_interval = sbi->s_commit_interval; 30773840c19cea Theodore Ts'o 2009-01-03 5866 old_opts.s_min_batch_time = sbi->s_min_batch_time; 30773840c19cea Theodore Ts'o 2009-01-03 5867 old_opts.s_max_batch_time = sbi->s_max_batch_time; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5868 #ifdef CONFIG_QUOTA ac27a0ec112a08 Dave Kleikamp 2006-10-11 5869 old_opts.s_jquota_fmt = sbi->s_jquota_fmt; a2d4a646e61954 Jan Kara 2014-09-11 5870 for (i = 0; i < EXT4_MAXQUOTAS; i++) 03dafb5f59bd31 Chen Gang 2013-01-24 5871 if (sbi->s_qf_names[i]) { 33458eaba4dfe7 Theodore Ts'o 2018-10-12 5872 char *qf_name = get_qf_name(sb, sbi, i); 33458eaba4dfe7 Theodore Ts'o 2018-10-12 5873 33458eaba4dfe7 Theodore Ts'o 2018-10-12 5874 old_opts.s_qf_names[i] = kstrdup(qf_name, GFP_KERNEL); 03dafb5f59bd31 Chen Gang 2013-01-24 5875 if (!old_opts.s_qf_names[i]) { 03dafb5f59bd31 Chen Gang 2013-01-24 5876 for (j = 0; j < i; j++) 03dafb5f59bd31 Chen Gang 2013-01-24 5877 kfree(old_opts.s_qf_names[j]); 3e36a16375eee3 Wei Yongjun 2013-03-02 5878 kfree(orig_data); 03dafb5f59bd31 Chen Gang 2013-01-24 5879 return -ENOMEM; 03dafb5f59bd31 Chen Gang 2013-01-24 5880 } 03dafb5f59bd31 Chen Gang 2013-01-24 5881 } else 03dafb5f59bd31 Chen Gang 2013-01-24 5882 old_opts.s_qf_names[i] = NULL; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5883 #endif b3881f74b31b7d Theodore Ts'o 2009-01-05 5884 if (sbi->s_journal && sbi->s_journal->j_task->io_context) b237e3044450fc Harshad Shirwadkar 2021-04-01 5885 parsed_opts.journal_ioprio = b237e3044450fc Harshad Shirwadkar 2021-04-01 5886 sbi->s_journal->j_task->io_context->ioprio; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5887 f25391ebb475d3 Lukas Czerner 2020-07-23 5888 /* f25391ebb475d3 Lukas Czerner 2020-07-23 5889 * Some options can be enabled by ext4 and/or by VFS mount flag f25391ebb475d3 Lukas Czerner 2020-07-23 5890 * either way we need to make sure it matches in both *flags and f25391ebb475d3 Lukas Czerner 2020-07-23 5891 * s_flags. Copy those selected flags from *flags to s_flags f25391ebb475d3 Lukas Czerner 2020-07-23 5892 */ f25391ebb475d3 Lukas Czerner 2020-07-23 5893 vfs_flags = SB_LAZYTIME | SB_I_VERSION; f25391ebb475d3 Lukas Czerner 2020-07-23 5894 sb->s_flags = (sb->s_flags & ~vfs_flags) | (*flags & vfs_flags); f25391ebb475d3 Lukas Czerner 2020-07-23 5895 b237e3044450fc Harshad Shirwadkar 2021-04-01 5896 if (!parse_options(data, sb, &parsed_opts, 1)) { ac27a0ec112a08 Dave Kleikamp 2006-10-11 5897 err = -EINVAL; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5898 goto restore_opts; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5899 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 5900 6b992ff2565836 Darrick J. Wong 2014-10-30 5901 if ((old_opts.s_mount_opt & EXT4_MOUNT_JOURNAL_CHECKSUM) ^ c6d3d56dd0ef6c Darrick J. Wong 2014-11-25 5902 test_opt(sb, JOURNAL_CHECKSUM)) { c6d3d56dd0ef6c Darrick J. Wong 2014-11-25 5903 ext4_msg(sb, KERN_ERR, "changing journal_checksum " 2d5b86e048780c Eric Sandeen 2015-02-12 5904 "during remount not supported; ignoring"); 2d5b86e048780c Eric Sandeen 2015-02-12 5905 sbi->s_mount_opt ^= EXT4_MOUNT_JOURNAL_CHECKSUM; 6b992ff2565836 Darrick J. Wong 2014-10-30 5906 } 6b992ff2565836 Darrick J. Wong 2014-10-30 5907 6ae6514b33f941 Piotr Sarna 2013-08-08 5908 if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_JOURNAL_DATA) { 6ae6514b33f941 Piotr Sarna 2013-08-08 5909 if (test_opt2(sb, EXPLICIT_DELALLOC)) { 6ae6514b33f941 Piotr Sarna 2013-08-08 5910 ext4_msg(sb, KERN_ERR, "can't mount with " 6ae6514b33f941 Piotr Sarna 2013-08-08 5911 "both data=journal and delalloc"); 6ae6514b33f941 Piotr Sarna 2013-08-08 5912 err = -EINVAL; 6ae6514b33f941 Piotr Sarna 2013-08-08 5913 goto restore_opts; 6ae6514b33f941 Piotr Sarna 2013-08-08 5914 } 6ae6514b33f941 Piotr Sarna 2013-08-08 5915 if (test_opt(sb, DIOREAD_NOLOCK)) { 6ae6514b33f941 Piotr Sarna 2013-08-08 5916 ext4_msg(sb, KERN_ERR, "can't mount with " 6ae6514b33f941 Piotr Sarna 2013-08-08 5917 "both data=journal and dioread_nolock"); 6ae6514b33f941 Piotr Sarna 2013-08-08 5918 err = -EINVAL; 6ae6514b33f941 Piotr Sarna 2013-08-08 5919 goto restore_opts; 6ae6514b33f941 Piotr Sarna 2013-08-08 5920 } ab04df78181b27 Jan Kara 2016-12-03 5921 } else if (test_opt(sb, DATA_FLAGS) == EXT4_MOUNT_ORDERED_DATA) { ab04df78181b27 Jan Kara 2016-12-03 5922 if (test_opt(sb, JOURNAL_ASYNC_COMMIT)) { ab04df78181b27 Jan Kara 2016-12-03 5923 ext4_msg(sb, KERN_ERR, "can't mount with " ab04df78181b27 Jan Kara 2016-12-03 5924 "journal_async_commit in data=ordered mode"); ab04df78181b27 Jan Kara 2016-12-03 5925 err = -EINVAL; ab04df78181b27 Jan Kara 2016-12-03 5926 goto restore_opts; ab04df78181b27 Jan Kara 2016-12-03 5927 } 923ae0ff925043 Ross Zwisler 2015-02-16 5928 } 923ae0ff925043 Ross Zwisler 2015-02-16 5929 cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5930 if ((sbi->s_mount_opt ^ old_opts.s_mount_opt) & EXT4_MOUNT_NO_MBCACHE) { cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5931 ext4_msg(sb, KERN_ERR, "can't enable nombcache during remount"); cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5932 err = -EINVAL; cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5933 goto restore_opts; cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5934 } cdb7ee4c632759 Tahsin Erdogan 2017-06-22 5935 9b5f6c9b83d912 Harshad Shirwadkar 2020-11-05 5936 if (ext4_test_mount_flag(sb, EXT4_MF_FS_ABORTED)) 54d3adbc29f0c7 Theodore Ts'o 2020-03-28 5937 ext4_abort(sb, EXT4_ERR_ESHUTDOWN, "Abort forced by user"); ac27a0ec112a08 Dave Kleikamp 2006-10-11 5938 1751e8a6cb935e Linus Torvalds 2017-11-27 5939 sb->s_flags = (sb->s_flags & ~SB_POSIXACL) | 1751e8a6cb935e Linus Torvalds 2017-11-27 5940 (test_opt(sb, POSIX_ACL) ? SB_POSIXACL : 0); ac27a0ec112a08 Dave Kleikamp 2006-10-11 5941 ac27a0ec112a08 Dave Kleikamp 2006-10-11 5942 es = sbi->s_es; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5943 b3881f74b31b7d Theodore Ts'o 2009-01-05 5944 if (sbi->s_journal) { 617ba13b31fbf5 Mingming Cao 2006-10-11 5945 ext4_init_journal_params(sb, sbi->s_journal); b237e3044450fc Harshad Shirwadkar 2021-04-01 5946 set_task_ioprio(sbi->s_journal->j_task, parsed_opts.journal_ioprio); b3881f74b31b7d Theodore Ts'o 2009-01-05 5947 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 5948 c92dc856848f32 Jan Kara 2020-11-27 5949 /* Flush outstanding errors before changing fs state */ c92dc856848f32 Jan Kara 2020-11-27 5950 flush_work(&sbi->s_error_work); c92dc856848f32 Jan Kara 2020-11-27 5951 1751e8a6cb935e Linus Torvalds 2017-11-27 5952 if ((bool)(*flags & SB_RDONLY) != sb_rdonly(sb)) { 9b5f6c9b83d912 Harshad Shirwadkar 2020-11-05 5953 if (ext4_test_mount_flag(sb, EXT4_MF_FS_ABORTED)) { ac27a0ec112a08 Dave Kleikamp 2006-10-11 5954 err = -EROFS; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5955 goto restore_opts; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5956 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 5957 1751e8a6cb935e Linus Torvalds 2017-11-27 5958 if (*flags & SB_RDONLY) { 38c03b34391dd2 Theodore Ts'o 2014-03-13 5959 err = sync_filesystem(sb); 38c03b34391dd2 Theodore Ts'o 2014-03-13 5960 if (err < 0) 38c03b34391dd2 Theodore Ts'o 2014-03-13 5961 goto restore_opts; 0f0dd62fddcbd0 Christoph Hellwig 2010-05-19 5962 err = dquot_suspend(sb, -1); 0f0dd62fddcbd0 Christoph Hellwig 2010-05-19 5963 if (err < 0) c79d967de3741c Christoph Hellwig 2010-05-19 5964 goto restore_opts; c79d967de3741c Christoph Hellwig 2010-05-19 5965 ac27a0ec112a08 Dave Kleikamp 2006-10-11 5966 /* ac27a0ec112a08 Dave Kleikamp 2006-10-11 5967 * First of all, the unconditional stuff we have to do ac27a0ec112a08 Dave Kleikamp 2006-10-11 5968 * to disable replay of the journal when we next remount ac27a0ec112a08 Dave Kleikamp 2006-10-11 5969 */ 1751e8a6cb935e Linus Torvalds 2017-11-27 5970 sb->s_flags |= SB_RDONLY; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5971 ac27a0ec112a08 Dave Kleikamp 2006-10-11 5972 /* ac27a0ec112a08 Dave Kleikamp 2006-10-11 5973 * OK, test if we are remounting a valid rw partition ac27a0ec112a08 Dave Kleikamp 2006-10-11 5974 * readonly, and if so set the rdonly flag and then ac27a0ec112a08 Dave Kleikamp 2006-10-11 5975 * mark the partition as valid again. ac27a0ec112a08 Dave Kleikamp 2006-10-11 5976 */ 617ba13b31fbf5 Mingming Cao 2006-10-11 5977 if (!(es->s_state & cpu_to_le16(EXT4_VALID_FS)) && 617ba13b31fbf5 Mingming Cao 2006-10-11 5978 (sbi->s_mount_state & EXT4_VALID_FS)) ac27a0ec112a08 Dave Kleikamp 2006-10-11 5979 es->s_state = cpu_to_le16(sbi->s_mount_state); ac27a0ec112a08 Dave Kleikamp 2006-10-11 5980 11215630aada28 Jan Kara 2020-07-10 5981 if (sbi->s_journal) { 11215630aada28 Jan Kara 2020-07-10 5982 /* 11215630aada28 Jan Kara 2020-07-10 5983 * We let remount-ro finish even if marking fs 11215630aada28 Jan Kara 2020-07-10 5984 * as clean failed... 11215630aada28 Jan Kara 2020-07-10 5985 */ 617ba13b31fbf5 Mingming Cao 2006-10-11 5986 ext4_mark_recovery_complete(sb, es); 11215630aada28 Jan Kara 2020-07-10 5987 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 5988 } else { a13fb1a4533f26 Eric Sandeen 2009-08-18 5989 /* Make sure we can mount this feature set readwrite */ e2b911c53584a9 Darrick J. Wong 2015-10-17 5990 if (ext4_has_feature_readonly(sb) || 2cb5cc8b09c939 Darrick J. Wong 2015-02-12 5991 !ext4_feature_set_ok(sb, 0)) { ac27a0ec112a08 Dave Kleikamp 2006-10-11 5992 err = -EROFS; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5993 goto restore_opts; ac27a0ec112a08 Dave Kleikamp 2006-10-11 5994 } 8a266467b8c484 Theodore Ts'o 2008-07-26 5995 /* 8a266467b8c484 Theodore Ts'o 2008-07-26 5996 * Make sure the group descriptor checksums 0b8e58a140cae2 Andreas Dilger 2009-06-03 5997 * are sane. If they aren't, refuse to remount r/w. 8a266467b8c484 Theodore Ts'o 2008-07-26 5998 */ 8a266467b8c484 Theodore Ts'o 2008-07-26 5999 for (g = 0; g < sbi->s_groups_count; g++) { 8a266467b8c484 Theodore Ts'o 2008-07-26 6000 struct ext4_group_desc *gdp = 8a266467b8c484 Theodore Ts'o 2008-07-26 6001 ext4_get_group_desc(sb, g, NULL); 8a266467b8c484 Theodore Ts'o 2008-07-26 6002 feb0ab32a57e4e Darrick J. Wong 2012-04-29 6003 if (!ext4_group_desc_csum_verify(sb, g, gdp)) { b31e15527a9bb7 Eric Sandeen 2009-06-04 6004 ext4_msg(sb, KERN_ERR, b31e15527a9bb7 Eric Sandeen 2009-06-04 6005 "ext4_remount: Checksum for group %u failed (%u!=%u)", e2b911c53584a9 Darrick J. Wong 2015-10-17 6006 g, le16_to_cpu(ext4_group_desc_csum(sb, g, gdp)), 8a266467b8c484 Theodore Ts'o 2008-07-26 6007 le16_to_cpu(gdp->bg_checksum)); 6a797d27378389 Darrick J. Wong 2015-10-17 6008 err = -EFSBADCRC; 8a266467b8c484 Theodore Ts'o 2008-07-26 6009 goto restore_opts; 8a266467b8c484 Theodore Ts'o 2008-07-26 6010 } 8a266467b8c484 Theodore Ts'o 2008-07-26 6011 } 8a266467b8c484 Theodore Ts'o 2008-07-26 6012 ead6596b9e776a Eric Sandeen 2007-02-10 6013 /* ead6596b9e776a Eric Sandeen 2007-02-10 6014 * If we have an unprocessed orphan list hanging ead6596b9e776a Eric Sandeen 2007-02-10 6015 * around from a previously readonly bdev mount, ead6596b9e776a Eric Sandeen 2007-02-10 6016 * require a full umount/remount for now. ead6596b9e776a Eric Sandeen 2007-02-10 6017 */ ead6596b9e776a Eric Sandeen 2007-02-10 6018 if (es->s_last_orphan) { b31e15527a9bb7 Eric Sandeen 2009-06-04 6019 ext4_msg(sb, KERN_WARNING, "Couldn't " ead6596b9e776a Eric Sandeen 2007-02-10 6020 "remount RDWR because of unprocessed " ead6596b9e776a Eric Sandeen 2007-02-10 6021 "orphan inode list. Please " b31e15527a9bb7 Eric Sandeen 2009-06-04 6022 "umount/remount instead"); ead6596b9e776a Eric Sandeen 2007-02-10 6023 err = -EINVAL; ead6596b9e776a Eric Sandeen 2007-02-10 6024 goto restore_opts; ead6596b9e776a Eric Sandeen 2007-02-10 6025 } ead6596b9e776a Eric Sandeen 2007-02-10 6026 ac27a0ec112a08 Dave Kleikamp 2006-10-11 6027 /* ac27a0ec112a08 Dave Kleikamp 2006-10-11 6028 * Mounting a RDONLY partition read-write, so reread ac27a0ec112a08 Dave Kleikamp 2006-10-11 6029 * and store the current valid flag. (It may have ac27a0ec112a08 Dave Kleikamp 2006-10-11 6030 * been changed by e2fsck since we originally mounted ac27a0ec112a08 Dave Kleikamp 2006-10-11 6031 * the partition.) ac27a0ec112a08 Dave Kleikamp 2006-10-11 6032 */ 11215630aada28 Jan Kara 2020-07-10 6033 if (sbi->s_journal) { 11215630aada28 Jan Kara 2020-07-10 6034 err = ext4_clear_journal_err(sb, es); 11215630aada28 Jan Kara 2020-07-10 6035 if (err) 11215630aada28 Jan Kara 2020-07-10 6036 goto restore_opts; 11215630aada28 Jan Kara 2020-07-10 6037 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 6038 sbi->s_mount_state = le16_to_cpu(es->s_state); c89128a0083814 Jaegeuk Kim 2018-05-13 6039 c89128a0083814 Jaegeuk Kim 2018-05-13 6040 err = ext4_setup_super(sb, es, 0); c89128a0083814 Jaegeuk Kim 2018-05-13 6041 if (err) c89128a0083814 Jaegeuk Kim 2018-05-13 6042 goto restore_opts; c89128a0083814 Jaegeuk Kim 2018-05-13 6043 1751e8a6cb935e Linus Torvalds 2017-11-27 6044 sb->s_flags &= ~SB_RDONLY; e2b911c53584a9 Darrick J. Wong 2015-10-17 6045 if (ext4_has_feature_mmp(sb)) c5e06d101aaf72 Johann Lombardi 2011-05-24 6046 if (ext4_multi_mount_protect(sb, c5e06d101aaf72 Johann Lombardi 2011-05-24 6047 le64_to_cpu(es->s_mmp_block))) { c5e06d101aaf72 Johann Lombardi 2011-05-24 6048 err = -EROFS; c5e06d101aaf72 Johann Lombardi 2011-05-24 6049 goto restore_opts; c5e06d101aaf72 Johann Lombardi 2011-05-24 6050 } c79d967de3741c Christoph Hellwig 2010-05-19 6051 enable_quota = 1; ac27a0ec112a08 Dave Kleikamp 2006-10-11 6052 } ac27a0ec112a08 Dave Kleikamp 2006-10-11 6053 } bfff68738f1cb5 Lukas Czerner 2010-10-27 6054 bfff68738f1cb5 Lukas Czerner 2010-10-27 6055 /* bfff68738f1cb5 Lukas Czerner 2010-10-27 6056 * Reinitialize lazy itable initialization thread based on bfff68738f1cb5 Lukas Czerner 2010-10-27 6057 * current settings bfff68738f1cb5 Lukas Czerner 2010-10-27 6058 */ bc98a42c1f7d0f David Howells 2017-07-17 6059 if (sb_rdonly(sb) || !test_opt(sb, INIT_INODE_TABLE)) bfff68738f1cb5 Lukas Czerner 2010-10-27 6060 ext4_unregister_li_request(sb); bfff68738f1cb5 Lukas Czerner 2010-10-27 6061 else { bfff68738f1cb5 Lukas Czerner 2010-10-27 6062 ext4_group_t first_not_zeroed; bfff68738f1cb5 Lukas Czerner 2010-10-27 6063 first_not_zeroed = ext4_has_uninit_itable(sb); bfff68738f1cb5 Lukas Czerner 2010-10-27 6064 ext4_register_li_request(sb, first_not_zeroed); bfff68738f1cb5 Lukas Czerner 2010-10-27 6065 } bfff68738f1cb5 Lukas Czerner 2010-10-27 6066 0f5bde1db174f6 Jan Kara 2020-07-28 6067 /* 0f5bde1db174f6 Jan Kara 2020-07-28 6068 * Handle creation of system zone data early because it can fail. 0f5bde1db174f6 Jan Kara 2020-07-28 6069 * Releasing of existing data is done when we are sure remount will 0f5bde1db174f6 Jan Kara 2020-07-28 6070 * succeed. 0f5bde1db174f6 Jan Kara 2020-07-28 6071 */ dd0db94f305c9f Chunguang Xu 2020-09-24 6072 if (test_opt(sb, BLOCK_VALIDITY) && !sbi->s_system_blks) { d176b1f62f242a Jan Kara 2020-07-28 6073 err = ext4_setup_system_zone(sb); d176b1f62f242a Jan Kara 2020-07-28 6074 if (err) d176b1f62f242a Jan Kara 2020-07-28 6075 goto restore_opts; 0f5bde1db174f6 Jan Kara 2020-07-28 6076 } d176b1f62f242a Jan Kara 2020-07-28 6077 c89128a0083814 Jaegeuk Kim 2018-05-13 6078 if (sbi->s_journal == NULL && !(old_sb_flags & SB_RDONLY)) { 4392fbc4bab57d Jan Kara 2020-12-16 6079 err = ext4_commit_super(sb); c89128a0083814 Jaegeuk Kim 2018-05-13 6080 if (err) c89128a0083814 Jaegeuk Kim 2018-05-13 6081 goto restore_opts; c89128a0083814 Jaegeuk Kim 2018-05-13 6082 } 0390131ba84fd3 Frank Mayhar 2009-01-07 6083 :::::: The code at line 5843 was first introduced by commit :::::: c79d967de3741ceb60c5bbbf1b6f97eab9a89838 quota: move remount handling into the filesystem :::::: TO: Christoph Hellwig :::::: CC: Jan Kara --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org