* [koverstreet-bcachefs:master 464/903] fs/bcachefs/journal/sb.c:213 bch2_journal_buckets_to_sb() error: we previously assumed 'c' could be null (see line 197)
@ 2025-11-19 11:42 ` Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: kernel test robot @ 2025-11-17 10:37 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Dan Carpenter
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Kent Overstreet <kent.overstreet@linux.dev>
tree: https://github.com/koverstreet/bcachefs master
head: ca748d1945bfa1208b1d32e5a246a352b09ad271
commit: 3d1f4469e2743eb10d5450c26d37cac439a002f1 [464/903] bcachefs: move journal code to subdir
:::::: branch date: 8 hours ago
:::::: commit date: 3 weeks ago
config: x86_64-randconfig-r073-20251117 (https://download.01.org/0day-ci/archive/20251117/202511171844.Cww9WIp3-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
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/202511171844.Cww9WIp3-lkp@intel.com/
smatch warnings:
fs/bcachefs/journal/sb.c:213 bch2_journal_buckets_to_sb() error: we previously assumed 'c' could be null (see line 197)
vim +/c +213 fs/bcachefs/journal/sb.c
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 190
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 191 int bch2_journal_buckets_to_sb(struct bch_fs *c, struct bch_dev *ca,
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 192 u64 *buckets, unsigned nr)
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 193 {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 194 struct bch_sb_field_journal_v2 *j;
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 195 unsigned i, dst = 0, nr_compacted = 1;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 196
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 @197 if (c)
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 198 lockdep_assert_held(&c->sb_lock);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 199
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 200 if (!nr) {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 201 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 202 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal_v2);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 203 return 0;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 204 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 205
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 206 for (i = 0; i + 1 < nr; i++)
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 207 if (buckets[i] + 1 != buckets[i + 1])
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 208 nr_compacted++;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 209
4637429e3946d0 fs/bcachefs/journal_sb.c Kent Overstreet 2023-09-26 210 j = bch2_sb_field_resize(&ca->disk_sb, journal_v2,
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 211 (sizeof(*j) + sizeof(j->d[0]) * nr_compacted) / sizeof(u64));
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 212 if (!j)
09b9c72bd4b77a fs/bcachefs/journal_sb.c Kent Overstreet 2025-05-28 @213 return bch_err_throw(c, ENOSPC_sb_journal);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 214
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 215 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 216
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 217 j->d[dst].start = cpu_to_le64(buckets[0]);
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 218 j->d[dst].nr = cpu_to_le64(1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 219
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 220 for (i = 1; i < nr; i++) {
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 221 if (buckets[i] == buckets[i - 1] + 1) {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 222 le64_add_cpu(&j->d[dst].nr, 1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 223 } else {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 224 dst++;
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 225 j->d[dst].start = cpu_to_le64(buckets[i]);
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 226 j->d[dst].nr = cpu_to_le64(1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 227 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 228 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 229
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 230 BUG_ON(dst + 1 != nr_compacted);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 231 return 0;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 232 }
8e7d3f6a43f5c9 fs/bcachefs/journal_sb.c Kent Overstreet 2025-09-02 233
:::::: The code at line 213 was first introduced by commit
:::::: 09b9c72bd4b77a954123997377665fb30f1d07e1 bcachefs: bch_err_throw()
:::::: TO: Kent Overstreet <kent.overstreet@linux.dev>
:::::: 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] 2+ messages in thread* [koverstreet-bcachefs:master 464/903] fs/bcachefs/journal/sb.c:213 bch2_journal_buckets_to_sb() error: we previously assumed 'c' could be null (see line 197)
@ 2025-11-19 11:42 ` Dan Carpenter
0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2025-11-19 11:42 UTC (permalink / raw)
To: oe-kbuild, Kent Overstreet; +Cc: lkp, oe-kbuild-all
tree: https://github.com/koverstreet/bcachefs master
head: ca748d1945bfa1208b1d32e5a246a352b09ad271
commit: 3d1f4469e2743eb10d5450c26d37cac439a002f1 [464/903] bcachefs: move journal code to subdir
config: x86_64-randconfig-r073-20251117 (https://download.01.org/0day-ci/archive/20251117/202511171844.Cww9WIp3-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
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 <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202511171844.Cww9WIp3-lkp@intel.com/
smatch warnings:
fs/bcachefs/journal/sb.c:213 bch2_journal_buckets_to_sb() error: we previously assumed 'c' could be null (see line 197)
vim +/c +213 fs/bcachefs/journal/sb.c
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 191 int bch2_journal_buckets_to_sb(struct bch_fs *c, struct bch_dev *ca,
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 192 u64 *buckets, unsigned nr)
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 193 {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 194 struct bch_sb_field_journal_v2 *j;
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 195 unsigned i, dst = 0, nr_compacted = 1;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 196
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 @197 if (c)
This assumes c can be NULL.
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 198 lockdep_assert_held(&c->sb_lock);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 199
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 200 if (!nr) {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 201 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 202 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal_v2);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 203 return 0;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 204 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 205
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 206 for (i = 0; i + 1 < nr; i++)
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 207 if (buckets[i] + 1 != buckets[i + 1])
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 208 nr_compacted++;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 209
4637429e3946d0 fs/bcachefs/journal_sb.c Kent Overstreet 2023-09-26 210 j = bch2_sb_field_resize(&ca->disk_sb, journal_v2,
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 211 (sizeof(*j) + sizeof(j->d[0]) * nr_compacted) / sizeof(u64));
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 212 if (!j)
09b9c72bd4b77a fs/bcachefs/journal_sb.c Kent Overstreet 2025-05-28 @213 return bch_err_throw(c, ENOSPC_sb_journal);
^
Unchecked dereference.
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 214
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 215 bch2_sb_field_delete(&ca->disk_sb, BCH_SB_FIELD_journal);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 216
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 217 j->d[dst].start = cpu_to_le64(buckets[0]);
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 218 j->d[dst].nr = cpu_to_le64(1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 219
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 220 for (i = 1; i < nr; i++) {
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 221 if (buckets[i] == buckets[i - 1] + 1) {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 222 le64_add_cpu(&j->d[dst].nr, 1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 223 } else {
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 224 dst++;
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 225 j->d[dst].start = cpu_to_le64(buckets[i]);
73bd774d28d2b2 fs/bcachefs/journal_sb.c Kent Overstreet 2023-07-06 226 j->d[dst].nr = cpu_to_le64(1);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 227 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 228 }
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 229
2640faeb1741db fs/bcachefs/journal_sb.c Kent Overstreet 2023-03-06 230 BUG_ON(dst + 1 != nr_compacted);
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 231 return 0;
25be2e5d4a051f fs/bcachefs/journal_sb.c Kent Overstreet 2022-03-10 232 }
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-11-19 11:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-11-17 10:37 [koverstreet-bcachefs:master 464/903] fs/bcachefs/journal/sb.c:213 bch2_journal_buckets_to_sb() error: we previously assumed 'c' could be null (see line 197) kernel test robot
2025-11-19 11:42 ` Dan Carpenter
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.