|
Coly Li |
4e98e2 |
From 0bf6595ec81d896451f0066c95f8cd34c74313dc Mon Sep 17 00:00:00 2001
|
|
Coly Li |
4e98e2 |
From: Christoph Hellwig <hch@lst.de>
|
|
Coly Li |
4e98e2 |
Date: Mon, 19 Jun 2017 09:26:25 +0200
|
|
Coly Li |
4e98e2 |
Subject: [PATCH] block: don't set bounce limit in blk_init_allocated_queue
|
|
Coly Li |
4e98e2 |
Git-commit: 0bf6595ec81d896451f0066c95f8cd34c74313dc
|
|
Coly Li |
4e98e2 |
Patch-mainline: v4.13-rc1
|
|
Coly Li |
4e98e2 |
References: fate#322738,fate#322919,fate#322950,fate#323773
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
And just move it into scsi_transport_sas which needs it due to low-level
|
|
Coly Li |
4e98e2 |
drivers directly derferencing bio_data, and into blk_init_queue_node,
|
|
Coly Li |
4e98e2 |
which will need a further push into the callers.
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
Signed-off-by: Christoph Hellwig <hch@lst.de>
|
|
Coly Li |
4e98e2 |
Signed-off-by: Jens Axboe <axboe@kernel.dk>
|
|
Coly Li |
4e98e2 |
Signed-off-by: Coly Li <colyli@suse.de>
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
---
|
|
Coly Li |
4e98e2 |
block/blk-core.c | 10 +++++-----
|
|
Coly Li |
4e98e2 |
drivers/scsi/scsi_transport_sas.c | 5 +++++
|
|
Coly Li |
4e98e2 |
2 files changed, 10 insertions(+), 5 deletions(-)
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
diff --git a/block/blk-core.c b/block/blk-core.c
|
|
Coly Li |
4e98e2 |
index 8699c423fa6e..33b27541dc17 100644
|
|
Coly Li |
4e98e2 |
--- a/block/blk-core.c
|
|
Coly Li |
4e98e2 |
+++ b/block/blk-core.c
|
|
Coly Li |
4e98e2 |
@@ -960,6 +960,11 @@ blk_init_queue_node(request_fn_proc *rfn, spinlock_t *lock, int node_id)
|
|
Coly Li |
4e98e2 |
return NULL;
|
|
Coly Li |
4e98e2 |
}
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
+ /*
|
|
Coly Li |
4e98e2 |
+ * by default assume old behaviour and bounce for any highmem page
|
|
Coly Li |
4e98e2 |
+ */
|
|
Coly Li |
4e98e2 |
+ blk_queue_bounce_limit(q, BLK_BOUNCE_HIGH);
|
|
Coly Li |
4e98e2 |
+
|
|
Coly Li |
4e98e2 |
return q;
|
|
Coly Li |
4e98e2 |
}
|
|
Coly Li |
4e98e2 |
EXPORT_SYMBOL(blk_init_queue_node);
|
|
Coly Li |
4e98e2 |
@@ -989,11 +994,6 @@ int blk_init_allocated_queue(struct request_queue *q)
|
|
Coly Li |
4e98e2 |
*/
|
|
Coly Li |
4e98e2 |
blk_queue_make_request(q, blk_queue_bio);
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
- /*
|
|
Coly Li |
4e98e2 |
- * by default assume old behaviour and bounce for any highmem page
|
|
Coly Li |
4e98e2 |
- */
|
|
Coly Li |
4e98e2 |
- blk_queue_bounce_limit(q, BLK_BOUNCE_HIGH);
|
|
Coly Li |
4e98e2 |
-
|
|
Coly Li |
4e98e2 |
q->sg_reserved_size = INT_MAX;
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
/* Protect q->elevator from elevator_change */
|
|
Coly Li |
4e98e2 |
diff --git a/drivers/scsi/scsi_transport_sas.c b/drivers/scsi/scsi_transport_sas.c
|
|
Coly Li |
4e98e2 |
index a190c052cd93..5006a656e16a 100644
|
|
Coly Li |
4e98e2 |
--- a/drivers/scsi/scsi_transport_sas.c
|
|
Coly Li |
4e98e2 |
+++ b/drivers/scsi/scsi_transport_sas.c
|
|
Coly Li |
4e98e2 |
@@ -251,6 +251,11 @@ static int sas_bsg_initialize(struct Scsi_Host *shost, struct sas_rphy *rphy)
|
|
Coly Li |
4e98e2 |
if (error)
|
|
Coly Li |
4e98e2 |
goto out_cleanup_queue;
|
|
Coly Li |
4e98e2 |
|
|
Coly Li |
4e98e2 |
+ /*
|
|
Coly Li |
4e98e2 |
+ * by default assume old behaviour and bounce for any highmem page
|
|
Coly Li |
4e98e2 |
+ */
|
|
Coly Li |
4e98e2 |
+ blk_queue_bounce_limit(q, BLK_BOUNCE_HIGH);
|
|
Coly Li |
4e98e2 |
+
|
|
Coly Li |
4e98e2 |
error = bsg_register_queue(q, dev, name, release);
|
|
Coly Li |
4e98e2 |
if (error)
|
|
Coly Li |
4e98e2 |
goto out_cleanup_queue;
|
|
Coly Li |
4e98e2 |
--
|
|
Coly Li |
4e98e2 |
2.13.1
|
|
Coly Li |
4e98e2 |
|