All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: [paragon-software-group-ntfs3:master 12/13] fs/ntfs3/super.c:1241 ntfs_fill_super() error: uninitialized symbol 'attr'.
Date: Thu, 18 Apr 2024 16:29:38 +0800	[thread overview]
Message-ID: <202404181603.e7TTtQJr-lkp@intel.com> (raw)

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: ntfs3@lists.linux.dev
TO: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>

tree:   https://github.com/Paragon-Software-Group/linux-ntfs3.git master
head:   21b6b5bc6774720b8298d9e362bec01a53ec693b
commit: 6be30a7aa20b0ed8e6d065c714c41ff8cf419c17 [12/13] fs/ntfs3: Remove cached label from sbi
:::::: branch date: 20 hours ago
:::::: commit date: 20 hours ago
config: x86_64-randconfig-161-20240418 (https://download.01.org/0day-ci/archive/20240418/202404181603.e7TTtQJr-lkp@intel.com/config)
compiler: gcc-10 (Ubuntu 10.5.0-1ubuntu1) 10.5.0

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202404181603.e7TTtQJr-lkp@intel.com/

smatch warnings:
fs/ntfs3/super.c:1241 ntfs_fill_super() error: uninitialized symbol 'attr'.

vim +/attr +1241 fs/ntfs3/super.c

82cae269cfa953 Konstantin Komarov 2021-08-13  1172  
e8b8e97f91b80f Kari Argillander   2021-08-03  1173  /*
e8b8e97f91b80f Kari Argillander   2021-08-03  1174   * ntfs_fill_super - Try to mount.
e8b8e97f91b80f Kari Argillander   2021-08-03  1175   */
610f8f5a7baf99 Kari Argillander   2021-09-07  1176  static int ntfs_fill_super(struct super_block *sb, struct fs_context *fc)
82cae269cfa953 Konstantin Komarov 2021-08-13  1177  {
82cae269cfa953 Konstantin Komarov 2021-08-13  1178  	int err;
610f8f5a7baf99 Kari Argillander   2021-09-07  1179  	struct ntfs_sb_info *sbi = sb->s_fs_info;
82cae269cfa953 Konstantin Komarov 2021-08-13  1180  	struct block_device *bdev = sb->s_bdev;
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1181  	struct ntfs_mount_options *options;
10b4f12c702839 Kari Argillander   2021-09-09  1182  	struct inode *inode;
82cae269cfa953 Konstantin Komarov 2021-08-13  1183  	struct ntfs_inode *ni;
ec5fc720137625 Konstantin Komarov 2022-10-11  1184  	size_t i, tt, bad_len, bad_frags;
82cae269cfa953 Konstantin Komarov 2021-08-13  1185  	CLST vcn, lcn, len;
82cae269cfa953 Konstantin Komarov 2021-08-13  1186  	struct ATTRIB *attr;
82cae269cfa953 Konstantin Komarov 2021-08-13  1187  	const struct VOLUME_INFO *info;
82cae269cfa953 Konstantin Komarov 2021-08-13  1188  	u16 *shared;
82cae269cfa953 Konstantin Komarov 2021-08-13  1189  	struct MFT_REF ref;
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1190  	bool ro = sb_rdonly(sb);
f1d325b8c75e90 Konstantin Komarov 2023-05-08  1191  	struct NTFS_BOOT *boot2 = NULL;
82cae269cfa953 Konstantin Komarov 2021-08-13  1192  
82cae269cfa953 Konstantin Komarov 2021-08-13  1193  	ref.high = 0;
82cae269cfa953 Konstantin Komarov 2021-08-13  1194  
82cae269cfa953 Konstantin Komarov 2021-08-13  1195  	sbi->sb = sb;
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1196  	sbi->options = options = fc->fs_private;
cd39981fb92adf Konstantin Komarov 2022-05-11  1197  	fc->fs_private = NULL;
82cae269cfa953 Konstantin Komarov 2021-08-13  1198  	sb->s_flags |= SB_NODIRATIME;
82cae269cfa953 Konstantin Komarov 2021-08-13  1199  	sb->s_magic = 0x7366746e; // "ntfs"
82cae269cfa953 Konstantin Komarov 2021-08-13  1200  	sb->s_op = &ntfs_sops;
82cae269cfa953 Konstantin Komarov 2021-08-13  1201  	sb->s_export_op = &ntfs_export_ops;
82cae269cfa953 Konstantin Komarov 2021-08-13  1202  	sb->s_time_gran = NTFS_TIME_GRAN; // 100 nsec
82cae269cfa953 Konstantin Komarov 2021-08-13  1203  	sb->s_xattr = ntfs_xattr_handlers;
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1204  	sb->s_d_op = options->nocase ? &ntfs_dentry_ops : NULL;
82cae269cfa953 Konstantin Komarov 2021-08-13  1205  
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1206  	options->nls = ntfs_load_nls(options->nls_name);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1207  	if (IS_ERR(options->nls)) {
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1208  		options->nls = NULL;
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1209  		errorf(fc, "Cannot load nls %s", options->nls_name);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1210  		err = -EINVAL;
9b75450d6c5801 Konstantin Komarov 2021-09-28  1211  		goto out;
610f8f5a7baf99 Kari Argillander   2021-09-07  1212  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1213  
7b47ef52d0a202 Christoph Hellwig  2022-04-15  1214  	if (bdev_max_discard_sectors(bdev) && bdev_discard_granularity(bdev)) {
7b47ef52d0a202 Christoph Hellwig  2022-04-15  1215  		sbi->discard_granularity = bdev_discard_granularity(bdev);
82cae269cfa953 Konstantin Komarov 2021-08-13  1216  		sbi->discard_granularity_mask_inv =
82cae269cfa953 Konstantin Komarov 2021-08-13  1217  			~(u64)(sbi->discard_granularity - 1);
82cae269cfa953 Konstantin Komarov 2021-08-13  1218  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1219  
e8b8e97f91b80f Kari Argillander   2021-08-03  1220  	/* Parse boot. */
f09dac9afb8e3c Christoph Hellwig  2022-04-15  1221  	err = ntfs_init_from_boot(sb, bdev_logical_block_size(bdev),
f1d325b8c75e90 Konstantin Komarov 2023-05-08  1222  				  bdev_nr_bytes(bdev), &boot2);
82cae269cfa953 Konstantin Komarov 2021-08-13  1223  	if (err)
9b75450d6c5801 Konstantin Komarov 2021-09-28  1224  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1225  
82cae269cfa953 Konstantin Komarov 2021-08-13  1226  	/*
e8b8e97f91b80f Kari Argillander   2021-08-03  1227  	 * Load $Volume. This should be done before $LogFile
ad4d82df0d44e5 Konstantin Komarov 2024-04-16  1228  	 * 'cause 'sbi->volume.ni' is used in 'ntfs_set_state'.
82cae269cfa953 Konstantin Komarov 2021-08-13  1229  	 */
82cae269cfa953 Konstantin Komarov 2021-08-13  1230  	ref.low = cpu_to_le32(MFT_REC_VOL);
82cae269cfa953 Konstantin Komarov 2021-08-13  1231  	ref.seq = cpu_to_le16(MFT_REC_VOL);
82cae269cfa953 Konstantin Komarov 2021-08-13  1232  	inode = ntfs_iget5(sb, &ref, &NAME_VOLUME);
82cae269cfa953 Konstantin Komarov 2021-08-13  1233  	if (IS_ERR(inode)) {
9b75450d6c5801 Konstantin Komarov 2021-09-28  1234  		err = PTR_ERR(inode);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1235  		ntfs_err(sb, "Failed to load $Volume (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1236  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1237  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1238  
82cae269cfa953 Konstantin Komarov 2021-08-13  1239  	ni = ntfs_i(inode);
82cae269cfa953 Konstantin Komarov 2021-08-13  1240  
82cae269cfa953 Konstantin Komarov 2021-08-13 @1241  	attr = ni_find_attr(ni, attr, NULL, ATTR_VOL_INFO, NULL, 0, NULL, NULL);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1242  	if (!attr || is_attr_ext(attr) ||
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1243  	    !(info = resident_data_ex(attr, SIZEOF_ATTRIBUTE_VOLUME_INFO))) {
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1244  		ntfs_err(sb, "$Volume is corrupted.");
82cae269cfa953 Konstantin Komarov 2021-08-13  1245  		err = -EINVAL;
9b75450d6c5801 Konstantin Komarov 2021-09-28  1246  		goto put_inode_out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1247  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1248  
82cae269cfa953 Konstantin Komarov 2021-08-13  1249  	sbi->volume.major_ver = info->major_ver;
82cae269cfa953 Konstantin Komarov 2021-08-13  1250  	sbi->volume.minor_ver = info->minor_ver;
82cae269cfa953 Konstantin Komarov 2021-08-13  1251  	sbi->volume.flags = info->flags;
82cae269cfa953 Konstantin Komarov 2021-08-13  1252  	sbi->volume.ni = ni;
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1253  	if (info->flags & VOLUME_FLAG_DIRTY) {
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1254  		sbi->volume.real_dirty = true;
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1255  		ntfs_info(sb, "It is recommened to use chkdsk.");
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1256  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1257  
e8b8e97f91b80f Kari Argillander   2021-08-03  1258  	/* Load $MFTMirr to estimate recs_mirr. */
82cae269cfa953 Konstantin Komarov 2021-08-13  1259  	ref.low = cpu_to_le32(MFT_REC_MIRR);
82cae269cfa953 Konstantin Komarov 2021-08-13  1260  	ref.seq = cpu_to_le16(MFT_REC_MIRR);
82cae269cfa953 Konstantin Komarov 2021-08-13  1261  	inode = ntfs_iget5(sb, &ref, &NAME_MIRROR);
82cae269cfa953 Konstantin Komarov 2021-08-13  1262  	if (IS_ERR(inode)) {
9b75450d6c5801 Konstantin Komarov 2021-09-28  1263  		err = PTR_ERR(inode);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1264  		ntfs_err(sb, "Failed to load $MFTMirr (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1265  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1266  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1267  
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1268  	sbi->mft.recs_mirr = ntfs_up_cluster(sbi, inode->i_size) >>
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1269  			     sbi->record_bits;
82cae269cfa953 Konstantin Komarov 2021-08-13  1270  
82cae269cfa953 Konstantin Komarov 2021-08-13  1271  	iput(inode);
82cae269cfa953 Konstantin Komarov 2021-08-13  1272  
d3624466b56dd5 Konstantin Komarov 2021-08-31  1273  	/* Load LogFile to replay. */
82cae269cfa953 Konstantin Komarov 2021-08-13  1274  	ref.low = cpu_to_le32(MFT_REC_LOG);
82cae269cfa953 Konstantin Komarov 2021-08-13  1275  	ref.seq = cpu_to_le16(MFT_REC_LOG);
82cae269cfa953 Konstantin Komarov 2021-08-13  1276  	inode = ntfs_iget5(sb, &ref, &NAME_LOGFILE);
82cae269cfa953 Konstantin Komarov 2021-08-13  1277  	if (IS_ERR(inode)) {
9b75450d6c5801 Konstantin Komarov 2021-09-28  1278  		err = PTR_ERR(inode);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1279  		ntfs_err(sb, "Failed to load \x24LogFile (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1280  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1281  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1282  
82cae269cfa953 Konstantin Komarov 2021-08-13  1283  	ni = ntfs_i(inode);
82cae269cfa953 Konstantin Komarov 2021-08-13  1284  
82cae269cfa953 Konstantin Komarov 2021-08-13  1285  	err = ntfs_loadlog_and_replay(ni, sbi);
82cae269cfa953 Konstantin Komarov 2021-08-13  1286  	if (err)
9b75450d6c5801 Konstantin Komarov 2021-09-28  1287  		goto put_inode_out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1288  
82cae269cfa953 Konstantin Komarov 2021-08-13  1289  	iput(inode);
82cae269cfa953 Konstantin Komarov 2021-08-13  1290  
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1291  	if ((sbi->flags & NTFS_FLAGS_NEED_REPLAY) && !ro) {
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1292  		ntfs_warn(sb, "failed to replay log file. Can't mount rw!");
9b75450d6c5801 Konstantin Komarov 2021-09-28  1293  		err = -EINVAL;
9b75450d6c5801 Konstantin Komarov 2021-09-28  1294  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1295  	}
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1296  
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1297  	if ((sbi->volume.flags & VOLUME_FLAG_DIRTY) && !ro && !options->force) {
6a4cd3ea7d771b Konstantin Komarov 2023-05-08  1298  		ntfs_warn(sb, "volume is dirty and \"force\" flag is not set!");
9b75450d6c5801 Konstantin Komarov 2021-09-28  1299  		err = -EINVAL;
9b75450d6c5801 Konstantin Komarov 2021-09-28  1300  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1301  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1302  
e8b8e97f91b80f Kari Argillander   2021-08-03  1303  	/* Load $MFT. */
82cae269cfa953 Konstantin Komarov 2021-08-13  1304  	ref.low = cpu_to_le32(MFT_REC_MFT);
82cae269cfa953 Konstantin Komarov 2021-08-13  1305  	ref.seq = cpu_to_le16(1);
82cae269cfa953 Konstantin Komarov 2021-08-13  1306  
82cae269cfa953 Konstantin Komarov 2021-08-13  1307  	inode = ntfs_iget5(sb, &ref, &NAME_MFT);
82cae269cfa953 Konstantin Komarov 2021-08-13  1308  	if (IS_ERR(inode)) {
9b75450d6c5801 Konstantin Komarov 2021-09-28  1309  		err = PTR_ERR(inode);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1310  		ntfs_err(sb, "Failed to load $MFT (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1311  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1312  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1313  
82cae269cfa953 Konstantin Komarov 2021-08-13  1314  	ni = ntfs_i(inode);
82cae269cfa953 Konstantin Komarov 2021-08-13  1315  
82cae269cfa953 Konstantin Komarov 2021-08-13  1316  	sbi->mft.used = ni->i_valid >> sbi->record_bits;
82cae269cfa953 Konstantin Komarov 2021-08-13  1317  	tt = inode->i_size >> sbi->record_bits;
82cae269cfa953 Konstantin Komarov 2021-08-13  1318  	sbi->mft.next_free = MFT_REC_USER;
82cae269cfa953 Konstantin Komarov 2021-08-13  1319  
82cae269cfa953 Konstantin Komarov 2021-08-13  1320  	err = wnd_init(&sbi->mft.bitmap, sb, tt);
82cae269cfa953 Konstantin Komarov 2021-08-13  1321  	if (err)
9b75450d6c5801 Konstantin Komarov 2021-09-28  1322  		goto put_inode_out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1323  
82cae269cfa953 Konstantin Komarov 2021-08-13  1324  	err = ni_load_all_mi(ni);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1325  	if (err) {
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1326  		ntfs_err(sb, "Failed to load $MFT's subrecords (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1327  		goto put_inode_out;
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1328  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1329  
82cae269cfa953 Konstantin Komarov 2021-08-13  1330  	sbi->mft.ni = ni;
82cae269cfa953 Konstantin Komarov 2021-08-13  1331  
e8b8e97f91b80f Kari Argillander   2021-08-03  1332  	/* Load $Bitmap. */
82cae269cfa953 Konstantin Komarov 2021-08-13  1333  	ref.low = cpu_to_le32(MFT_REC_BITMAP);
82cae269cfa953 Konstantin Komarov 2021-08-13  1334  	ref.seq = cpu_to_le16(MFT_REC_BITMAP);
82cae269cfa953 Konstantin Komarov 2021-08-13  1335  	inode = ntfs_iget5(sb, &ref, &NAME_BITMAP);
82cae269cfa953 Konstantin Komarov 2021-08-13  1336  	if (IS_ERR(inode)) {
9b75450d6c5801 Konstantin Komarov 2021-09-28  1337  		err = PTR_ERR(inode);
e43f6ec224c1b4 Konstantin Komarov 2023-02-15  1338  		ntfs_err(sb, "Failed to load $Bitmap (%d).", err);
9b75450d6c5801 Konstantin Komarov 2021-09-28  1339  		goto out;
82cae269cfa953 Konstantin Komarov 2021-08-13  1340  	}
82cae269cfa953 Konstantin Komarov 2021-08-13  1341  

:::::: The code at line 1241 was first introduced by commit
:::::: 82cae269cfa953032fbb8980a7d554d60fb00b17 fs/ntfs3: Add initialization of super block

:::::: TO: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
:::::: CC: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2024-04-18  8:31 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=202404181603.e7TTtQJr-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=error27@gmail.com \
    --cc=oe-kbuild@lists.linux.dev \
    /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.