• Michael Ellerman's avatar
    powerpc/powernv: Fix opal_exit tracepoint opcode · 50e02772
    Michael Ellerman authored
    commit a7e0fb6c upstream.
    
    Currently the opal_exit tracepoint usually shows the opcode as 0:
    
      <idle>-0     [047] d.h.   635.654292: opal_entry: opcode=63
      <idle>-0     [047] d.h.   635.654296: opal_exit: opcode=0 retval=0
      kopald-1209  [019] d...   636.420943: opal_entry: opcode=10
      kopald-1209  [019] d...   636.420959: opal_exit: opcode=0 retval=0
    
    This is because we incorrectly load the opcode into r0 before calling
    __trace_opal_exit(), whereas it expects the opcode in r3 (first function
    parameter). In fact we are leaving the retval in r3, so opcode and
    retval will always show the same value.
    
    Instead load the opcode into r3, resulting in:
    
      <idle>-0     [040] d.h.   636.618625: opal_entry: opcode=63
      <idle>-0     [040] d.h.   636.618627: opal_exit: opcode=63 retval=0
    
    Fixes: c49f6353 ("powernv: Add OPAL tracepoints")
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    50e02772
opal-wrappers.S 10.5 KB