lkml.org 
[lkml]   [2022]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 04/13] openrisc: Add syscall details to emergency syscall debugging
    Date
    When bringing linux on the or1k Marocchino we ran into issues starting
    init. This patch adds the syscall number and return address to
    assist tracing syscalls even before strace is able to be used.

    By default this is all disabled but a developer could adjust the ifdef
    to enable debugging.

    Cc: Andrey Bacherov <bandvig@mail.ru>
    Signed-off-by: Stafford Horne <shorne@gmail.com>
    ---
    arch/openrisc/kernel/entry.S | 20 +++++++++++++++-----
    1 file changed, 15 insertions(+), 5 deletions(-)

    diff --git a/arch/openrisc/kernel/entry.S b/arch/openrisc/kernel/entry.S
    index 3ca1b1f490b9..54a87bba35ca 100644
    --- a/arch/openrisc/kernel/entry.S
    +++ b/arch/openrisc/kernel/entry.S
    @@ -601,7 +601,7 @@ UNHANDLED_EXCEPTION(_vector_0xb00,0xb00)
    */

    _string_syscall_return:
    - .string "syscall return %ld \n\r\0"
    + .string "syscall r9:0x%08x -> syscall(%ld) return %ld\0"
    .align 4

    ENTRY(_sys_call_handler)
    @@ -679,15 +679,25 @@ _syscall_return:
    _syscall_debug:
    l.movhi r3,hi(_string_syscall_return)
    l.ori r3,r3,lo(_string_syscall_return)
    - l.ori r27,r0,1
    + l.ori r27,r0,2
    l.sw -4(r1),r27
    l.sw -8(r1),r11
    - l.addi r1,r1,-8
    + l.lwz r29,PT_ORIG_GPR11(r1)
    + l.sw -12(r1),r29
    + l.lwz r29,PT_GPR9(r1)
    + l.sw -16(r1),r29
    l.movhi r27,hi(_printk)
    l.ori r27,r27,lo(_printk)
    l.jalr r27
    - l.nop
    - l.addi r1,r1,8
    + l.addi r1,r1,-16
    + l.addi r1,r1,16
    +#endif
    +#if 0
    +_syscall_show_regs:
    + l.movhi r27,hi(show_registers)
    + l.ori r27,r27,lo(show_registers)
    + l.jalr r27
    + l.or r3,r1,r1
    #endif

    _syscall_check_trace_leave:
    --
    2.31.1
    \
     
     \ /
      Last update: 2022-05-17 02:57    [W:2.750 / U:0.608 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site