Merge tag 'ceph-for-5.1-rc1' of git://github.com/ceph/ceph-client
[sfrench/cifs-2.6.git] / drivers / block / rbd.c
index 8dbfc5e54ae3af971c4028209b9e16156f6e2137..4ba967d65cf963c6f2a2084a62f2dbad1935c3bf 100644 (file)
@@ -445,14 +445,13 @@ static bool single_major = true;
 module_param(single_major, bool, 0444);
 MODULE_PARM_DESC(single_major, "Use a single major number for all rbd devices (default: true)");
 
-static ssize_t rbd_add(struct bus_type *bus, const char *buf,
-                      size_t count);
-static ssize_t rbd_remove(struct bus_type *bus, const char *buf,
-                         size_t count);
-static ssize_t rbd_add_single_major(struct bus_type *bus, const char *buf,
-                                   size_t count);
-static ssize_t rbd_remove_single_major(struct bus_type *bus, const char *buf,
-                                      size_t count);
+static ssize_t add_store(struct bus_type *bus, const char *buf, size_t count);
+static ssize_t remove_store(struct bus_type *bus, const char *buf,
+                           size_t count);
+static ssize_t add_single_major_store(struct bus_type *bus, const char *buf,
+                                     size_t count);
+static ssize_t remove_single_major_store(struct bus_type *bus, const char *buf,
+                                        size_t count);
 static int rbd_dev_image_probe(struct rbd_device *rbd_dev, int depth);
 
 static int rbd_dev_id_to_minor(int dev_id)
@@ -481,16 +480,16 @@ static bool rbd_is_lock_owner(struct rbd_device *rbd_dev)
        return is_lock_owner;
 }
 
-static ssize_t rbd_supported_features_show(struct bus_type *bus, char *buf)
+static ssize_t supported_features_show(struct bus_type *bus, char *buf)
 {
        return sprintf(buf, "0x%llx\n", RBD_FEATURES_SUPPORTED);
 }
 
-static BUS_ATTR(add, 0200, NULL, rbd_add);
-static BUS_ATTR(remove, 0200, NULL, rbd_remove);
-static BUS_ATTR(add_single_major, 0200, NULL, rbd_add_single_major);
-static BUS_ATTR(remove_single_major, 0200, NULL, rbd_remove_single_major);
-static BUS_ATTR(supported_features, 0444, rbd_supported_features_show, NULL);
+static BUS_ATTR_WO(add);
+static BUS_ATTR_WO(remove);
+static BUS_ATTR_WO(add_single_major);
+static BUS_ATTR_WO(remove_single_major);
+static BUS_ATTR_RO(supported_features);
 
 static struct attribute *rbd_bus_attrs[] = {
        &bus_attr_add.attr,
@@ -4183,7 +4182,7 @@ static int rbd_init_disk(struct rbd_device *rbd_dev)
        rbd_dev->tag_set.ops = &rbd_mq_ops;
        rbd_dev->tag_set.queue_depth = rbd_dev->opts->queue_depth;
        rbd_dev->tag_set.numa_node = NUMA_NO_NODE;
-       rbd_dev->tag_set.flags = BLK_MQ_F_SHOULD_MERGE | BLK_MQ_F_SG_MERGE;
+       rbd_dev->tag_set.flags = BLK_MQ_F_SHOULD_MERGE;
        rbd_dev->tag_set.nr_hw_queues = 1;
        rbd_dev->tag_set.cmd_size = sizeof(struct work_struct);
 
@@ -6128,9 +6127,7 @@ err_out_args:
        goto out;
 }
 
-static ssize_t rbd_add(struct bus_type *bus,
-                      const char *buf,
-                      size_t count)
+static ssize_t add_store(struct bus_type *bus, const char *buf, size_t count)
 {
        if (single_major)
                return -EINVAL;
@@ -6138,9 +6135,8 @@ static ssize_t rbd_add(struct bus_type *bus,
        return do_rbd_add(bus, buf, count);
 }
 
-static ssize_t rbd_add_single_major(struct bus_type *bus,
-                                   const char *buf,
-                                   size_t count)
+static ssize_t add_single_major_store(struct bus_type *bus, const char *buf,
+                                     size_t count)
 {
        return do_rbd_add(bus, buf, count);
 }
@@ -6243,9 +6239,7 @@ static ssize_t do_rbd_remove(struct bus_type *bus,
        return count;
 }
 
-static ssize_t rbd_remove(struct bus_type *bus,
-                         const char *buf,
-                         size_t count)
+static ssize_t remove_store(struct bus_type *bus, const char *buf, size_t count)
 {
        if (single_major)
                return -EINVAL;
@@ -6253,9 +6247,8 @@ static ssize_t rbd_remove(struct bus_type *bus,
        return do_rbd_remove(bus, buf, count);
 }
 
-static ssize_t rbd_remove_single_major(struct bus_type *bus,
-                                      const char *buf,
-                                      size_t count)
+static ssize_t remove_single_major_store(struct bus_type *bus, const char *buf,
+                                        size_t count)
 {
        return do_rbd_remove(bus, buf, count);
 }