lkml.org 
[lkml]   [2015]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] regulator: Add lockdep asserts to help detecting locking misuse
On 19.08.2015 22:08, Geert Uytterhoeven wrote:
> Hi Krzysztof,
>
> On Wed, Jun 10, 2015 at 8:23 AM, Krzysztof Kozlowski
> <k.kozlowski@samsung.com> wrote:
>> Add lockdep_assert_held_once() to functions explicitly mentioning that
>> rdev or regulator_list mutex must be held. Using WARN_ONCE shouldn't
>> pollute the dmesg to much.
>>
>> The patch (if CONFIG_LOCKDEP enabled) will show warnings in certain
>> regulators calling regulator_notifier_call_chain() without rdev->mutex
>> held.
>>
>> Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
>>
>> ---
>>
>> Warnings for missing locks when calling regulator_notifier_call_chain()
>> should appear on many regulators except wm8350-regulator.c, e.g.:
>> da9055-regulator.c, da9062-regulator.c, da9063-regulator.c,
>> da9211-regulator.c, wm831x-dcdc.c and few more.
>>
>> The question is whether the lock during that call should be held?
>
> That was a (so far, not counting the "Applied, thanks!") unanswered question?
>
> For the first time ever, I got:
>
> drivers/regulator/core.c:3480 regulator_notifier_call_chain+0x54/0x80()
>
> due to da9210_irq_handler() not taking the mutex.
>
> Drivers calling regulator_notifier_call_chain() from a threaded interrupt
> handler should be OK calling mutex_lock().
>
> Does anyone have plans to fix all affected drivers?

Question is still unanswered. I don't have plans to fix the drivers
because I don't have necessary hardware. Blindly fixing such minor issue
could do more harm than good. I just polluted the dmesg with WARN hoping
that this will wake up someone :) .

Best regards,
Krzysztof


\
 
 \ /
  Last update: 2015-08-20 03:21    [W:0.114 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site