block: add helper for checking if queue is registered
authorMing Lei <ming.lei@redhat.com>
Tue, 27 Aug 2019 11:01:47 +0000 (19:01 +0800)
committerJens Axboe <axboe@kernel.dk>
Tue, 27 Aug 2019 16:40:20 +0000 (10:40 -0600)
There are 4 users which check if queue is registered, so add one helper
to check it.

Cc: Christoph Hellwig <hch@infradead.org>
Cc: Hannes Reinecke <hare@suse.com>
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Mike Snitzer <snitzer@redhat.com>
Cc: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-sysfs.c
block/blk-wbt.c
block/elevator.c
include/linux/blkdev.h

index 977c659..5b0b522 100644 (file)
@@ -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;
 
        /*
index 313f45a..c4d3089 100644 (file)
@@ -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))
index 33c15fb..03d9231 100644 (file)
@@ -656,7 +656,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;
 
        /*
index 4798bb2..d5077f3 100644 (file)
@@ -643,6 +643,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);