Home
last modified time | relevance | path

Searched hist:bded0706434dd34fe9d39a8f1bbb518154cacd7f (Results 1 – 1 of 1) sorted by relevance

/openbmc/linux/arch/powerpc/platforms/pseries/
H A Dras.cdiff bded0706434dd34fe9d39a8f1bbb518154cacd7f Tue Jul 04 22:56:26 CDT 2017 Nicholas Piggin <npiggin@gmail.com> powerpc/pseries/le: Work around a firmware quirk

Some PowerVM firmware when delivering a system reset interrupt to a
little endian OS will mess up SRR registers. They are byteswapped, and
SRR1 is incorrect. An example from a crash:

NIP: 14dd0900000000c0
MSR: 1000000200000080

It's possible to detect this pattern in SRR1 (that would never happen
in normal operation), and at least fix the NIP. After this patch, the
same interrupt reports NIP properly:

NIP [c00000000009dd14] plpar_hcall_norets+0x1c/0x28

Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>