scsi: md: Remove WRITE_SAME support
authorChristoph Hellwig <hch@lst.de>
Wed, 9 Feb 2022 08:28:26 +0000 (09:28 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 23 Feb 2022 02:11:08 +0000 (21:11 -0500)
There are no more end-users of REQ_OP_WRITE_SAME left, so we can start
deleting it.

Link: https://lore.kernel.org/r/20220209082828.2629273-6-hch@lst.de
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/md/md-linear.c
drivers/md/md-multipath.c
drivers/md/md.h
drivers/md/raid0.c
drivers/md/raid1.c
drivers/md/raid10.c
drivers/md/raid5.c

index 1ff5164..0f55b07 100644 (file)
@@ -259,7 +259,6 @@ static bool linear_make_request(struct mddev *mddev, struct bio *bio)
                if (mddev->gendisk)
                        trace_block_bio_remap(bio, disk_devt(mddev->gendisk),
                                              bio_sector);
-               mddev_check_writesame(mddev, bio);
                mddev_check_write_zeroes(mddev, bio);
                submit_bio_noacct(bio);
        }
index e7d6486..ae0b0a9 100644 (file)
@@ -129,7 +129,6 @@ static bool multipath_make_request(struct mddev *mddev, struct bio * bio)
        mp_bh->bio.bi_opf |= REQ_FAILFAST_TRANSPORT;
        mp_bh->bio.bi_end_io = multipath_end_request;
        mp_bh->bio.bi_private = mp_bh;
-       mddev_check_writesame(mddev, &mp_bh->bio);
        mddev_check_write_zeroes(mddev, &mp_bh->bio);
        submit_bio_noacct(&mp_bh->bio);
        return true;
index f1bf362..6ac2838 100644 (file)
@@ -797,13 +797,6 @@ static inline void mddev_clear_unsupported_flags(struct mddev *mddev,
        mddev->flags &= ~unsupported_flags;
 }
 
-static inline void mddev_check_writesame(struct mddev *mddev, struct bio *bio)
-{
-       if (bio_op(bio) == REQ_OP_WRITE_SAME &&
-           !bio->bi_bdev->bd_disk->queue->limits.max_write_same_sectors)
-               mddev->queue->limits.max_write_same_sectors = 0;
-}
-
 static inline void mddev_check_write_zeroes(struct mddev *mddev, struct bio *bio)
 {
        if (bio_op(bio) == REQ_OP_WRITE_ZEROES &&
index b59a77b..b21e101 100644 (file)
@@ -402,7 +402,6 @@ static int raid0_run(struct mddev *mddev)
                bool discard_supported = false;
 
                blk_queue_max_hw_sectors(mddev->queue, mddev->chunk_sectors);
-               blk_queue_max_write_same_sectors(mddev->queue, mddev->chunk_sectors);
                blk_queue_max_write_zeroes_sectors(mddev->queue, mddev->chunk_sectors);
                blk_queue_max_discard_sectors(mddev->queue, UINT_MAX);
 
@@ -594,7 +593,6 @@ static bool raid0_make_request(struct mddev *mddev, struct bio *bio)
        if (mddev->gendisk)
                trace_block_bio_remap(bio, disk_devt(mddev->gendisk),
                                      bio_sector);
-       mddev_check_writesame(mddev, bio);
        mddev_check_write_zeroes(mddev, bio);
        submit_bio_noacct(bio);
        return true;
index e2d8acb..203ec58 100644 (file)
@@ -3147,10 +3147,8 @@ static int raid1_run(struct mddev *mddev)
        if (IS_ERR(conf))
                return PTR_ERR(conf);
 
-       if (mddev->queue) {
-               blk_queue_max_write_same_sectors(mddev->queue, 0);
+       if (mddev->queue)
                blk_queue_max_write_zeroes_sectors(mddev->queue, 0);
-       }
 
        rdev_for_each(rdev, mddev) {
                if (!mddev->gendisk)
index 2b969f7..4086273 100644 (file)
@@ -4115,7 +4115,6 @@ static int raid10_run(struct mddev *mddev)
        if (mddev->queue) {
                blk_queue_max_discard_sectors(mddev->queue,
                                              UINT_MAX);
-               blk_queue_max_write_same_sectors(mddev->queue, 0);
                blk_queue_max_write_zeroes_sectors(mddev->queue, 0);
                blk_queue_io_min(mddev->queue, mddev->chunk_sectors << 9);
                raid10_set_io_opt(conf);
index ffe720c..06025f7 100644 (file)
@@ -7767,7 +7767,6 @@ static int raid5_run(struct mddev *mddev)
                mddev->queue->limits.discard_alignment = stripe;
                mddev->queue->limits.discard_granularity = stripe;
 
-               blk_queue_max_write_same_sectors(mddev->queue, 0);
                blk_queue_max_write_zeroes_sectors(mddev->queue, 0);
 
                rdev_for_each(rdev, mddev) {