Skip to content

regulator: Fix regulator_enable deadlock and add uA_load propagation

David Collins linux-arm-kernel linux-arm-msm lkml 2 versions In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest2 patches 5 repliesIn review
  2. v12 patches 8 repliesSuperseded

Changes in v2 from the cover letter

- Renamed _regulator_enable to regulator_dev_enable.
- Made change logs more verbose.

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2regulator: Remove possible deadlock from regulator_enabledrivers/regulator/core.c+55 -270 replies
2/2regulator: Propagate uA_load requirements up supply chaindrivers/regulator/core.c include/linux/regulator/driver.h+72 -25 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [PATCH v2 0/2] regulator: Fix regulator_enable deadlock and add uA_load propagation

Because the uA_load propagation change takes out a lock on a regulator and then the regulators that it supplies, it will cause deadlock with the current regulator_enable implementation. regulator_disable can also deadlock with regulator_enable, but it requires two threads and precise timing to observe. Therefore, regulator_enable must be fixed before current propagation can be used.

Changes from v1:
- Renamed _regulator_enable to regulator_dev_enable.
- Made change logs more verbose.

David Collins (2):
regulator: Remove possible deadlock from regulator_enable
regulator: Propagate uA_load requirements up supply chain

 drivers/regulator/core.c         |  151 ++++++++++++++++++++++++++++++-------
 include/linux/regulator/driver.h |    5 +
 2 files changed, 127 insertions(+), 29 deletions(-)
Signature · 2 lines
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.