Commit f722e17fdb2c97bbec2563636dd88489cdb1428b

Authored by Lars-Peter Clausen
1 parent 6501f728c5

power_supply: Ignore -ENODATA errors when generating uevents

Sometimes a driver can not report a meaningful value for a certain property
and returns -ENODATA.

Currently when generating a uevent and a property return -ENODATA it is
treated as an error an no uevent is generated at all. This is not an
desirable behavior.

This patch adds a special case for -ENODATA and ignores properties which
return this error code when generating the uevent.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Tested-by: Grazvydas Ignotas <notasas@gmail.com>

Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff

drivers/power/power_supply_sysfs.c
... ... @@ -270,7 +270,7 @@
270 270 attr = &power_supply_attrs[psy->properties[j]];
271 271  
272 272 ret = power_supply_show_property(dev, attr, prop_buf);
273   - if (ret == -ENODEV) {
  273 + if (ret == -ENODEV || ret == -ENODATA) {
274 274 /* When a battery is absent, we expect -ENODEV. Don't abort;
275 275 send the uevent with at least the the PRESENT=0 property */
276 276 ret = 0;