]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
bcachefs: Fix a few warnings on 32 bit
authorKent Overstreet <kent.overstreet@gmail.com>
Sun, 10 Apr 2022 00:29:26 +0000 (20:29 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:31 +0000 (17:09 -0400)
These showed up when building for mips.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
fs/bcachefs/bcachefs_format.h
fs/bcachefs/btree_key_cache.c
fs/bcachefs/dirent.c
fs/bcachefs/journal_io.c
fs/bcachefs/recovery.c

index a84a8e08895355ac51e4197342310753f09b3f3d..969507c42c554c75b1e19c40ad2d3a6f3c24f1e9 100644 (file)
@@ -851,10 +851,9 @@ struct bch_dirent {
 #define DT_SUBVOL      16
 #define BCH_DT_MAX     17
 
-#define BCH_NAME_MAX   (U8_MAX * sizeof(u64) -                         \
+#define BCH_NAME_MAX   ((unsigned) (U8_MAX * sizeof(u64) -             \
                         sizeof(struct bkey) -                          \
-                        offsetof(struct bch_dirent, d_name))
-
+                        offsetof(struct bch_dirent, d_name)))
 
 /* Xattrs */
 
index f856dee0c3aaa7bcc401eece0e3cef95bc9cacb1..f86d57d1ace0f3009af5bd00019abf9aea1fc7c5 100644 (file)
@@ -742,8 +742,8 @@ int bch2_fs_btree_key_cache_init(struct btree_key_cache *bc)
 void bch2_btree_key_cache_to_text(struct printbuf *out, struct btree_key_cache *c)
 {
        pr_buf(out, "nr_freed:\t%zu\n", c->nr_freed);
-       pr_buf(out, "nr_keys:\t%zu\n",  atomic_long_read(&c->nr_keys));
-       pr_buf(out, "nr_dirty:\t%zu\n", atomic_long_read(&c->nr_dirty));
+       pr_buf(out, "nr_keys:\t%lu\n",  atomic_long_read(&c->nr_keys));
+       pr_buf(out, "nr_dirty:\t%lu\n", atomic_long_read(&c->nr_dirty));
 }
 
 void bch2_btree_key_cache_exit(void)
index 281959885bb05e2bb90c05f3457f9effa53d48af..716c85062cea59f3ac85b91512d348ee8f06e0bd 100644 (file)
@@ -108,7 +108,7 @@ int bch2_dirent_invalid(const struct bch_fs *c, struct bkey_s_c k,
        }
 
        if (len > BCH_NAME_MAX) {
-               pr_buf(err, "dirent name too big (%u > %lu)",
+               pr_buf(err, "dirent name too big (%u > %u)",
                       len, BCH_NAME_MAX);
                return -EINVAL;
        }
index c84c0b8409065a8661e4774c775c9515fef1da58..64341da75963dbb6c90127196a7cc5f414c1cbac 100644 (file)
@@ -987,7 +987,7 @@ static void bch2_journal_read_device(struct closure *cl)
                for (i = 0; i < r->nr_ptrs; i++) {
                        if (r->ptrs[i].dev == ca->dev_idx &&
                            sector_to_bucket(ca, r->ptrs[i].sector) == ja->buckets[ja->cur_idx]) {
-                               unsigned wrote = (r->ptrs[i].sector % ca->mi.bucket_size) +
+                               unsigned wrote = bucket_remainder(ca, r->ptrs[i].sector) +
                                        vstruct_sectors(&r->j, c->block_bits);
 
                                ja->sectors_free = min(ja->sectors_free,
index 07ce6a540856f44065f3622b698ff2c6705da2e5..9269cb686e4dc9cabc5519f4649663d080da9f08 100644 (file)
@@ -198,7 +198,7 @@ int bch2_journal_key_insert_take(struct bch_fs *c, enum btree_id id,
        if (keys->nr == keys->size) {
                struct journal_keys new_keys = {
                        .nr                     = keys->nr,
-                       .size                   = max(keys->size, 8UL) * 2,
+                       .size                   = max_t(size_t, keys->size, 8) * 2,
                        .journal_seq_base       = keys->journal_seq_base,
                };