summaryrefslogtreecommitdiffstats
path: root/drivers/block/rbd.c
diff options
context:
space:
mode:
authorIlya Dryomov2013-12-13 14:28:57 +0100
committerIlya Dryomov2013-12-31 19:31:58 +0100
commit92c76dc036e2139226e90851864d3e01e1db5dd8 (patch)
tree42144ae75306581bb4c748c43cd09388c57c1b60 /drivers/block/rbd.c
parentrbd: add 'minor' sysfs rbd device attribute (diff)
downloadkernel-qcow2-linux-92c76dc036e2139226e90851864d3e01e1db5dd8.tar.gz
kernel-qcow2-linux-92c76dc036e2139226e90851864d3e01e1db5dd8.tar.xz
kernel-qcow2-linux-92c76dc036e2139226e90851864d3e01e1db5dd8.zip
rbd: wire up is_visible() sysfs callback for rbd bus
In preparation for single-major device number allocation scheme, wire up attribute_group::is_visible() callback for rbd bus. This allows us to make the new single-major attributes conditional. Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com> Reviewed-by: Alex Elder <elder@linaro.org> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Diffstat (limited to 'drivers/block/rbd.c')
-rw-r--r--drivers/block/rbd.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 01ed7672a076..3fa18b0c5e4d 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -408,7 +408,18 @@ static struct attribute *rbd_bus_attrs[] = {
&bus_attr_remove.attr,
NULL,
};
-ATTRIBUTE_GROUPS(rbd_bus);
+
+static umode_t rbd_bus_is_visible(struct kobject *kobj,
+ struct attribute *attr, int index)
+{
+ return attr->mode;
+}
+
+static const struct attribute_group rbd_bus_group = {
+ .attrs = rbd_bus_attrs,
+ .is_visible = rbd_bus_is_visible,
+};
+__ATTRIBUTE_GROUPS(rbd_bus);
static struct bus_type rbd_bus_type = {
.name = "rbd",