Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1258000

[PATCH 3/8] clocksource/drivers/samsung_pwm_timer: Prevent ftrace recursion

From Daniel Lezcano <daniel.lezcano@linaro.org>
Newsgroups linux.kernel
Subject [PATCH 3/8] clocksource/drivers/samsung_pwm_timer: Prevent ftrace recursion
Date 2015-10-28 14:20 +0100
Message-ID <qoyNZ-35R-37@gated-at.bofh.it> (permalink)
References <qoyNY-35R-23@gated-at.bofh.it> <qoyNY-35R-25@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: Jisheng Zhang <jszhang@marvell.com>

Currently samsung_pwm_timer can be used as a scheduler clock. We properly
marked samsung_read_sched_clock() as notrace but we then call another
function samsung_clocksource_read() that _wasn't_ notrace.

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

Fix this by adding notrace attribute to the samsung_clocksource_read()
function.

Signed-off-by: Jisheng Zhang <jszhang@marvell.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
---
 drivers/clocksource/samsung_pwm_timer.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/clocksource/samsung_pwm_timer.c b/drivers/clocksource/samsung_pwm_timer.c
index bc90e13..9502bc4 100644
--- a/drivers/clocksource/samsung_pwm_timer.c
+++ b/drivers/clocksource/samsung_pwm_timer.c
@@ -307,7 +307,7 @@ static void samsung_clocksource_resume(struct clocksource *cs)
 	samsung_time_start(pwm.source_id, true);
 }
 
-static cycle_t samsung_clocksource_read(struct clocksource *c)
+static cycle_t notrace samsung_clocksource_read(struct clocksource *c)
 {
 	return ~readl_relaxed(pwm.source_reg);
 }
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 1/8] clocksource/drivers/arm_global_timer: Prevent ftrace recursion Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-10-28 14:20 +0100
  [PATCH 3/8] clocksource/drivers/samsung_pwm_timer: Prevent ftrace recursion Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-10-28 14:20 +0100
  [PATCH 5/8] clocksource/drivers/vf_pit_timer: Prevent ftrace recursion Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-10-28 14:20 +0100
  [PATCH 8/8] clocksource/drivers/sh_mtu2: Fix multiple shutdown call issue Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-10-28 14:20 +0100
  [PATCH 4/8] clocksource/drivers/prima2: Prevent ftrace recursion Daniel Lezcano <daniel.lezcano@linaro.org> - 2015-10-28 14:30 +0100

csiph-web