mirror of https://gitee.com/openkylin/linux.git
zram: use class_groups instead of class_attrs
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>
This commit is contained in:
parent
219eccdabb
commit
27104a53d0
|
@ -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)
|
||||
|
|
Loading…
Reference in New Issue