Revert "md: add md_submit_discard_bio() for submitting discard bio"
BugLink: https://bugs.launchpad.net/bugs/1907262
This reverts commit d834834f48
.
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
This commit is contained in:
parent
2635e8cbf8
commit
04b3e8417d
|
@ -8363,26 +8363,6 @@ void md_write_end(struct mddev *mddev)
|
|||
|
||||
EXPORT_SYMBOL(md_write_end);
|
||||
|
||||
/* This is used by raid0 and raid10 */
|
||||
void md_submit_discard_bio(struct mddev *mddev, struct md_rdev *rdev,
|
||||
struct bio *bio, sector_t start, sector_t size)
|
||||
{
|
||||
struct bio *discard_bio = NULL;
|
||||
|
||||
if (__blkdev_issue_discard(rdev->bdev, start, size,
|
||||
GFP_NOIO, 0, &discard_bio) || !discard_bio)
|
||||
return;
|
||||
|
||||
bio_chain(discard_bio, bio);
|
||||
bio_clone_blkg_association(discard_bio, bio);
|
||||
if (mddev->gendisk)
|
||||
trace_block_bio_remap(bdev_get_queue(rdev->bdev),
|
||||
discard_bio, disk_devt(mddev->gendisk),
|
||||
bio->bi_iter.bi_sector);
|
||||
generic_make_request(discard_bio);
|
||||
}
|
||||
EXPORT_SYMBOL(md_submit_discard_bio);
|
||||
|
||||
/* md_allow_write(mddev)
|
||||
* Calling this ensures that the array is marked 'active' so that writes
|
||||
* may proceed without blocking. It is important to call this before
|
||||
|
|
|
@ -701,8 +701,6 @@ extern void md_write_end(struct mddev *mddev);
|
|||
extern void md_done_sync(struct mddev *mddev, int blocks, int ok);
|
||||
extern void md_error(struct mddev *mddev, struct md_rdev *rdev);
|
||||
extern void md_finish_reshape(struct mddev *mddev);
|
||||
extern void md_submit_discard_bio(struct mddev *mddev, struct md_rdev *rdev,
|
||||
struct bio *bio, sector_t start, sector_t size);
|
||||
|
||||
extern int mddev_congested(struct mddev *mddev, int bits);
|
||||
extern bool __must_check md_flush_request(struct mddev *mddev, struct bio *bio);
|
||||
|
|
|
@ -526,6 +526,7 @@ static void raid0_handle_discard(struct mddev *mddev, struct bio *bio)
|
|||
|
||||
for (disk = 0; disk < zone->nb_dev; disk++) {
|
||||
sector_t dev_start, dev_end;
|
||||
struct bio *discard_bio = NULL;
|
||||
struct md_rdev *rdev;
|
||||
|
||||
if (disk < start_disk_index)
|
||||
|
@ -548,9 +549,18 @@ static void raid0_handle_discard(struct mddev *mddev, struct bio *bio)
|
|||
|
||||
rdev = conf->devlist[(zone - conf->strip_zone) *
|
||||
conf->strip_zone[0].nb_dev + disk];
|
||||
md_submit_discard_bio(mddev, rdev, bio,
|
||||
if (__blkdev_issue_discard(rdev->bdev,
|
||||
dev_start + zone->dev_start + rdev->data_offset,
|
||||
dev_end - dev_start);
|
||||
dev_end - dev_start, GFP_NOIO, 0, &discard_bio) ||
|
||||
!discard_bio)
|
||||
continue;
|
||||
bio_chain(discard_bio, bio);
|
||||
bio_clone_blkg_association(discard_bio, bio);
|
||||
if (mddev->gendisk)
|
||||
trace_block_bio_remap(bdev_get_queue(rdev->bdev),
|
||||
discard_bio, disk_devt(mddev->gendisk),
|
||||
bio->bi_iter.bi_sector);
|
||||
generic_make_request(discard_bio);
|
||||
}
|
||||
bio_endio(bio);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue