Commit 306d40df authored by Kent Overstreet's avatar Kent Overstreet Committed by Kent Overstreet

bcachefs: Use blk_status_to_str()

Improved error messages are always a good thing
Signed-off-by: default avatarKent Overstreet <kent.overstreet@gmail.com>
Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 52fbb7c8
...@@ -1138,7 +1138,8 @@ static void btree_node_read_work(struct work_struct *work) ...@@ -1138,7 +1138,8 @@ static void btree_node_read_work(struct work_struct *work)
bio->bi_status = BLK_STS_REMOVED; bio->bi_status = BLK_STS_REMOVED;
} }
start: start:
bch2_dev_io_err_on(bio->bi_status, ca, "btree read"); bch2_dev_io_err_on(bio->bi_status, ca, "btree read: %s",
blk_status_to_str(bio->bi_status));
if (rb->have_ioref) if (rb->have_ioref)
percpu_ref_put(&ca->io_ref); percpu_ref_put(&ca->io_ref);
rb->have_ioref = false; rb->have_ioref = false;
...@@ -1423,8 +1424,8 @@ static void btree_node_write_endio(struct bio *bio) ...@@ -1423,8 +1424,8 @@ static void btree_node_write_endio(struct bio *bio)
if (wbio->have_ioref) if (wbio->have_ioref)
bch2_latency_acct(ca, wbio->submit_time, WRITE); bch2_latency_acct(ca, wbio->submit_time, WRITE);
if (bio->bi_status == BLK_STS_REMOVED || if (bch2_dev_io_err_on(bio->bi_status, ca, "btree write: %s",
bch2_dev_io_err_on(bio->bi_status, ca, "btree write") || blk_status_to_str(bio->bi_status)) ||
bch2_meta_write_fault("btree")) { bch2_meta_write_fault("btree")) {
spin_lock_irqsave(&c->btree_write_error_lock, flags); spin_lock_irqsave(&c->btree_write_error_lock, flags);
bch2_dev_list_add_dev(&orig->failed, wbio->dev); bch2_dev_list_add_dev(&orig->failed, wbio->dev);
......
...@@ -360,7 +360,9 @@ static void ec_block_endio(struct bio *bio) ...@@ -360,7 +360,9 @@ static void ec_block_endio(struct bio *bio)
struct bch_dev *ca = ec_bio->ca; struct bch_dev *ca = ec_bio->ca;
struct closure *cl = bio->bi_private; struct closure *cl = bio->bi_private;
if (bch2_dev_io_err_on(bio->bi_status, ca, "erasure coding")) if (bch2_dev_io_err_on(bio->bi_status, ca, "erasure coding %s: %s",
bio_data_dir(bio) ? "write" : "read",
blk_status_to_str(bio->bi_status)))
clear_bit(ec_bio->idx, ec_bio->buf->valid); clear_bit(ec_bio->idx, ec_bio->buf->valid);
bio_put(&ec_bio->bio); bio_put(&ec_bio->bio);
......
...@@ -624,7 +624,8 @@ static void bch2_write_endio(struct bio *bio) ...@@ -624,7 +624,8 @@ static void bch2_write_endio(struct bio *bio)
struct bch_fs *c = wbio->c; struct bch_fs *c = wbio->c;
struct bch_dev *ca = bch_dev_bkey_exists(c, wbio->dev); struct bch_dev *ca = bch_dev_bkey_exists(c, wbio->dev);
if (bch2_dev_io_err_on(bio->bi_status, ca, "data write")) if (bch2_dev_io_err_on(bio->bi_status, ca, "data write: %s",
blk_status_to_str(bio->bi_status)))
set_bit(wbio->dev, op->failed.d); set_bit(wbio->dev, op->failed.d);
if (wbio->have_ioref) { if (wbio->have_ioref) {
...@@ -1913,7 +1914,8 @@ static void bch2_read_endio(struct bio *bio) ...@@ -1913,7 +1914,8 @@ static void bch2_read_endio(struct bio *bio)
if (!rbio->split) if (!rbio->split)
rbio->bio.bi_end_io = rbio->end_io; rbio->bio.bi_end_io = rbio->end_io;
if (bch2_dev_io_err_on(bio->bi_status, ca, "data read")) { if (bch2_dev_io_err_on(bio->bi_status, ca, "data read; %s",
blk_status_to_str(bio->bi_status))) {
bch2_rbio_error(rbio, READ_RETRY_AVOID, bio->bi_status); bch2_rbio_error(rbio, READ_RETRY_AVOID, bio->bi_status);
return; return;
} }
......
...@@ -960,7 +960,8 @@ static void journal_write_endio(struct bio *bio) ...@@ -960,7 +960,8 @@ static void journal_write_endio(struct bio *bio)
struct bch_dev *ca = bio->bi_private; struct bch_dev *ca = bio->bi_private;
struct journal *j = &ca->fs->journal; struct journal *j = &ca->fs->journal;
if (bch2_dev_io_err_on(bio->bi_status, ca, "journal write") || if (bch2_dev_io_err_on(bio->bi_status, ca, "journal write: %s",
blk_status_to_str(bio->bi_status)) ||
bch2_meta_write_fault("journal")) { bch2_meta_write_fault("journal")) {
struct journal_buf *w = journal_prev_buf(j); struct journal_buf *w = journal_prev_buf(j);
unsigned long flags; unsigned long flags;
......
...@@ -640,7 +640,8 @@ static void write_super_endio(struct bio *bio) ...@@ -640,7 +640,8 @@ static void write_super_endio(struct bio *bio)
/* XXX: return errors directly */ /* XXX: return errors directly */
if (bch2_dev_io_err_on(bio->bi_status, ca, "superblock write")) if (bch2_dev_io_err_on(bio->bi_status, ca, "superblock write: %s",
blk_status_to_str(bio->bi_status)))
ca->sb_write_error = 1; ca->sb_write_error = 1;
closure_put(&ca->fs->sb_write); closure_put(&ca->fs->sb_write);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment