[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <feba2fdd-67af-baf8-fee0-8f50263197f5@linaro.org>
Date: Fri, 20 Oct 2017 08:46:15 +0200
From: Daniel Lezcano <daniel.lezcano@...aro.org>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: David Kozub <zub@...ux.fjfi.cvut.cz>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] clockevents/drivers/cs5535: improve resilience to
spurious interrupts
On 20/10/2017 00:25, Thomas Gleixner wrote:
> On Fri, 20 Oct 2017, Daniel Lezcano wrote:
>
>> On 19/10/2017 22:57, David Kozub wrote:
>>> This solves a BUG on ALIX 2c3 where mfgpt_tick is called before
>>> clockevents_config_and_register returns. This caused mfgpt_tick to call a
>>> null function pointer.
>>>
>>> Thanks to Daniel Lezcano and Thomas Gleixner for helping me analyze this
>>> and suggesting a solution.
>>>
>>> Suggested-by: Thomas Gleixner <tglx@...utronix.de>
>>> Signed-off-by: David Kozub <zub@...ux.fjfi.cvut.cz>
>>> ---
>>
>> Thank for sending this fix.
>>
>> Can you check if the commit 8f9327cbb is the one introducing the
>> regression ? So we can add the proper tags and propagate the fix to stable.
>
> No it's not.
>
> - if (cs5535_tick_mode == CLOCK_EVT_MODE_SHUTDOWN)
> + if (clockevent_state_shutdown(&cs5535_clockevent))
>
> This particular problem of the missing detached state check has been there
> forever and went unnoticed for whatever reason.
The detached condition was artificially caught by the initialized variable:
-static unsigned int cs5535_tick_mode = CLOCK_EVT_MODE_SHUTDOWN;
The patch 8f9327cbb removes the variable, so very likely this is where
the problem appeared.
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
Powered by blists - more mailing lists