From: Jisheng Zhang <jszhang@marvell.com>
Date: Tue, 20 Oct 2015 08:02:40 +0000 (+0800)
Subject: clocksource/drivers/fsl_ftm_timer: Prevent ftrace recursion
X-Git-Tag: v4.3~3^2~2
X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=bd859a44b2f6749fd82e89dabbaa37f2c8aa33fe;p=users%2Fwilly%2Flinux.git

clocksource/drivers/fsl_ftm_timer: Prevent ftrace recursion

Having a traceable function in the sched_clock() path leads to a recursion
within ftrace and a kernel crash.

We should not trace the ftm_read_sched_clock() function.

Fix this by adding the notrace attribute to this function.

Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---

diff --git a/drivers/clocksource/fsl_ftm_timer.c b/drivers/clocksource/fsl_ftm_timer.c
index ef434699c80a..10202f1fdfd7 100644
--- a/drivers/clocksource/fsl_ftm_timer.c
+++ b/drivers/clocksource/fsl_ftm_timer.c
@@ -118,7 +118,7 @@ static inline void ftm_reset_counter(void __iomem *base)
 	ftm_writel(0x00, base + FTM_CNT);
 }
 
-static u64 ftm_read_sched_clock(void)
+static u64 notrace ftm_read_sched_clock(void)
 {
 	return ftm_readl(priv->clksrc_base + FTM_CNT);
 }