lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 16 Feb 2017 14:24:54 -0300
From:   Javier Martinez Canillas <javier@....samsung.com>
To:     linux-kernel@...r.kernel.org
Cc:     Mauro Carvalho Chehab <mchehab@...pensource.com>,
        Andi Shyti <andi.shyti@...sung.com>,
        Mark Brown <broonie@...nel.org>,
        Shuah Khan <shuahkh@....samsung.com>,
        Inki Dae <inki.dae@...sung.com>,
        Jon Hunter <jonathanh@...dia.com>,
        Liam Girdwood <lgirdwood@...il.com>
Subject: Re: [PATCH] regulator: core: Resolve supplies before disabling unused
 regulators

Hello,

On 02/16/2017 02:06 PM, Javier Martinez Canillas wrote:
> After commit 66d228a2bf03 ("regulator: core: Don't use regulators as
> supplies until the parent is bound"), input supplies aren't resolved
> if the input supplies parent device has not been bound. This prevent
> regulators to hold an invalid reference if its supply parent device
> driver probe is deferred.
> 
> But this causes issues on some boards where a PMIC's regulator use as
> input supply a regulator from another PMIC whose driver is registered
> after the driver for the former.
> 
> In this case the regulators for the first PMIC will fail to resolve
> input supplies on regulators registration (since the other PMIC wasn't
> probed yet). And when the core attempts to resolve again latter when
> the other PMIC registers its own regulators, it will fail again since
> the parent device isn't bound yet.
> 
> This will cause some parent supplies to never be resolved and wrongly
> be disabled on boot due taking them as unused.
> 
> To solve this problem don't attempt to resolve the pending regulators
> input supplies on regulator registration, but instead do it just once
> before disabling the unused regulators.
> 
> This also makes the regulator resolve logic more efficient since there
> is no need to attempt to resolve the input supplies on each regulator
> registration, and doing it once before disabling the unused is enough.
> 

I just noticed that this last paragraph is not true. Removing the input
supply resolve logic from regulator_registration() may cause issues for
modules, since these will register regulators after late_initcall().

So I'll post a v2 leaving this part. Sorry for the noise.

> Signed-off-by: Javier Martinez Canillas <javier@....samsung.com>
> 

Best regards,
-- 
Javier Martinez Canillas
Open Source Group
Samsung Research America

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