From 3d15fd75ae6c063aee7e6fbdbb3840b466144161 Mon Sep 17 00:00:00 2001 From: Ben Dooks Date: Tue, 19 Oct 2004 19:49:21 +0100 Subject: [PATCH] [ARM PATCH] 2132/1: Fix timer NULL pointer de-reference on suspend Patch from Ben Dooks Timer suspend code fails to check for NULL before calling the timer implementor's suspend or resume hooks. Signed-off-by: Ben Dooks --- arch/arm/kernel/time.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c index f80a89de33c3b..725a74d8580dc 100644 --- a/arch/arm/kernel/time.c +++ b/arch/arm/kernel/time.c @@ -351,14 +351,20 @@ void timer_tick(struct pt_regs *regs) static int timer_suspend(struct sys_device *dev, u32 state) { struct sys_timer *timer = container_of(dev, struct sys_timer, dev); - timer->suspend(); + + if (timer->suspend != NULL) + timer->suspend(); + return 0; } static int timer_resume(struct sys_device *dev) { struct sys_timer *timer = container_of(dev, struct sys_timer, dev); - timer->resume(); + + if (timer->resume != NULL) + timer->resume(); + return 0; } #else -- 2.53.0