In raid56 scenario, after trying parity recovery, we didn't set
mirror_num for btrfs_bio with failed mirror_num, hence
end_bio_extent_readpage() will report a random mirror_num in dmesg
log.
Cc: David Sterba <dsterba@suse.cz>
Signed-off-by: Liu Bo <bo.li.liu@oracle.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
        struct btrfs_raid_bio *rbio;
        int ret;
 
+       if (generic_io) {
+               ASSERT(bbio->mirror_num == mirror_num);
+               btrfs_io_bio(bio)->mirror_num = mirror_num;
+       }
+
        rbio = alloc_rbio(fs_info, bbio, stripe_len);
        if (IS_ERR(rbio)) {
                if (generic_io)