On 01.09.22 09:43, Christoph Hellwig wrote: > + if (bio_op(bio) == REQ_OP_ZONE_APPEND) { > + struct btrfs_fs_info *fs_info = btrfs_sb(cb->inode->i_sb); > + struct extent_map *em; > > - if (bio_op(bio) == REQ_OP_ZONE_APPEND) > - bio_set_dev(bio, em->map_lookup->stripes[0].dev->bdev); > + em = btrfs_get_chunk_map(fs_info, disk_bytenr, > + fs_info->sectorsize); > + if (IS_ERR(em)) { > + bio_put(bio); > + return ERR_CAST(em); > + } Please use btrfs_get_zoned_device() instead of open coding it.