]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
zram: use class_groups instead of class_attrs
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jun 2017 08:12:39 +0000 (10:12 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 9 Jun 2017 08:41:00 +0000 (10:41 +0200)
The class_attrs pointer is long depreciated, and is about to be finally
removed, so move to use the class_groups pointer instead.

Cc: Minchan Kim <minchan@kernel.org>
Cc: Nitin Gupta <ngupta@vflare.org>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/block/zram/zram_drv.c

index debee952dcc18a9a8cb4217d728dcdfde29e6b1c..ebf5a45a0277c63035cb1825af4a04f2878d8b84 100644 (file)
@@ -1272,6 +1272,13 @@ static int zram_remove(struct zram *zram)
 }
 
 /* zram-control sysfs attributes */
+
+/*
+ * NOTE: hot_add attribute is not the usual read-only sysfs attribute. In a
+ * sense that reading from this file does alter the state of your system -- it
+ * creates a new un-initialized zram device and returns back this device's
+ * device_id (or an error code if it fails to create a new device).
+ */
 static ssize_t hot_add_show(struct class *class,
                        struct class_attribute *attr,
                        char *buf)
@@ -1286,6 +1293,7 @@ static ssize_t hot_add_show(struct class *class,
                return ret;
        return scnprintf(buf, PAGE_SIZE, "%d\n", ret);
 }
+static CLASS_ATTR(hot_add, 0400, hot_add_show, NULL);
 
 static ssize_t hot_remove_store(struct class *class,
                        struct class_attribute *attr,
@@ -1316,23 +1324,19 @@ static ssize_t hot_remove_store(struct class *class,
        mutex_unlock(&zram_index_mutex);
        return ret ? ret : count;
 }
+static CLASS_ATTR_WO(hot_remove);
 
-/*
- * NOTE: hot_add attribute is not the usual read-only sysfs attribute. In a
- * sense that reading from this file does alter the state of your system -- it
- * creates a new un-initialized zram device and returns back this device's
- * device_id (or an error code if it fails to create a new device).
- */
-static struct class_attribute zram_control_class_attrs[] = {
-       __ATTR(hot_add, 0400, hot_add_show, NULL),
-       __ATTR_WO(hot_remove),
-       __ATTR_NULL,
+static struct attribute *zram_control_class_attrs[] = {
+       &class_attr_hot_add.attr,
+       &class_attr_hot_remove.attr,
+       NULL,
 };
+ATTRIBUTE_GROUPS(zram_control_class);
 
 static struct class zram_control_class = {
        .name           = "zram-control",
        .owner          = THIS_MODULE,
-       .class_attrs    = zram_control_class_attrs,
+       .class_groups   = zram_control_class_groups,
 };
 
 static int zram_remove_cb(int id, void *ptr, void *data)