mirror of https://gitee.com/openkylin/linux.git
extcon: Ensure dynamically allocated sysfs attributes are initialised
The operation of lockdep requires that all dynamically allocated sysfs nodes are initialised using sysfs_attr_init() otherwise lots of warnings are generated. Ensure that all the dynamically allocated attributes that extcon generates have this done. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
1508d8111f
commit
9baf3220af
|
@ -30,6 +30,7 @@
|
|||
#include <linux/err.h>
|
||||
#include <linux/extcon.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/sysfs.h>
|
||||
|
||||
/*
|
||||
* extcon_cable_name suggests the standard cable names for commonly used
|
||||
|
@ -673,10 +674,12 @@ int extcon_dev_register(struct extcon_dev *edev, struct device *dev)
|
|||
cable->attr_g.name = str;
|
||||
cable->attr_g.attrs = cable->attrs;
|
||||
|
||||
sysfs_attr_init(&cable->attr_name.attr);
|
||||
cable->attr_name.attr.name = "name";
|
||||
cable->attr_name.attr.mode = 0444;
|
||||
cable->attr_name.show = cable_name_show;
|
||||
|
||||
sysfs_attr_init(&cable->attr_state.attr);
|
||||
cable->attr_state.attr.name = "state";
|
||||
cable->attr_state.attr.mode = 0644;
|
||||
cable->attr_state.show = cable_state_show;
|
||||
|
@ -722,6 +725,7 @@ int extcon_dev_register(struct extcon_dev *edev, struct device *dev)
|
|||
goto err_muex;
|
||||
}
|
||||
strcpy(name, buf);
|
||||
sysfs_attr_init(&edev->d_attrs_muex[index].attr);
|
||||
edev->d_attrs_muex[index].attr.name = name;
|
||||
edev->d_attrs_muex[index].attr.mode = 0000;
|
||||
edev->attrs_muex[index] = &edev->d_attrs_muex[index]
|
||||
|
|
Loading…
Reference in New Issue