]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/commit - drivers/power/power_supply_core.c
power_supply: Add API for safe access of power supply function attrs
authorKrzysztof Kozlowski <k.kozlowski@samsung.com>
Thu, 12 Mar 2015 07:44:03 +0000 (08:44 +0100)
committerSebastian Reichel <sre@kernel.org>
Fri, 13 Mar 2015 22:15:48 +0000 (23:15 +0100)
commitbc1540561c9ede1efb6d7bf44804676d3d02a3cc
tree9ca0a0051c6a5382e00ec8ced1c56e93378ad9fa
parent2dc9215d7c94f7f9f34ccf8b1710ad73d82f6216
power_supply: Add API for safe access of power supply function attrs

Add simple wrappers for accessing power supply's function attributes:
 - get_property -> power_supply_get_property
 - set_property -> power_supply_set_property
 - property_is_writeable -> power_supply_property_is_writeable
 - external_power_changed -> power_supply_external_power_changed

This API along with atomic usage counter adds a safe way of accessing a
power supply from another driver. If power supply is unregistered after
obtaining reference to it by some driver, then the API wrappers won't be
executed in invalid (freed) context.

Next patch changing the ownership of power supply class is still needed
to fully fix race conditions in accessing freed power supply.

Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
drivers/power/power_supply_core.c
include/linux/power_supply.h