diff options
| author | Guenter Roeck <linux@roeck-us.net> | 2015-05-28 12:12:23 -0400 |
|---|---|---|
| committer | Guenter Roeck <linux@roeck-us.net> | 2015-05-29 20:47:42 -0400 |
| commit | c7bd6dc320b85445b6b36a0aff41f929210027c7 (patch) | |
| tree | f6d967e76e43bf5e399ccb99edf4036d37ed125f /drivers/hwmon | |
| parent | 1b63bf617206ff35b93c57c67bbe067ac735a85a (diff) | |
hwmon: (nct6683) Add missing sysfs attribute initialization
The following error message is seen when loading the nct6683 driver
with DEBUG_LOCK_ALLOC enabled.
BUG: key ffff88040b2f0030 not in .data!
------------[ cut here ]------------
WARNING: CPU: 0 PID: 186 at kernel/locking/lockdep.c:2988
lockdep_init_map+0x469/0x630()
DEBUG_LOCKS_WARN_ON(1)
Caused by a missing call to sysfs_attr_init() when initializing
sysfs attributes.
Reported-by: Alexey Orishko <alexey.orishko@gmail.com>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Cc: stable@vger.kernel.org # v3.18+
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon')
| -rw-r--r-- | drivers/hwmon/nct6683.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/hwmon/nct6683.c b/drivers/hwmon/nct6683.c index f3830db02d46..37f01702d081 100644 --- a/drivers/hwmon/nct6683.c +++ b/drivers/hwmon/nct6683.c | |||
| @@ -439,6 +439,7 @@ nct6683_create_attr_group(struct device *dev, struct sensor_template_group *tg, | |||
| 439 | (*t)->dev_attr.attr.name, tg->base + i); | 439 | (*t)->dev_attr.attr.name, tg->base + i); |
| 440 | if ((*t)->s2) { | 440 | if ((*t)->s2) { |
| 441 | a2 = &su->u.a2; | 441 | a2 = &su->u.a2; |
| 442 | sysfs_attr_init(&a2->dev_attr.attr); | ||
| 442 | a2->dev_attr.attr.name = su->name; | 443 | a2->dev_attr.attr.name = su->name; |
| 443 | a2->nr = (*t)->u.s.nr + i; | 444 | a2->nr = (*t)->u.s.nr + i; |
| 444 | a2->index = (*t)->u.s.index; | 445 | a2->index = (*t)->u.s.index; |
| @@ -449,6 +450,7 @@ nct6683_create_attr_group(struct device *dev, struct sensor_template_group *tg, | |||
| 449 | *attrs = &a2->dev_attr.attr; | 450 | *attrs = &a2->dev_attr.attr; |
| 450 | } else { | 451 | } else { |
| 451 | a = &su->u.a1; | 452 | a = &su->u.a1; |
| 453 | sysfs_attr_init(&a->dev_attr.attr); | ||
| 452 | a->dev_attr.attr.name = su->name; | 454 | a->dev_attr.attr.name = su->name; |
| 453 | a->index = (*t)->u.index + i; | 455 | a->index = (*t)->u.index + i; |
| 454 | a->dev_attr.attr.mode = | 456 | a->dev_attr.attr.mode = |
