diff options
author | Lars-Peter Clausen <lars@metafoo.de> | 2011-01-08 19:12:26 +0100 |
---|---|---|
committer | Lars-Peter Clausen <lars@metafoo.de> | 2011-02-22 06:47:52 +0100 |
commit | f722e17fdb2c97bbec2563636dd88489cdb1428b (patch) | |
tree | 10cc26fa54a4c5f05335df45019b3ae2213b48ad /drivers/power | |
parent | 6501f728c56f831626d52b236023e556bca37f51 (diff) | |
download | linux-f722e17fdb2c97bbec2563636dd88489cdb1428b.tar.bz2 |
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>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/power_supply_sysfs.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/power/power_supply_sysfs.c b/drivers/power/power_supply_sysfs.c index cd1f90754a3a..605514afc29f 100644 --- a/drivers/power/power_supply_sysfs.c +++ b/drivers/power/power_supply_sysfs.c @@ -270,7 +270,7 @@ int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env) attr = &power_supply_attrs[psy->properties[j]]; ret = power_supply_show_property(dev, attr, prop_buf); - if (ret == -ENODEV) { + if (ret == -ENODEV || ret == -ENODATA) { /* When a battery is absent, we expect -ENODEV. Don't abort; send the uevent with at least the the PRESENT=0 property */ ret = 0; |