blk-mq: don't bounce by default
authorChristoph Hellwig <hch@lst.de>
Mon, 19 Jun 2017 07:26:24 +0000 (09:26 +0200)
committerJens Axboe <axboe@kernel.dk>
Tue, 27 Jun 2017 18:13:45 +0000 (12:13 -0600)
For historical reasons we default to bouncing highmem pages for all block
queues.  But the blk-mq drivers are easy to audit to ensure that we don't
need this - scsi and mtip32xx set explicit limits and everyone else doesn't
have any particular ones.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-mq.c
drivers/block/virtio_blk.c
drivers/block/xen-blkfront.c

index 41e3aeb51c9a9c8332418f0d76063cbebfa34261..05dfa3f270ae6a9f3cbb767db61adfb393080bd6 100644 (file)
@@ -2349,11 +2349,6 @@ struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set,
 
        blk_queue_make_request(q, blk_mq_make_request);
 
-       /*
-        * by default assume old behaviour and bounce for any highmem page
-        */
-       blk_queue_bounce_limit(q, BLK_BOUNCE_HIGH);
-
        /*
         * Do this after blk_queue_make_request() overrides it...
         */
index e59bd4549a8a713cfc8e0c2f0b7beec383739666..0297ad7c1452a0985963ce5655869ed061809b09 100644 (file)
@@ -720,9 +720,6 @@ static int virtblk_probe(struct virtio_device *vdev)
        /* We can handle whatever the host told us to handle. */
        blk_queue_max_segments(q, vblk->sg_elems-2);
 
-       /* No need to bounce any requests */
-       blk_queue_bounce_limit(q, BLK_BOUNCE_ANY);
-
        /* No real sector limit. */
        blk_queue_max_hw_sectors(q, -1U);
 
index ac90093fcb25cde71c78d0602488b92eae1ddcde..c852ed3c01d55f23c69e4c9133b2fd88137402f9 100644 (file)
@@ -953,9 +953,6 @@ static void blkif_set_queue_limits(struct blkfront_info *info)
 
        /* Make sure buffer addresses are sector-aligned. */
        blk_queue_dma_alignment(rq, 511);
-
-       /* Make sure we don't use bounce buffers. */
-       blk_queue_bounce_limit(rq, BLK_BOUNCE_ANY);
 }
 
 static int xlvbd_init_blk_queue(struct gendisk *gd, u16 sector_size,