Split off the last part of __device_add_disk() into __device_get_disk().
With that we can drop the 'bool' argument and streamline the function.

Signed-off-by: Hannes Reinecke <[email protected]>
---
 block/genhd.c | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/block/genhd.c b/block/genhd.c
index f1543a45e73b..cfa7f4f78435 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -647,15 +647,13 @@ static void register_disk(struct device *parent, struct 
gendisk *disk)
  * __device_add_disk - add disk information to kernel list
  * @parent: parent device for the disk
  * @disk: per-device partitioning information
- * @register_queue: register the queue if set to true
  *
  * This function registers the partitioning information in @disk
  * with the kernel.
  *
  * FIXME: error handling
  */
-static void __device_add_disk(struct device *parent, struct gendisk *disk,
-                             bool register_queue)
+static void __device_add_disk(struct device *parent, struct gendisk *disk)
 {
        dev_t devt;
        int retval;
@@ -699,9 +697,10 @@ static void __device_add_disk(struct device *parent, 
struct gendisk *disk,
                                    exact_match, exact_lock, disk);
        }
        register_disk(parent, disk);
-       if (register_queue)
-               blk_register_queue(disk);
+}
 
+void __device_get_disk(struct gendisk *disk)
+{
        /*
         * Take an extra ref on queue which will be put on disk_release()
         * so that it sticks around as long as @disk is there.
@@ -714,13 +713,18 @@ static void __device_add_disk(struct device *parent, 
struct gendisk *disk,
 
 void device_add_disk(struct device *parent, struct gendisk *disk)
 {
-       __device_add_disk(parent, disk, true);
+       __device_add_disk(parent, disk);
+
+       blk_register_queue(disk);
+
+       __device_get_disk(disk);
 }
 EXPORT_SYMBOL(device_add_disk);
 
 void device_add_disk_no_queue_reg(struct device *parent, struct gendisk *disk)
 {
-       __device_add_disk(parent, disk, false);
+       __device_add_disk(parent, disk);
+       __device_get_disk(disk);
 }
 EXPORT_SYMBOL(device_add_disk_no_queue_reg);
 
-- 
2.12.3

Reply via email to