Patch "watchdog: qcom: fix kernel panic due to external abort on non-linefetch" has been added to the 4.9-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
watchdog: qcom: fix kernel panic due to external abort on non-linefetch
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
watchdog-qcom-fix-kernel-panic-due-to-external-abort-on-non-linefetch.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
f06f35c66fdbd5ac38901a3305ce763a0cd59375Mon Sep 17 00:00:00 2001
From: Christian Lamparter <[email protected]>
Date: Mon, 14 Nov 2016 02:11:16 +0100
Subject: watchdog: qcom: fix kernel panic due to external abort on non-linefetch
From: Christian Lamparter <[email protected]>
commit f06f35c66fdbd5ac38901a3305ce763a0cd59375 upstream.
This patch fixes a off-by-one in the "watchdog: qcom: add option for standalone watchdog not in timer block" patch that causes the following panic on boot:
Quoted 16 lines
Unhandled fault: external abort on non-linefetch (
0x1008) at0xc8874002pgd =c0204000
[c8874002] *pgd=87806811, *pte=0b017653, *ppte=0b017453Internal error: : 1008 [#1] SMP ARM CPU: 2 PID: 1 Comm: swapper/0 Not tainted 4.8.6 #0 Hardware name: Generic DT based system PC is at 0xc02222f4 LR is at 0x1 pc : [<c02222f4>] lr : [<00000001>] psr: 00000113sp :
c782fc98ip : 00000003 fp : 00000000
r10: 00000004 r9 :c782e000r8 :c04ab98c
r7 : 00000001 r6 :c8874002r5 :c782fe00r4 : 00000002 r3 : 00000000 r2 :c782fe00r1 : 00100000 r0 :c8874002
Flags: nzcv IRQs on FIQs on ModeSVC_32ISA ARM Segment none
Control:10c5387dTable:8020406aDAC: 00000051 Process swapper/0 (pid: 1, stack limit =0xc782e210)
Quoted 2 lines
Stack: (0xc782fc98 to 0xc7830000)[...]
The WDT_STS (status) needs to be translated via wdt_addr as well.
--- drivers/watchdog/qcom-wdt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/watchdog/qcom-wdt.c +1 -1
@@ -209,7 +209,7 @@ static int qcom_wdt_probe(struct platfor wdt->wdd.parent = &pdev->dev; wdt->layout = regs; -if (readl (wdt->base +WDT_STS ) &1 ) +if (readl (wdt_addr (wdt,WDT_STS )) &1 ) wdt->wdd.bootstatus =WDIOF_CARDRESET ;/*
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/watchdog-qcom-fix-kernel-panic-due-to-external-abort-on-non-linefetch.patch