All of lore.kernel.org
 help / color / mirror / Atom feed
* [bcachefs:bcachefs-testing 14/106] fs/bcachefs/btree_io.c:829:1: warning: unused label 'out'
@ 2024-11-08 10:43 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-11-08 10:43 UTC (permalink / raw)
  To: Kent Overstreet; +Cc: llvm, oe-kbuild-all, Kent Overstreet

tree:   https://evilpiepirate.org/git/bcachefs.git bcachefs-testing
head:   58c37c5cc0d274e8b0d514d049e391186d879986
commit: a78c8274ea0c7ebccf2474a9c2e4a15cead79295 [14/106] bcachefs: Fix validate_bset() repair path
config: s390-allmodconfig (https://download.01.org/0day-ci/archive/20241108/202411081800.PWsZWM56-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241108/202411081800.PWsZWM56-lkp@intel.com/reproduce)

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>
| Closes: https://lore.kernel.org/oe-kbuild-all/202411081800.PWsZWM56-lkp@intel.com/

All warnings (new ones prefixed by >>):

   In file included from fs/bcachefs/btree_io.c:3:
   In file included from fs/bcachefs/bcachefs.h:188:
   In file included from include/linux/bio.h:10:
   In file included from include/linux/blk_types.h:10:
   In file included from include/linux/bvec.h:10:
   In file included from include/linux/highmem.h:10:
   In file included from include/linux/mm.h:2213:
   include/linux/vmstat.h:504:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
     504 |         return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
         |                            ~~~~~~~~~~~~~~~~~~~~~ ^
     505 |                            item];
         |                            ~~~~
   include/linux/vmstat.h:511:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
     511 |         return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
         |                            ~~~~~~~~~~~~~~~~~~~~~ ^
     512 |                            NR_VM_NUMA_EVENT_ITEMS +
         |                            ~~~~~~~~~~~~~~~~~~~~~~
   include/linux/vmstat.h:518:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
     518 |         return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
         |                               ~~~~~~~~~~~ ^ ~~~
   include/linux/vmstat.h:524:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
     524 |         return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
         |                            ~~~~~~~~~~~~~~~~~~~~~ ^
     525 |                            NR_VM_NUMA_EVENT_ITEMS +
         |                            ~~~~~~~~~~~~~~~~~~~~~~
>> fs/bcachefs/btree_io.c:829:1: warning: unused label 'out' [-Wunused-label]
     829 | out:
         | ^~~~
   fs/bcachefs/btree_io.c:1873:36: warning: bitwise operation between different enumeration types ('enum bch_watermark' and 'enum bch_trans_commit_flags') [-Wenum-enum-conversion]
    1873 |                                         BCH_WATERMARK_interior_updates|
         |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
    1874 |                                         BCH_TRANS_COMMIT_journal_reclaim|
         |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   fs/bcachefs/btree_iter.h:915:73: note: expanded from macro 'bch2_trans_do'
     915 | #define bch2_trans_do(_c, _do)  bch2_trans_run(_c, lockrestart_do(trans, _do))
         |                                                                          ^~~
   fs/bcachefs/btree_iter.h:714:11: note: expanded from macro 'lockrestart_do'
     714 |         _ret2 = (_do);                                                  \
         |                  ^~~
   fs/bcachefs/btree_iter.h:910:14: note: expanded from macro 'bch2_trans_run'
     910 |         int _ret = (_do);                                               \
         |                     ^~~
   6 warnings generated.


vim +/out +829 fs/bcachefs/btree_io.c

