Hannes Reinecke 8a2211
From: Christoph Hellwig <hch@lst.de>
Hannes Reinecke 8a2211
Date: Tue, 12 Oct 2021 13:12:21 +0200
Hannes Reinecke 8a2211
Subject: [PATCH] block: rename REQ_HIPRI to REQ_POLLED
Hannes Reinecke 8a2211
Git-commit: 6ce913fe3eee14f40f778e85999c9e599dda8c6b
Hannes Reinecke 8a2211
Patch-mainline: v5.16-rc1
Hannes Reinecke 8a2211
References: jsc#PED-1183
Hannes Reinecke 8a2211
Hannes Reinecke 8a2211
Unlike the RWF_HIPRI userspace ABI which is intentionally kept vague,
Hannes Reinecke 8a2211
the bio flag is specific to the polling implementation, so rename and
Hannes Reinecke 8a2211
document it properly.
Hannes Reinecke 8a2211
Hannes Reinecke 8a2211
Signed-off-by: Christoph Hellwig <hch@lst.de>
Hannes Reinecke 8a2211
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Hannes Reinecke 8a2211
Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Hannes Reinecke 8a2211
Tested-by: Mark Wunderlich <mark.wunderlich@intel.com>
Hannes Reinecke 8a2211
Link: https://lore.kernel.org/r/20211012111226.760968-12-hch@lst.de
Hannes Reinecke 8a2211
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Hannes Reinecke 8a2211
Acked-by: Hannes Reinecke <hare@suse.com>
Hannes Reinecke 8a2211
---
Hannes Reinecke 8a2211
 block/blk-core.c          |  2 +-
Hannes Reinecke 8a2211
 block/blk-merge.c         |  3 +--
Hannes Reinecke 8a2211
 block/blk-mq-debugfs.c    |  2 +-
Hannes Reinecke 8a2211
 block/blk-mq.c            |  4 ++--
Hannes Reinecke 8a2211
 block/blk-mq.h            |  4 ++--
Hannes Reinecke 8a2211
 block/blk.h               |  4 ++--
Hannes Reinecke 8a2211
 drivers/nvme/host/core.c  |  2 +-
Hannes Reinecke 8a2211
 drivers/scsi/scsi_debug.c | 10 +++++-----
Hannes Reinecke 8a2211
 include/linux/bio.h       |  2 +-
Hannes Reinecke 8a2211
 include/linux/blk_types.h |  4 ++--
Hannes Reinecke 8a2211
 mm/page_io.c              |  2 +-
Hannes Reinecke 8a2211
 11 files changed, 19 insertions(+), 20 deletions(-)
