rnbd-srv: remove the name field from struct rnbd_dev
authorChristoph Hellwig <hch@lst.de>
Wed, 13 Jul 2022 05:53:14 +0000 (07:53 +0200)
committerJens Axboe <axboe@kernel.dk>
Thu, 14 Jul 2022 16:27:56 +0000 (10:27 -0600)
Just print the block device name directly using the %pg format specifier.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Acked-by: Jack Wang <jinpu.wang@ionos.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20220713055317.1888500-7-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/rnbd/rnbd-srv-dev.c
drivers/block/rnbd/rnbd-srv-dev.h
drivers/block/rnbd/rnbd-srv-sysfs.c
drivers/block/rnbd/rnbd-srv.c
drivers/block/rnbd/rnbd-srv.h

index c5d0a03..c63017f 100644 (file)
@@ -28,7 +28,6 @@ struct rnbd_dev *rnbd_dev_open(const char *path, fmode_t flags)
                goto err;
 
        dev->blk_open_flags = flags;
-       bdevname(dev->bdev, dev->name);
 
        return dev;
 
index 4309e52..8407d12 100644 (file)
@@ -15,7 +15,6 @@
 struct rnbd_dev {
        struct block_device     *bdev;
        fmode_t                 blk_open_flags;
-       char                    name[BDEVNAME_SIZE];
 };
 
 /**
index feaa76c..297a692 100644 (file)
@@ -38,14 +38,13 @@ static struct kobj_type dev_ktype = {
 };
 
 int rnbd_srv_create_dev_sysfs(struct rnbd_srv_dev *dev,
-                              struct block_device *bdev,
-                              const char *dev_name)
+                              struct block_device *bdev)
 {
        struct kobject *bdev_kobj;
        int ret;
 
        ret = kobject_init_and_add(&dev->dev_kobj, &dev_ktype,
-                                  rnbd_devs_kobj, dev_name);
+                                  rnbd_devs_kobj, "%pg", bdev);
        if (ret) {
                kobject_put(&dev->dev_kobj);
                return ret;
index beaef43..0713014 100644 (file)
@@ -419,7 +419,7 @@ static struct rnbd_srv_sess_dev
        return sess_dev;
 }
 
-static struct rnbd_srv_dev *rnbd_srv_init_srv_dev(const char *id)
+static struct rnbd_srv_dev *rnbd_srv_init_srv_dev(struct block_device *bdev)
 {
        struct rnbd_srv_dev *dev;
 
@@ -427,7 +427,7 @@ static struct rnbd_srv_dev *rnbd_srv_init_srv_dev(const char *id)
        if (!dev)
                return ERR_PTR(-ENOMEM);
 
-       strscpy(dev->id, id, sizeof(dev->id));
+       snprintf(dev->id, sizeof(dev->id), "%pg", bdev);
        kref_init(&dev->kref);
        INIT_LIST_HEAD(&dev->sess_dev_list);
        mutex_init(&dev->lock);
@@ -512,7 +512,7 @@ rnbd_srv_get_or_create_srv_dev(struct rnbd_dev *rnbd_dev,
        int ret;
        struct rnbd_srv_dev *new_dev, *dev;
 
-       new_dev = rnbd_srv_init_srv_dev(rnbd_dev->name);
+       new_dev = rnbd_srv_init_srv_dev(rnbd_dev->bdev);
        if (IS_ERR(new_dev))
                return new_dev;
 
@@ -758,8 +758,7 @@ static int process_msg_open(struct rnbd_srv_session *srv_sess,
         */
        mutex_lock(&srv_dev->lock);
        if (!srv_dev->dev_kobj.state_in_sysfs) {
-               ret = rnbd_srv_create_dev_sysfs(srv_dev, rnbd_dev->bdev,
-                                                rnbd_dev->name);
+               ret = rnbd_srv_create_dev_sysfs(srv_dev, rnbd_dev->bdev);
                if (ret) {
                        mutex_unlock(&srv_dev->lock);
                        rnbd_srv_err(srv_sess_dev,
index be2ae48..6926f90 100644 (file)
@@ -68,8 +68,7 @@ void rnbd_srv_sess_dev_force_close(struct rnbd_srv_sess_dev *sess_dev,
 /* rnbd-srv-sysfs.c */
 
 int rnbd_srv_create_dev_sysfs(struct rnbd_srv_dev *dev,
-                             struct block_device *bdev,
-                             const char *dir_name);
+                             struct block_device *bdev);
 void rnbd_srv_destroy_dev_sysfs(struct rnbd_srv_dev *dev);
 int rnbd_srv_create_dev_session_sysfs(struct rnbd_srv_sess_dev *sess_dev);
 void rnbd_srv_destroy_dev_session_sysfs(struct rnbd_srv_sess_dev *sess_dev);