iamyooon 2019. 1. 11. 09:31

coredump 가능한 시그널

        Signal      Value     Action   Comment

──────────────────────────────────────────────────────────────────

       SIGQUIT       3       Core    Quit from keyboard

       SIGILL        4       Core    Illegal Instruction

       SIGABRT       6       Core    Abort signal from abort(3)

       SIGFPE        8       Core    Floating point exception

       SIGSEGV      11       Core    Invalid memory reference
       SIGBUS      10,7,10     Core    Bus error (bad memory access)
       SIGSYS      12,31,12    Core    Bad argument to routine (SVr4)
       SIGTRAP        5        Core    Trace/breakpoint trap
       SIGURG      16,23,21    Ign     Urgent condition on socket (4.2BSD)
       SIGVTALRM   26,26,28    Term    Virtual alarm clock (4.2BSD)
       SIGXCPU     24,24,30    Core    CPU time limit exceeded (4.2BSD)
       SIGXFSZ     25,25,31    Core    File size limit exceeded (4.2BSD)


coredump 가능한 시그널을 받은 태스크의 kernel callstack

...

 #4 [<c00f0c10>] (__kernel_write) from [<c013a62c>]

 #5 [<c013a62c>] (dump_emit) from [<c0138c6c>]

 #6 [<c0138c6c>] (elf_core_dump) from [<c013b134>]

 #7 [<c013b134>] (do_coredump) from [<c002c364>]

 #8 [<c002c364>] (get_signal) from [<c0011558>]

 #9 [<c0011558>] (do_signal) from [<c00119a0>]

#10 [<c00119a0>] (do_work_pending) from [<c000e7c8>]



coredump 가능한 시그널을 받은 태스크의 task state

crash> task 642 -R state

PID: 642    TASK: cbb7d600  CPU: 0   COMMAND: "sample"

  state = 1, <------------------- TASK_INTERRUPTIBLE