From 3756111d138b6c5983d0c7cc2de12a7ec3d1e3d4 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Mon, 21 Mar 2022 18:05:39 -0400 Subject: [PATCH] bcachefs: Add printf format attribute to bch2_pr_buf() This tells the compiler to check printf format strings, and catches a few bugs. Signed-off-by: Kent Overstreet --- fs/bcachefs/btree_io.c | 2 +- fs/bcachefs/super-io.c | 2 +- fs/bcachefs/util.h | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/fs/bcachefs/btree_io.c b/fs/bcachefs/btree_io.c index c8f6e120fb437..b6f0f6dec8e85 100644 --- a/fs/bcachefs/btree_io.c +++ b/fs/bcachefs/btree_io.c @@ -1069,7 +1069,7 @@ int bch2_btree_node_read_done(struct bch_fs *c, struct bch_dev *ca, bch2_bkey_val_to_text(&buf, c, u.s_c); btree_err(BTREE_ERR_FIXABLE, c, NULL, b, i, - "invalid bkey %s: %s", buf, invalid); + "invalid bkey %s: %s", buf.buf, invalid); printbuf_exit(&buf); btree_keys_account_key_drop(&b->nr, 0, k); diff --git a/fs/bcachefs/super-io.c b/fs/bcachefs/super-io.c index 6d54319a95e67..5c87c73082743 100644 --- a/fs/bcachefs/super-io.c +++ b/fs/bcachefs/super-io.c @@ -1586,7 +1586,7 @@ void bch2_sb_to_text(struct printbuf *out, struct bch_sb *sb, pr_buf(out, "Oldest version on disk:"); pr_tab(out); - pr_buf(out, "%u", bch2_metadata_versions[le16_to_cpu(sb->version_min)]); + pr_buf(out, "%s", bch2_metadata_versions[le16_to_cpu(sb->version_min)]); pr_newline(out); pr_buf(out, "Created:"); diff --git a/fs/bcachefs/util.h b/fs/bcachefs/util.h index 465ba030133b0..f2df4d7fbec98 100644 --- a/fs/bcachefs/util.h +++ b/fs/bcachefs/util.h @@ -282,7 +282,8 @@ static inline size_t printbuf_linelen(struct printbuf *buf) return buf->pos - buf->last_newline; } -void bch2_pr_buf(struct printbuf *out, const char *fmt, ...); +void bch2_pr_buf(struct printbuf *out, const char *fmt, ...) + __attribute__ ((format (printf, 2, 3))); #define pr_buf(_out, ...) bch2_pr_buf(_out, __VA_ARGS__) -- 2.30.2