Hannes Reinecke 8a2211
Hannes Reinecke 8a2211
diff --git a/block/blk-core.c b/block/blk-core.c
Hannes Reinecke 8a2211
index 80fa7aa394c7..8eb0e08d5395 100644
Hannes Reinecke 8a2211
--- a/block/blk-core.c
Hannes Reinecke 8a2211
+++ b/block/blk-core.c
Hannes Reinecke 8a2211
@@ -842,7 +842,7 @@ static noinline_for_stack bool submit_bio_checks(struct bio *bio)
Hannes Reinecke 8a2211
 	}
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	if (!test_bit(QUEUE_FLAG_POLL, &q->queue_flags))
Hannes Reinecke 8a2211
-		bio_clear_hipri(bio);
Hannes Reinecke 8a2211
+		bio_clear_polled(bio);
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	switch (bio_op(bio)) {
Hannes Reinecke 8a2211
 	case REQ_OP_DISCARD:
Hannes Reinecke 8a2211
diff --git a/block/blk-merge.c b/block/blk-merge.c
Hannes Reinecke 8a2211
index 9b77b4d6c2a1..f88d7863f997 100644
Hannes Reinecke 8a2211
--- a/block/blk-merge.c
Hannes Reinecke 8a2211
+++ b/block/blk-merge.c
Hannes Reinecke 8a2211
@@ -318,8 +318,7 @@ static struct bio *blk_bio_segment_split(struct request_queue *q,
Hannes Reinecke 8a2211
 	 * iopoll in direct IO routine. Given performance gain of iopoll for
Hannes Reinecke 8a2211
 	 * big IO can be trival, disable iopoll when split needed.
Hannes Reinecke 8a2211
 	 */
Hannes Reinecke 8a2211
-	bio_clear_hipri(bio);
Hannes Reinecke 8a2211
-
Hannes Reinecke 8a2211
+	bio_clear_polled(bio);
Hannes Reinecke 8a2211
 	return bio_split(bio, sectors, GFP_NOIO, bs);
Hannes Reinecke 8a2211
 }
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
diff --git a/block/blk-mq-debugfs.c b/block/blk-mq-debugfs.c
Hannes Reinecke 8a2211
index 3daea160d670..409a8256d9ff 100644
Hannes Reinecke 8a2211
--- a/block/blk-mq-debugfs.c
Hannes Reinecke 8a2211
+++ b/block/blk-mq-debugfs.c
Hannes Reinecke 8a2211
@@ -287,7 +287,7 @@ static const char *const cmd_flag_name[] = {
Hannes Reinecke 8a2211
 	CMD_FLAG_NAME(BACKGROUND),
Hannes Reinecke 8a2211
 	CMD_FLAG_NAME(NOWAIT),
Hannes Reinecke 8a2211
 	CMD_FLAG_NAME(NOUNMAP),
Hannes Reinecke 8a2211
-	CMD_FLAG_NAME(HIPRI),
Hannes Reinecke 8a2211
+	CMD_FLAG_NAME(POLLED),
Hannes Reinecke 8a2211
 };
Hannes Reinecke 8a2211
 #undef CMD_FLAG_NAME
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
diff --git a/block/blk-mq.c b/block/blk-mq.c
Hannes Reinecke 8a2211
index 97c24e461d0a..a34ffcf861c3 100644
Hannes Reinecke 8a2211
--- a/block/blk-mq.c
Hannes Reinecke 8a2211
+++ b/block/blk-mq.c
Hannes Reinecke 8a2211
@@ -732,7 +732,7 @@ bool blk_mq_complete_request_remote(struct request *rq)
Hannes Reinecke 8a2211
 	 * For a polled request, always complete locallly, it's pointless
Hannes Reinecke 8a2211
 	 * to redirect the completion.
Hannes Reinecke 8a2211
 	 */
Hannes Reinecke 8a2211
-	if (rq->cmd_flags & REQ_HIPRI)
Hannes Reinecke 8a2211
+	if (rq->cmd_flags & REQ_POLLED)
Hannes Reinecke 8a2211
 		return false;
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	if (blk_mq_complete_need_ipi(rq)) {
Hannes Reinecke 8a2211
@@ -2278,7 +2278,7 @@ blk_qc_t blk_mq_submit_bio(struct bio *bio)
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	rq_qos_throttle(q, bio);
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
-	hipri = bio->bi_opf & REQ_HIPRI;
Hannes Reinecke 8a2211
+	hipri = bio->bi_opf & REQ_POLLED;
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	plug = blk_mq_plug(q, bio);
Hannes Reinecke 8a2211
 	if (plug && plug->cached_rq) {
Hannes Reinecke 8a2211
diff --git a/block/blk-mq.h b/block/blk-mq.h
Hannes Reinecke 8a2211
index 5da970bb8865..a9fe01e14951 100644
Hannes Reinecke 8a2211
--- a/block/blk-mq.h
Hannes Reinecke 8a2211
+++ b/block/blk-mq.h
Hannes Reinecke 8a2211
@@ -106,9 +106,9 @@ static inline struct blk_mq_hw_ctx *blk_mq_map_queue(struct request_queue *q,
Hannes Reinecke 8a2211
 	enum hctx_type type = HCTX_TYPE_DEFAULT;
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	/*
Hannes Reinecke 8a2211
-	 * The caller ensure that if REQ_HIPRI, poll must be enabled.
Hannes Reinecke 8a2211
+	 * The caller ensure that if REQ_POLLED, poll must be enabled.
Hannes Reinecke 8a2211
 	 */
Hannes Reinecke 8a2211
-	if (flags & REQ_HIPRI)
Hannes Reinecke 8a2211
+	if (flags & REQ_POLLED)
Hannes Reinecke 8a2211
 		type = HCTX_TYPE_POLL;
Hannes Reinecke 8a2211
 	else if ((flags & REQ_OP_MASK) == REQ_OP_READ)
Hannes Reinecke 8a2211
 		type = HCTX_TYPE_READ;
Hannes Reinecke 8a2211
diff --git a/block/blk.h b/block/blk.h
Hannes Reinecke 8a2211
index cab8d659d8a6..fa05d3f07976 100644
Hannes Reinecke 8a2211
--- a/block/blk.h
Hannes Reinecke 8a2211
+++ b/block/blk.h
Hannes Reinecke 8a2211
@@ -416,11 +416,11 @@ extern struct device_attribute dev_attr_events;
Hannes Reinecke 8a2211
 extern struct device_attribute dev_attr_events_async;
Hannes Reinecke 8a2211
 extern struct device_attribute dev_attr_events_poll_msecs;
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
-static inline void bio_clear_hipri(struct bio *bio)
Hannes Reinecke 8a2211
+static inline void bio_clear_polled(struct bio *bio)
Hannes Reinecke 8a2211
 {
Hannes Reinecke 8a2211
 	/* can't support alloc cache if we turn off polling */
Hannes Reinecke 8a2211
 	bio_clear_flag(bio, BIO_PERCPU_CACHE);
Hannes Reinecke 8a2211
-	bio->bi_opf &= ~REQ_HIPRI;
Hannes Reinecke 8a2211
+	bio->bi_opf &= ~REQ_POLLED;
Hannes Reinecke 8a2211
 }
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 long blkdev_ioctl(struct file *file, unsigned cmd, unsigned long arg);
Hannes Reinecke 8a2211
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
Hannes Reinecke 8a2211
index 3d444b13cd69..ae15cb714596 100644
Hannes Reinecke 8a2211
--- a/drivers/nvme/host/core.c
Hannes Reinecke 8a2211
+++ b/drivers/nvme/host/core.c
Hannes Reinecke 8a2211
@@ -632,7 +632,7 @@ static inline void nvme_init_request(struct request *req,
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	req->cmd_flags |= REQ_FAILFAST_DRIVER;
Hannes Reinecke 8a2211
 	if (req->mq_hctx->type == HCTX_TYPE_POLL)
Hannes Reinecke 8a2211
-		req->cmd_flags |= REQ_HIPRI;
Hannes Reinecke 8a2211
+		req->cmd_flags |= REQ_POLLED;
Hannes Reinecke 8a2211
 	nvme_clear_nvme_request(req);
Hannes Reinecke 8a2211
 	memcpy(nvme_req(req)->cmd, cmd, sizeof(*cmd));
Hannes Reinecke 8a2211
 }
Hannes Reinecke 8a2211
diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
Hannes Reinecke 8a2211
index 66f507469a31..40b473eea357 100644
Hannes Reinecke 8a2211
--- a/drivers/scsi/scsi_debug.c
Hannes Reinecke 8a2211
+++ b/drivers/scsi/scsi_debug.c
Hannes Reinecke 8a2211
@@ -5384,7 +5384,7 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
Hannes Reinecke 8a2211
 {
Hannes Reinecke 8a2211
 	bool new_sd_dp;
Hannes Reinecke 8a2211
 	bool inject = false;
Hannes Reinecke 8a2211
-	bool hipri = scsi_cmd_to_rq(cmnd)->cmd_flags & REQ_HIPRI;
Hannes Reinecke 8a2211
+	bool polled = scsi_cmd_to_rq(cmnd)->cmd_flags & REQ_POLLED;
Hannes Reinecke 8a2211
 	int k, num_in_q, qdepth;
Hannes Reinecke 8a2211
 	unsigned long iflags;
Hannes Reinecke 8a2211
 	u64 ns_from_boot = 0;
Hannes Reinecke 8a2211
@@ -5471,7 +5471,7 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
Hannes Reinecke 8a2211
 	if (sdebug_host_max_queue)
Hannes Reinecke 8a2211
 		sd_dp->hc_idx = get_tag(cmnd);
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
-	if (hipri)
Hannes Reinecke 8a2211
+	if (polled)
Hannes Reinecke 8a2211
 		ns_from_boot = ktime_get_boottime_ns();
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	/* one of the resp_*() response functions is called here */
Hannes Reinecke 8a2211
@@ -5531,7 +5531,7 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
Hannes Reinecke 8a2211
 				kt -= d;
Hannes Reinecke 8a2211
 			}
Hannes Reinecke 8a2211
 		}
Hannes Reinecke 8a2211
-		if (hipri) {
Hannes Reinecke 8a2211
+		if (polled) {
Hannes Reinecke 8a2211
 			sd_dp->cmpl_ts = ktime_add(ns_to_ktime(ns_from_boot), kt);
Hannes Reinecke 8a2211
 			spin_lock_irqsave(&sqp->qc_lock, iflags);
Hannes Reinecke 8a2211
 			if (!sd_dp->init_poll) {
Hannes Reinecke 8a2211
@@ -5562,7 +5562,7 @@ static int schedule_resp(struct scsi_cmnd *cmnd, struct sdebug_dev_info *devip,
Hannes Reinecke 8a2211
 		if (unlikely((sdebug_opts & SDEBUG_OPT_CMD_ABORT) &&
Hannes Reinecke 8a2211
 			     atomic_read(&sdeb_inject_pending)))
Hannes Reinecke 8a2211
 			sd_dp->aborted = true;
Hannes Reinecke 8a2211
-		if (hipri) {
Hannes Reinecke 8a2211
+		if (polled) {
Hannes Reinecke 8a2211
 			sd_dp->cmpl_ts = ns_to_ktime(ns_from_boot);
Hannes Reinecke 8a2211
 			spin_lock_irqsave(&sqp->qc_lock, iflags);
Hannes Reinecke 8a2211
 			if (!sd_dp->init_poll) {
Hannes Reinecke 8a2211
@@ -7331,7 +7331,7 @@ static int sdebug_blk_mq_poll(struct Scsi_Host *shost, unsigned int queue_num)
Hannes Reinecke 8a2211
 			if (kt_from_boot < sd_dp->cmpl_ts)
Hannes Reinecke 8a2211
 				continue;
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
-		} else		/* ignoring non REQ_HIPRI requests */
Hannes Reinecke 8a2211
+		} else		/* ignoring non REQ_POLLED requests */
Hannes Reinecke 8a2211
 			continue;
Hannes Reinecke 8a2211
 		devip = (struct sdebug_dev_info *)scp->device->hostdata;
Hannes Reinecke 8a2211
 		if (likely(devip))
Hannes Reinecke 8a2211
diff --git a/include/linux/bio.h b/include/linux/bio.h
Hannes Reinecke 8a2211
index d8d27742a75f..c7a2d880e927 100644
Hannes Reinecke 8a2211
--- a/include/linux/bio.h
Hannes Reinecke 8a2211
+++ b/include/linux/bio.h
Hannes Reinecke 8a2211
@@ -706,7 +706,7 @@ static inline int bio_integrity_add_page(struct bio *bio, struct page *page,
Hannes Reinecke 8a2211
  */
Hannes Reinecke 8a2211
 static inline void bio_set_polled(struct bio *bio, struct kiocb *kiocb)
Hannes Reinecke 8a2211
 {
Hannes Reinecke 8a2211
-	bio->bi_opf |= REQ_HIPRI;
Hannes Reinecke 8a2211
+	bio->bi_opf |= REQ_POLLED;
Hannes Reinecke 8a2211
 	if (!is_sync_kiocb(kiocb))
Hannes Reinecke 8a2211
 		bio->bi_opf |= REQ_NOWAIT;
Hannes Reinecke 8a2211
 }
Hannes Reinecke 8a2211
diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h
Hannes Reinecke 8a2211
index 5017ba8fc539..f8b9fce68834 100644
Hannes Reinecke 8a2211
--- a/include/linux/blk_types.h
Hannes Reinecke 8a2211
+++ b/include/linux/blk_types.h
Hannes Reinecke 8a2211
@@ -384,7 +384,7 @@ enum req_flag_bits {
Hannes Reinecke 8a2211
 	/* command specific flags for REQ_OP_WRITE_ZEROES: */
Hannes Reinecke 8a2211
 	__REQ_NOUNMAP,		/* do not free blocks when zeroing */
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
-	__REQ_HIPRI,
Hannes Reinecke 8a2211
+	__REQ_POLLED,		/* caller polls for completion using blk_poll */
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 	/* for driver use */
Hannes Reinecke 8a2211
 	__REQ_DRV,
Hannes Reinecke 8a2211
@@ -409,7 +409,7 @@ enum req_flag_bits {
Hannes Reinecke 8a2211
 #define REQ_CGROUP_PUNT		(1ULL << __REQ_CGROUP_PUNT)
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 #define REQ_NOUNMAP		(1ULL << __REQ_NOUNMAP)
Hannes Reinecke 8a2211
-#define REQ_HIPRI		(1ULL << __REQ_HIPRI)
Hannes Reinecke 8a2211
+#define REQ_POLLED		(1ULL << __REQ_POLLED)
Hannes Reinecke 8a2211
 
Hannes Reinecke 8a2211
 #define REQ_DRV			(1ULL << __REQ_DRV)
Hannes Reinecke 8a2211
 #define REQ_SWAP		(1ULL << __REQ_SWAP)
Hannes Reinecke 8a2211
diff --git a/mm/page_io.c b/mm/page_io.c
Hannes Reinecke 8a2211
index 5d5543fcefa4..ed2eded74f3a 100644
Hannes Reinecke 8a2211
--- a/mm/page_io.c
Hannes Reinecke 8a2211
+++ b/mm/page_io.c
Hannes Reinecke 8a2211
@@ -416,7 +416,7 @@ int swap_readpage(struct page *page, bool synchronous)
Hannes Reinecke 8a2211
 	 * attempt to access it in the page fault retry time check.
Hannes Reinecke 8a2211
 	 */
Hannes Reinecke 8a2211
 	if (synchronous) {
Hannes Reinecke 8a2211
-		bio->bi_opf |= REQ_HIPRI;
Hannes Reinecke 8a2211
+		bio->bi_opf |= REQ_POLLED;
Hannes Reinecke 8a2211
 		get_task_struct(current);
Hannes Reinecke 8a2211
 		bio->bi_private = current;
Hannes Reinecke 8a2211
 	}
Hannes Reinecke 8a2211
-- 
Hannes Reinecke 8a2211
2.35.3
Hannes Reinecke 8a2211