2
함수의 일부 정보를 인쇄하여 SELinux를 디버깅하려고합니다. 필요한 정보는 현재 pid 및 시스템 호출입니다. pid는 쉽습니다 : get_current()->pid
,하지만 내가 처리하고있는 현재 시스템 호출을 얻을 수있는 방법을 찾을 수 없습니다.현재 처리중인 시스템 호출의 이름을 아는 방법은 무엇입니까?
나는 get_wchan()
을 보았지만 대기중인 프로세스에서만 작동합니다. get_wchan()
처럼 스택을 검사 할 수 있지만 더 좋은 방법이 있습니까?
코드에서'dump_stack()'을 호출하면 syslog에 스택 트레이스가 생깁니다. 어떤 시스템 호출이 호출되었는지 결정하는 데 도움이됩니다. 'systemtap','ftrace' 등 커널에서 syscall을 추적하는 더 좋은 방법이 있습니다. – askb
@askb, 좋은 출발점이 될 것 같습니다. 시스템 추적 번호가 스택 추적을 파기하기보다는 어딘가에 저장되어야한다고 생각했습니다. –
이 패치는 내가 원했던 것이지만 메인 라인에 들어갈 수 없었습니다. "[C/R ARM] [PATCH 1/3] ARM : 초보적인 시스템 콜 인터페이스"http://lists.infradead.org/pipermail/linux-arm-kernel/2010-March/011812.html 토론을 읽는 것은 흥미 롭습니다. . –