powerpc/le: Ensure that the 'stop-self' RTAS token is handled correctly
authorTony Breeds <tony@bakeyournoodle.com>
Thu, 20 Feb 2014 10:13:52 +0000 (21:13 +1100)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Fri, 28 Feb 2014 07:06:24 +0000 (18:06 +1100)
commit41dd03a94c7d408d2ef32530545097f7d1befe5c
treedf4556c147db73dce78a2560f38eb9a2826330a5
parent66f9af83e56bfa12964d251df9d60fb571579913
powerpc/le: Ensure that the 'stop-self' RTAS token is handled correctly

Currently we're storing a host endian RTAS token in
rtas_stop_self_args.token.  We then pass that directly to rtas.  This is
fine on big endian however on little endian the token is not what we
expect.

This will typically result in hitting:
panic("Alas, I survived.\n");

To fix this we always use the stop-self token in host order and always
convert it to be32 before passing this to rtas.

Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
Cc: stable@vger.kernel.org
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/platforms/pseries/hotplug-cpu.c