aae15aafcd43ec5 Kent Overstreet 2021-04-24  679  
91f6ad6f947c965 Kent Overstreet 2021-02-02  680  static int validate_bset(struct bch_fs *c, struct bch_dev *ca,
91f6ad6f947c965 Kent Overstreet 2021-02-02  681  			 struct btree *b, struct bset *i,
e719fc34f000048 Kent Overstreet 2021-07-16  682  			 unsigned offset, unsigned sectors,
494dcc57a7bf639 Kent Overstreet 2023-01-03  683  			 int write, bool have_retry, bool *saw_error)
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  684  {
39fb2983c586293 Kent Overstreet 2020-01-07  685  	unsigned version = le16_to_cpu(i->version);
652bc7fabc28294 Kent Overstreet 2024-05-24  686  	unsigned ptr_written = btree_ptr_sectors_written(bkey_i_to_s_c(&b->key));
fa8e94faeece12c Kent Overstreet 2022-02-25  687  	struct printbuf buf1 = PRINTBUF;
fa8e94faeece12c Kent Overstreet 2022-02-25  688  	struct printbuf buf2 = PRINTBUF;
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  689  	int ret = 0;
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  690  
a02a0121b3de81f Kent Overstreet 2023-06-28  691  	btree_err_on(!bch2_version_compatible(version),
b65db750e2bb925 Kent Overstreet 2023-10-24  692  		     -BCH_ERR_btree_node_read_err_incompatible,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  693  		     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  694  		     btree_node_unsupported_version,
ba8eeae8eee0aae Kent Overstreet 2023-06-27  695  		     "unsupported bset version %u.%u",
ba8eeae8eee0aae Kent Overstreet 2023-06-27  696  		     BCH_VERSION_MAJOR(version),
ba8eeae8eee0aae Kent Overstreet 2023-06-27  697  		     BCH_VERSION_MINOR(version));
39fb2983c586293 Kent Overstreet 2020-01-07  698  
84cc758d6b19ae8 Kent Overstreet 2021-03-21  699  	if (btree_err_on(version < c->sb.version_min,
b65db750e2bb925 Kent Overstreet 2023-10-24  700  			 -BCH_ERR_btree_node_read_err_fixable,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  701  			 c, NULL, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  702  			 btree_node_bset_older_than_sb_min,
84cc758d6b19ae8 Kent Overstreet 2021-03-21  703  			 "bset version %u older than superblock version_min %u",
84cc758d6b19ae8 Kent Overstreet 2021-03-21  704  			 version, c->sb.version_min)) {
84cc758d6b19ae8 Kent Overstreet 2021-03-21  705  		mutex_lock(&c->sb_lock);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  706  		c->disk_sb.sb->version_min = cpu_to_le16(version);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  707  		bch2_write_super(c);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  708  		mutex_unlock(&c->sb_lock);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  709  	}
84cc758d6b19ae8 Kent Overstreet 2021-03-21  710  
ba8eeae8eee0aae Kent Overstreet 2023-06-27  711  	if (btree_err_on(BCH_VERSION_MAJOR(version) >
ba8eeae8eee0aae Kent Overstreet 2023-06-27  712  			 BCH_VERSION_MAJOR(c->sb.version),
b65db750e2bb925 Kent Overstreet 2023-10-24  713  			 -BCH_ERR_btree_node_read_err_fixable,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  714  			 c, NULL, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  715  			 btree_node_bset_newer_than_sb,
84cc758d6b19ae8 Kent Overstreet 2021-03-21  716  			 "bset version %u newer than superblock version %u",
84cc758d6b19ae8 Kent Overstreet 2021-03-21  717  			 version, c->sb.version)) {
84cc758d6b19ae8 Kent Overstreet 2021-03-21  718  		mutex_lock(&c->sb_lock);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  719  		c->disk_sb.sb->version = cpu_to_le16(version);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  720  		bch2_write_super(c);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  721  		mutex_unlock(&c->sb_lock);
84cc758d6b19ae8 Kent Overstreet 2021-03-21  722  	}
84cc758d6b19ae8 Kent Overstreet 2021-03-21  723  
5f65d74d791d9bc Kent Overstreet 2021-03-29  724  	btree_err_on(BSET_SEPARATE_WHITEOUTS(i),
b65db750e2bb925 Kent Overstreet 2023-10-24  725  		     -BCH_ERR_btree_node_read_err_incompatible,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  726  		     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  727  		     btree_node_unsupported_version,
5f65d74d791d9bc Kent Overstreet 2021-03-29  728  		     "BSET_SEPARATE_WHITEOUTS no longer supported");
5f65d74d791d9bc Kent Overstreet 2021-03-29  729  
9cc8eb3098b8e78 Kent Overstreet 2024-05-10  730  	if (!write &&
9cc8eb3098b8e78 Kent Overstreet 2024-05-10  731  	    btree_err_on(offset + sectors > (ptr_written ?: btree_sectors(c)),
b65db750e2bb925 Kent Overstreet 2023-10-24  732  			 -BCH_ERR_btree_node_read_err_fixable,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  733  			 c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  734  			 bset_past_end_of_btree_node,
9cc8eb3098b8e78 Kent Overstreet 2024-05-10  735  			 "bset past end of btree node (offset %u len %u but written %zu)",
a78c8274ea0c7eb Kent Overstreet 2024-11-08  736  			 offset, sectors, ptr_written ?: btree_sectors(c)))
39fb2983c586293 Kent Overstreet 2020-01-07  737  		i->u64s = 0;
39fb2983c586293 Kent Overstreet 2020-01-07  738  
e719fc34f000048 Kent Overstreet 2021-07-16  739  	btree_err_on(offset && !i->u64s,
b65db750e2bb925 Kent Overstreet 2023-10-24  740  		     -BCH_ERR_btree_node_read_err_fixable,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  741  		     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  742  		     bset_empty,
39fb2983c586293 Kent Overstreet 2020-01-07  743  		     "empty bset");
39fb2983c586293 Kent Overstreet 2020-01-07  744  
b65db750e2bb925 Kent Overstreet 2023-10-24  745  	btree_err_on(BSET_OFFSET(i) && BSET_OFFSET(i) != offset,
b65db750e2bb925 Kent Overstreet 2023-10-24  746  		     -BCH_ERR_btree_node_read_err_want_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  747  		     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  748  		     bset_wrong_sector_offset,
e719fc34f000048 Kent Overstreet 2021-07-16  749  		     "bset at wrong sector offset");
e719fc34f000048 Kent Overstreet 2021-07-16  750  
e719fc34f000048 Kent Overstreet 2021-07-16  751  	if (!offset) {
39fb2983c586293 Kent Overstreet 2020-01-07  752  		struct btree_node *bn =
39fb2983c586293 Kent Overstreet 2020-01-07  753  			container_of(i, struct btree_node, keys);
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  754  		/* These indicate that we read the wrong btree node: */
f36dff2885ee709 Kent Overstreet 2020-05-12  755  
f36dff2885ee709 Kent Overstreet 2020-05-12  756  		if (b->key.k.type == KEY_TYPE_btree_ptr_v2) {
f36dff2885ee709 Kent Overstreet 2020-05-12  757  			struct bch_btree_ptr_v2 *bp =
f36dff2885ee709 Kent Overstreet 2020-05-12  758  				&bkey_i_to_btree_ptr_v2(&b->key)->v;
f36dff2885ee709 Kent Overstreet 2020-05-12  759  
f36dff2885ee709 Kent Overstreet 2020-05-12  760  			/* XXX endianness */
f36dff2885ee709 Kent Overstreet 2020-05-12  761  			btree_err_on(bp->seq != bn->keys.seq,
b65db750e2bb925 Kent Overstreet 2023-10-24  762  				     -BCH_ERR_btree_node_read_err_must_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  763  				     c, ca, b, NULL, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  764  				     bset_bad_seq,
f36dff2885ee709 Kent Overstreet 2020-05-12  765  				     "incorrect sequence number (wrong btree node)");
f36dff2885ee709 Kent Overstreet 2020-05-12  766  		}
f36dff2885ee709 Kent Overstreet 2020-05-12  767  
39fb2983c586293 Kent Overstreet 2020-01-07  768  		btree_err_on(BTREE_NODE_ID(bn) != b->c.btree_id,
b65db750e2bb925 Kent Overstreet 2023-10-24  769  			     -BCH_ERR_btree_node_read_err_must_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  770  			     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  771  			     btree_node_bad_btree,
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  772  			     "incorrect btree id");
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  773  
39fb2983c586293 Kent Overstreet 2020-01-07  774  		btree_err_on(BTREE_NODE_LEVEL(bn) != b->c.level,
b65db750e2bb925 Kent Overstreet 2023-10-24  775  			     -BCH_ERR_btree_node_read_err_must_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  776  			     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  777  			     btree_node_bad_level,
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  778  			     "incorrect level");
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  779  
39fb2983c586293 Kent Overstreet 2020-01-07  780  		if (!write)
39fb2983c586293 Kent Overstreet 2020-01-07  781  			compat_btree_node(b->c.level, b->c.btree_id, version,
39fb2983c586293 Kent Overstreet 2020-01-07  782  					  BSET_BIG_ENDIAN(i), write, bn);
39fb2983c586293 Kent Overstreet 2020-01-07  783  
548b3d209fa5c6a Kent Overstreet 2020-02-07  784  		if (b->key.k.type == KEY_TYPE_btree_ptr_v2) {
548b3d209fa5c6a Kent Overstreet 2020-02-07  785  			struct bch_btree_ptr_v2 *bp =
548b3d209fa5c6a Kent Overstreet 2020-02-07  786  				&bkey_i_to_btree_ptr_v2(&b->key)->v;
548b3d209fa5c6a Kent Overstreet 2020-02-07  787  
51d2dfb82d0553c Kent Overstreet 2021-01-26  788  			if (BTREE_PTR_RANGE_UPDATED(bp)) {
51d2dfb82d0553c Kent Overstreet 2021-01-26  789  				b->data->min_key = bp->min_key;
51d2dfb82d0553c Kent Overstreet 2021-01-26  790  				b->data->max_key = b->key.k.p;
51d2dfb82d0553c Kent Overstreet 2021-01-26  791  			}
51d2dfb82d0553c Kent Overstreet 2021-01-26  792  
e88a75ebe86c1df Kent Overstreet 2022-11-24  793  			btree_err_on(!bpos_eq(b->data->min_key, bp->min_key),
b65db750e2bb925 Kent Overstreet 2023-10-24  794  				     -BCH_ERR_btree_node_read_err_must_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  795  				     c, ca, b, NULL, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  796  				     btree_node_bad_min_key,
f020bfcdb058e45 Kent Overstreet 2021-03-04  797  				     "incorrect min_key: got %s should be %s",
fa8e94faeece12c Kent Overstreet 2022-02-25  798  				     (printbuf_reset(&buf1),
fa8e94faeece12c Kent Overstreet 2022-02-25  799  				      bch2_bpos_to_text(&buf1, bn->min_key), buf1.buf),
fa8e94faeece12c Kent Overstreet 2022-02-25  800  				     (printbuf_reset(&buf2),
fa8e94faeece12c Kent Overstreet 2022-02-25  801  				      bch2_bpos_to_text(&buf2, bp->min_key), buf2.buf));
548b3d209fa5c6a Kent Overstreet 2020-02-07  802  		}
548b3d209fa5c6a Kent Overstreet 2020-02-07  803  
e88a75ebe86c1df Kent Overstreet 2022-11-24  804  		btree_err_on(!bpos_eq(bn->max_key, b->key.k.p),
b65db750e2bb925 Kent Overstreet 2023-10-24  805  			     -BCH_ERR_btree_node_read_err_must_retry,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  806  			     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  807  			     btree_node_bad_max_key,
f020bfcdb058e45 Kent Overstreet 2021-03-04  808  			     "incorrect max key %s",
fa8e94faeece12c Kent Overstreet 2022-02-25  809  			     (printbuf_reset(&buf1),
fa8e94faeece12c Kent Overstreet 2022-02-25  810  			      bch2_bpos_to_text(&buf1, bn->max_key), buf1.buf));
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  811  
39fb2983c586293 Kent Overstreet 2020-01-07  812  		if (write)
39fb2983c586293 Kent Overstreet 2020-01-07  813  			compat_btree_node(b->c.level, b->c.btree_id, version,
39fb2983c586293 Kent Overstreet 2020-01-07  814  					  BSET_BIG_ENDIAN(i), write, bn);
39fb2983c586293 Kent Overstreet 2020-01-07  815  
e08e63e44e65761 Kent Overstreet 2023-08-06  816  		btree_err_on(bch2_bkey_format_invalid(c, &bn->format, write, &buf1),
b65db750e2bb925 Kent Overstreet 2023-10-24  817  			     -BCH_ERR_btree_node_read_err_bad_node,
1292bc2ebf63e70 Kent Overstreet 2024-05-24  818  			     c, ca, b, i, NULL,
b65db750e2bb925 Kent Overstreet 2023-10-24  819  			     btree_node_bad_format,
6c6439650ec913c Kent Overstreet 2023-08-03  820  			     "invalid bkey format: %s\n  %s", buf1.buf,
6c6439650ec913c Kent Overstreet 2023-08-03  821  			     (printbuf_reset(&buf2),
6c6439650ec913c Kent Overstreet 2023-08-03  822  			      bch2_bkey_format_to_text(&buf2, &bn->format), buf2.buf));
6c6439650ec913c Kent Overstreet 2023-08-03  823  		printbuf_reset(&buf1);
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  824  
39fb2983c586293 Kent Overstreet 2020-01-07  825  		compat_bformat(b->c.level, b->c.btree_id, version,
39fb2983c586293 Kent Overstreet 2020-01-07  826  			       BSET_BIG_ENDIAN(i), write,
39fb2983c586293 Kent Overstreet 2020-01-07  827  			       &bn->format);
39fb2983c586293 Kent Overstreet 2020-01-07  828  	}
fa8e94faeece12c Kent Overstreet 2022-02-25 @829  out:
39fb2983c586293 Kent Overstreet 2020-01-07  830  fsck_err:
fa8e94faeece12c Kent Overstreet 2022-02-25  831  	printbuf_exit(&buf2);
fa8e94faeece12c Kent Overstreet 2022-02-25  832  	printbuf_exit(&buf1);
39fb2983c586293 Kent Overstreet 2020-01-07  833  	return ret;
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  834  }
1c6fdbd8f2465dd Kent Overstreet 2017-03-16  835  

:::::: The code at line 829 was first introduced by commit
:::::: fa8e94faeece12c20b541f647059f29867e98bc0 bcachefs: Heap allocate printbufs

:::::: TO: Kent Overstreet <kent.overstreet@gmail.com>
:::::: CC: Kent Overstreet <kent.overstreet@linux.dev>

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2024-11-08 10:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-08 10:43 [bcachefs:bcachefs-testing 14/106] fs/bcachefs/btree_io.c:829:1: warning: unused label 'out' kernel test robot

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.