btrfs: raid56: remove unused BTRFS_RBIO_REBUILD_MISSING
Commit aca43fe839
("btrfs: remove unused raid56 functions which were
dedicated for scrub") removed the special handling of RAID56 scrub for
missing device.
As scrub goes full mirror_num based recovery, that means if it hits a
missing device in RAID56, it would just try the next mirror, which would
go through the BTRFS_RBIO_READ_REBUILD operation.
This means there is no longer any use of BTRFS_RBIO_REBUILD_MISSING
operation and we can safely remove it.
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
ed3764f726
commit
3a3c7a7f65
|
@ -584,8 +584,7 @@ static int rbio_can_merge(struct btrfs_raid_bio *last,
|
|||
if (last->operation == BTRFS_RBIO_PARITY_SCRUB)
|
||||
return 0;
|
||||
|
||||
if (last->operation == BTRFS_RBIO_REBUILD_MISSING ||
|
||||
last->operation == BTRFS_RBIO_READ_REBUILD)
|
||||
if (last->operation == BTRFS_RBIO_READ_REBUILD)
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
|
@ -784,10 +783,7 @@ static noinline void unlock_stripe(struct btrfs_raid_bio *rbio)
|
|||
spin_unlock(&rbio->bio_list_lock);
|
||||
spin_unlock(&h->lock);
|
||||
|
||||
if (next->operation == BTRFS_RBIO_READ_REBUILD)
|
||||
start_async_work(next, recover_rbio_work_locked);
|
||||
else if (next->operation == BTRFS_RBIO_REBUILD_MISSING) {
|
||||
steal_rbio(rbio, next);
|
||||
if (next->operation == BTRFS_RBIO_READ_REBUILD) {
|
||||
start_async_work(next, recover_rbio_work_locked);
|
||||
} else if (next->operation == BTRFS_RBIO_WRITE) {
|
||||
steal_rbio(rbio, next);
|
||||
|
@ -1698,8 +1694,7 @@ static int verify_one_sector(struct btrfs_raid_bio *rbio,
|
|||
* If we're rebuilding a read, we have to use pages from the
|
||||
* bio list if possible.
|
||||
*/
|
||||
if ((rbio->operation == BTRFS_RBIO_READ_REBUILD ||
|
||||
rbio->operation == BTRFS_RBIO_REBUILD_MISSING)) {
|
||||
if (rbio->operation == BTRFS_RBIO_READ_REBUILD) {
|
||||
sector = sector_in_rbio(rbio, stripe_nr, sector_nr, 0);
|
||||
} else {
|
||||
sector = rbio_stripe_sector(rbio, stripe_nr, sector_nr);
|
||||
|
@ -1763,8 +1758,7 @@ static int recover_vertical(struct btrfs_raid_bio *rbio, int sector_nr,
|
|||
* If we're rebuilding a read, we have to use pages from the
|
||||
* bio list if possible.
|
||||
*/
|
||||
if ((rbio->operation == BTRFS_RBIO_READ_REBUILD ||
|
||||
rbio->operation == BTRFS_RBIO_REBUILD_MISSING)) {
|
||||
if (rbio->operation == BTRFS_RBIO_READ_REBUILD) {
|
||||
sector = sector_in_rbio(rbio, stripe_nr, sector_nr, 0);
|
||||
} else {
|
||||
sector = rbio_stripe_sector(rbio, stripe_nr, sector_nr);
|
||||
|
@ -1897,8 +1891,7 @@ static int recover_sectors(struct btrfs_raid_bio *rbio)
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (rbio->operation == BTRFS_RBIO_READ_REBUILD ||
|
||||
rbio->operation == BTRFS_RBIO_REBUILD_MISSING) {
|
||||
if (rbio->operation == BTRFS_RBIO_READ_REBUILD) {
|
||||
spin_lock(&rbio->bio_list_lock);
|
||||
set_bit(RBIO_RMW_LOCKED_BIT, &rbio->flags);
|
||||
spin_unlock(&rbio->bio_list_lock);
|
||||
|
|
|
@ -14,7 +14,6 @@ enum btrfs_rbio_ops {
|
|||
BTRFS_RBIO_WRITE,
|
||||
BTRFS_RBIO_READ_REBUILD,
|
||||
BTRFS_RBIO_PARITY_SCRUB,
|
||||
BTRFS_RBIO_REBUILD_MISSING,
|
||||
};
|
||||
|
||||
struct btrfs_raid_bio {
|
||||
|
|
Loading…
Reference in New Issue