There are 4 users which check if queue is registered, so add one helper
to check it.

Cc: Christoph Hellwig <h...@infradead.org>
Cc: Hannes Reinecke <h...@suse.com>
Cc: Greg KH <gre...@linuxfoundation.org>
Cc: Mike Snitzer <snit...@redhat.com>
Cc: Bart Van Assche <bvanass...@acm.org>
Signed-off-by: Ming Lei <ming....@redhat.com>
---
 block/blk-sysfs.c      | 4 ++--
 block/blk-wbt.c        | 2 +-
 block/elevator.c       | 2 +-
 include/linux/blkdev.h | 1 +
 4 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/block/blk-sysfs.c b/block/blk-sysfs.c
index 977c659dcd18..5b0b5224cfd4 100644
--- a/block/blk-sysfs.c
+++ b/block/blk-sysfs.c
@@ -942,7 +942,7 @@ int blk_register_queue(struct gendisk *disk)
        if (WARN_ON(!q))
                return -ENXIO;
 
-       WARN_ONCE(test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags),
+       WARN_ONCE(blk_queue_registered(q),
                  "%s is registering an already registered queue\n",
                  kobject_name(&dev->kobj));
        blk_queue_flag_set(QUEUE_FLAG_REGISTERED, q);
@@ -1026,7 +1026,7 @@ void blk_unregister_queue(struct gendisk *disk)
                return;
 
        /* Return early if disk->queue was never registered. */
-       if (!test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags))
+       if (!blk_queue_registered(q))
                return;
 
        /*
diff --git a/block/blk-wbt.c b/block/blk-wbt.c
index 313f45a37e9d..c4d3089e47f7 100644
--- a/block/blk-wbt.c
+++ b/block/blk-wbt.c
@@ -656,7 +656,7 @@ void wbt_enable_default(struct request_queue *q)
                return;
 
        /* Queue not registered? Maybe shutting down... */
-       if (!test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags))
+       if (!blk_queue_registered(q))
                return;
 
        if (queue_is_mq(q) && IS_ENABLED(CONFIG_BLK_WBT_MQ))
diff --git a/block/elevator.c b/block/elevator.c
index 37b918dc4676..7449a5836b52 100644
--- a/block/elevator.c
+++ b/block/elevator.c
@@ -660,7 +660,7 @@ static int __elevator_change(struct request_queue *q, const 
char *name)
        struct elevator_type *e;
 
        /* Make sure queue is not in the middle of being removed */
-       if (!test_bit(QUEUE_FLAG_REGISTERED, &q->queue_flags))
+       if (!blk_queue_registered(q))
                return -ENOENT;
 
        /*
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 167bf879f072..6041755984f4 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -647,6 +647,7 @@ bool blk_queue_flag_test_and_set(unsigned int flag, struct 
request_queue *q);
 #define blk_queue_quiesced(q)  test_bit(QUEUE_FLAG_QUIESCED, &(q)->queue_flags)
 #define blk_queue_pm_only(q)   atomic_read(&(q)->pm_only)
 #define blk_queue_fua(q)       test_bit(QUEUE_FLAG_FUA, &(q)->queue_flags)
+#define blk_queue_registered(q)        test_bit(QUEUE_FLAG_REGISTERED, 
&(q)->queue_flags)
 
 extern void blk_set_pm_only(struct request_queue *q);
 extern void blk_clear_pm_only(struct request_queue *q);
-- 
2.20.1

Reply via email to