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@xxxxxxxxxxxxx>
Signed-off-by: David Kozub <zub@xxxxxxxxxxxxxxxxxx>
---
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.