In the Linux kernel, the following vulnerability has been resolved: regulator: core: fix use_count leakage when handling boot-on I found a use_count leakage towards supply regulator of rdev with boot-on option. βββββββββββββββββββββ βββββββββββββββββββββ β regulator_dev A β β regulator_dev B β β (boot-on) β β (boot-on) β β use_count=0 ββββsupplyβββ use_count=1 β β β β β βββββββββββββββββββββ βββββββββββββββββββββ In case of rdev(A) configured with `regulator-boot-on', the use_count of supplying regulator(B) will increment inside regulator_enable(rdev->supply). Thus, B will acts like always-on, and further balanced regulator_enable/disable cannot actually disable it anymore. However, B was also configured with `regulator-boot-on', we wish it could be disabled afterwards.
regulator: core: fix use_count leakage when handling boot-on