On 15/01/2015 05:25, Michael Ellerman wrote: > On Mon, 2014-11-24 at 15:07 +0100, Laurent Dufour wrote: >> On pseries system (LPAR) xmon failed to enter when running in LE mode, system >> is hunging. Inititating xmon will lead to such an output on the console: >> >> SysRq : Entering xmon >> cpu 0x15: Vector: 0 at [c0000003f39ffb10] >> pc: c00000000007ed7c: sysrq_handle_xmon+0x5c/0x70 >> lr: c00000000007ed7c: sysrq_handle_xmon+0x5c/0x70 >> sp: c0000003f39ffc70 >> msr: 8000000000009033 >> current = 0xc0000003fafa7180 >> paca = 0xc000000007d75e80 softe: 0 irq_happened: 0x01 >> pid = 14617, comm = bash >> Bad kernel stack pointer fafb4b0 at eca7cc4 >> cpu 0x15: Vector: 300 (Data Access) at [c000000007f07d40] >> pc: 000000000eca7cc4 >> lr: 000000000eca7c44 >> sp: fafb4b0 >> msr: 8000000000001000 >> dar: 10000000 >> dsisr: 42000000 >> current = 0xc0000003fafa7180 >> paca = 0xc000000007d75e80 softe: 0 irq_happened: 0x01 >> pid = 14617, comm = bash >> cpu 0x15: Exception 300 (Data Access) in xmon, returning to main loop >> xmon: WARNING: bad recursive fault on cpu 0x15 >> >> The root cause is that xmon is calling RTAS to turn off the surveillance >> when entering xmon, and RTAS is requiring big endian parameters. >> >> This patch is byte swapping the RTAS arguments when running in LE mode. >> >> Signed-off-by: Laurent Dufour <lduf...@linux.vnet.ibm.com> >> --- >> arch/powerpc/xmon/xmon.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c >> index b988b5addf86..c8efbb37d6e0 100644 >> --- a/arch/powerpc/xmon/xmon.c >> +++ b/arch/powerpc/xmon/xmon.c >> @@ -293,10 +293,10 @@ static inline void disable_surveillance(void) >> args.token = rtas_token("set-indicator"); >> if (args.token == RTAS_UNKNOWN_SERVICE) >> return; > > I just noticed we're not handling the token correctly here. It is be32 also.
Ouch, my mistake :( I will drop a new patch to complete this one. Cheers. > cheers > > _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev