diff options
author | Seung-Woo Kim <sw0312.kim@samsung.com> | 2014-12-04 19:17:17 +0900 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2017-07-02 17:13:02 +0100 |
commit | 702f4dd27ccf3bae7915ef1f8790db3af435d211 (patch) | |
tree | 55c645e55c00082ea583fbff95c2e2ebddad9ce3 | |
parent | 7d8fa496d78188d6b0edaabe3f5014e41bd638a7 (diff) |
regulator: core: Fix regualtor_ena_gpio_free not to access pin after freeing
commit 60a2362f769cf549dc466134efe71c8bf9fbaaba upstream.
After freeing pin from regulator_ena_gpio_free, loop can access
the pin. So this patch fixes not to access pin after freeing.
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
-rw-r--r-- | drivers/regulator/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index a2e836478549..71fb2037e0b9 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -1709,6 +1709,8 @@ static void regulator_ena_gpio_free(struct regulator_dev *rdev) gpio_free(pin->gpio); list_del(&pin->list); kfree(pin); + rdev->ena_pin = NULL; + return; } else { pin->request_count--; } |