lkml.org 
[lkml]   [2017]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: powernv:idle: Clear r12 on wakeup from stop lite
    Date
    On Wed, 2017-06-28 at 01:16:49 UTC, Akshay Adiga wrote:
    > pnv_wakeup_noloss expects R12 to contain SRR1 value to determine if
    > the wakeup reason is an HMI in CHECK_HMI_INTERRUPT.
    >
    > When we wakeup with ESL=0, SRR1 will not contain the wakeup reason, so
    > there is no point setting R12 to SRR1.
    >
    > However, we don't set R12 at all and R12 contains garbage, and still
    > being used to check HMI assuming that it had SRR1. causing the
    > OPAL msglog to be filled with the following print:
    > HMI: Received HMI interrupt: HMER = 0x0040000000000000
    >
    > This patch clears R12 after waking up from stop with ESL=EC=0, so that
    > we don't accidentally enter the HMI handler in pnv_wakeup_noloss if
    > the R12[42:45] corresponds to HMI as wakeup reason.
    >
    > Bug existed prior to "commit 9d29250136f6 ("powerpc/64s/idle: Avoid SRR
    > usage in idle sleep/wake paths") but was never hit in practice
    >
    > Signed-off-by: Akshay Adiga <akshay.adiga@linux.vnet.ibm.com>
    > Fixes: 9d29250136f6 ("powerpc/64s/idle: Avoid SRR usage in idle
    > sleep/wake paths")
    > Reviewed-by: Nicholas Piggin <npiggin@gmail.com>

    Applied to powerpc next, thanks.

    https://git.kernel.org/powerpc/c/4d0d7c02df680740da41f5f92a238c

    cheers

    \
     
     \ /
      Last update: 2017-06-29 14:21    [W:5.144 / U:1.856 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site