powernv: Fix OPAL tracepoint code
authorAnton Blanchard <anton@samba.org>
Tue, 6 Jan 2015 10:12:08 +0000 (21:12 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 12 Jan 2015 05:40:02 +0000 (16:40 +1100)
commitbfe5fda8e7ced129716f5741cf7ed2592a338824
tree6828d0b0eb894f80cc90eb79dcd0ba5d0e8e528e
parenteaa27f34e91a14cdceed26ed6c6793ec1d186115
powernv: Fix OPAL tracepoint code

Patch c49f63530bb6 ("powernv: Add OPAL tracepoints") has a spurious
store to the stack:

ld      r12,opal_tracepoint_refcount@toc(r2);           \
std     r12,32(r1);                                     \

The store was originally used to save the current tracepoint status
so the entry and the exit tracepoints were always balanced. In the
end I just created a separate path when tracepoints are enabled.

The offset on the stack used for this store is not valid for ABIv2
and it causes strange issues. I noticed it because OPAL console input
was broken.

Fixes: c49f63530bb6 ("powernv: Add OPAL tracepoints")
Cc: <stable@vger.kernel.org> # v3.17+
Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/platforms/powernv/opal-wrappers.S