[bcachefs:master 901/1155] fs/bcachefs/btree/locking.c:816 __bch2_trans_relock() warn: passing zero to 'PTR_ERR'

kernel test robot <[email protected]>
Newsgroups dev.linux.lists.oe-kbuild
Message-ID <[email protected]>
BCC: [email protected]
CC: [email protected]
CC: Kent Overstreet <[email protected]>
TO: Kent Overstreet <[email protected]>

tree:   https://evilpiepirate.org/git/bcachefs.git master
head:   ca944a61e079450f82be88c91e349638c75cf4b6
commit: d7e34f5f64697fc5dae146ba03bf7e5016319409 [901/1155] bcachefs: improve trans_relock_fail tracepoint
:::::: branch date: 9 weeks ago
:::::: commit date: 8 months ago
config: x86_64-randconfig-161 (https://download.01.org/0day-ci/archive/20260718/[email protected]/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
smatch: v0.5.0-9185-gbcc58b9c

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 <[email protected]>
| Reported-by: Dan Carpenter <[email protected]>
| Closes: https://lore.kernel.org/r/[email protected]/

smatch warnings:
fs/bcachefs/btree/locking.c:816 __bch2_trans_relock() warn: passing zero to 'PTR_ERR'

vim +/PTR_ERR +816 fs/bcachefs/btree/locking.c

cd5afabea1acd2 fs/bcachefs/btree_locking.c Kent Overstreet 2022-08-19  775  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  776  static inline int __bch2_trans_relock(struct btree_trans *trans, bool trace, ulong ip)
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  777  {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  778  	bch2_trans_verify_locks(trans);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  779  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  780  	if (unlikely(trans->restarted))
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  781  		return -((int) trans->restarted);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  782  	if (unlikely(trans->locked))
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  783  		goto out;
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  784  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  785  	struct btree_path *path;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  786  	unsigned i;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  787  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  788  	trans_for_each_path(trans, path, i) {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  789  		if (!path->should_be_locked)
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  790  			continue;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  791  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  792  		if (likely(!trace_trans_restart_relock_enabled() || !trace)) {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  793  			int ret = btree_path_get_locks(trans, path, false, NULL,
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  794  						       BCH_ERR_transaction_restart_relock);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  795  			if (ret) {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  796  				if (trace)
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  797  					count_event(trans->c, trans_restart_relock);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  798  				__bch2_trans_unlock(trans);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  799  				bch2_trans_verify_locks(trans);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  800  				return ret;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  801  			}
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  802  		} else {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  803  			struct get_locks_fail f;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  804  			struct btree_path old_path = *path;
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  805  			int ret = btree_path_get_locks(trans, path, false, &f,
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  806  						       BCH_ERR_transaction_restart_relock);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  807  			if (ret) {
c0fdc625ea11fe fs/bcachefs/btree_locking.c Kent Overstreet 2025-07-14  808  				CLASS(printbuf, buf)();
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  809  				guard(printbuf_indent)(&buf);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  810  
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  811  				bch2_bpos_to_text(&buf, path->pos);
8a6fa52e07bc8d fs/bcachefs/btree_locking.c Kent Overstreet 2025-05-16  812  				prt_printf(&buf, " %s l=%u seq=%u node seq=",
8a6fa52e07bc8d fs/bcachefs/btree_locking.c Kent Overstreet 2025-05-16  813  					   bch2_btree_id_str(path->btree_id),
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  814  					   f.l, path->l[f.l].lock_seq);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  815  				if (IS_ERR_OR_NULL(f.b)) {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16 @816  					prt_str(&buf, bch2_err_str(PTR_ERR(f.b)));
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  817  				} else {
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  818  					prt_printf(&buf, "%u", f.b->c.lock.seq);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  819  
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  820  					struct six_lock_count c =
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  821  						bch2_btree_node_lock_counts(trans, NULL, &f.b->c, f.l);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  822  					prt_printf(&buf, " self locked %u.%u.%u", c.n[0], c.n[1], c.n[2]);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  823  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  824  					c = six_lock_counts(&f.b->c.lock);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  825  					prt_printf(&buf, " total locked %u.%u.%u", c.n[0], c.n[1], c.n[2]);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  826  				}
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  827  
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  828  				prt_newline(&buf);
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  829  				bch2_btree_path_to_text(&buf, trans, path - trans->paths, &old_path);
ef6fac0f9e5d06 fs/bcachefs/btree_locking.c Kent Overstreet 2025-06-25  830  				trace_trans_restart_relock(trans, ip, buf.buf);
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  831  
b97de453651f06 fs/bcachefs/btree_locking.c Kent Overstreet 2024-01-15  832  				count_event(trans->c, trans_restart_relock);
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  833  				__bch2_trans_unlock(trans);
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  834  				bch2_trans_verify_locks(trans);
66782b2acbc329 fs/bcachefs/btree_locking.c Kent Overstreet 2025-05-22  835  				return ret;
66782b2acbc329 fs/bcachefs/btree_locking.c Kent Overstreet 2025-05-22  836  			}
313816363a843f fs/bcachefs/btree_locking.c Kent Overstreet 2023-01-24  837  		}
d7e34f5f64697f fs/bcachefs/btree/locking.c Kent Overstreet 2025-11-16  838  	}
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  839  
ff1dd05f82338c fs/bcachefs/btree_locking.c Kent Overstreet 2024-11-28  840  	trans_set_locked(trans, true);
650db8a87c343c fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  841  out:
923ed0ae5ebd0b fs/bcachefs/btree_locking.c Kent Overstreet 2024-04-09  842  	bch2_trans_verify_locks(trans);
313816363a843f fs/bcachefs/btree_locking.c Kent Overstreet 2023-01-24  843  	return 0;
313816363a843f fs/bcachefs/btree_locking.c Kent Overstreet 2023-01-24  844  }
313816363a843f fs/bcachefs/btree_locking.c Kent Overstreet 2023-01-24  845  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.