scrub_submit() claims that it can handle a bio with a NULL block device,
but this is misleading, as calling bio_add_page() on a bio with a NULL
->bi_bdev would've already crashed. Delete this, as we're about to
properly handle a missing block device.

Signed-off-by: Omar Sandoval <osan...@fb.com>
---
 fs/btrfs/scrub.c | 16 +---------------
 1 file changed, 1 insertion(+), 15 deletions(-)

diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c
index ab5811545a98..633fa7b19b7d 100644
--- a/fs/btrfs/scrub.c
+++ b/fs/btrfs/scrub.c
@@ -2087,21 +2087,7 @@ static void scrub_submit(struct scrub_ctx *sctx)
        sbio = sctx->bios[sctx->curr];
        sctx->curr = -1;
        scrub_pending_bio_inc(sctx);
-
-       if (!sbio->bio->bi_bdev) {
-               /*
-                * this case should not happen. If btrfs_map_block() is
-                * wrong, it could happen for dev-replace operations on
-                * missing devices when no mirrors are available, but in
-                * this case it should already fail the mount.
-                * This case is handled correctly (but _very_ slowly).
-                */
-               printk_ratelimited(KERN_WARNING
-                       "BTRFS: scrub_submit(bio bdev == NULL) is 
unexpected!\n");
-               bio_endio(sbio->bio, -EIO);
-       } else {
-               btrfsic_submit_bio(READ, sbio->bio);
-       }
+       btrfsic_submit_bio(READ, sbio->bio);
 }
 
 static int scrub_add_page_to_rd_bio(struct scrub_ctx *sctx,
-- 
1.8.5.6

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in

Reply via email to