2013-11-23 5 views
2

커널이 오작동하는 경우 0xac/0x2b8은 무엇을 의미합니까? 또한 함수의 파일에서 줄 번호를 어떻게 얻을 수 있습니까? 이것은 ARM 아치의 Linux입니다.커널에서 라인 번호를 찾으십시오.

PC는 get_next_timer_interrupt에있다 + 0xac/0x2b8

+0

이 질문에 대한 답변도 참조하십시오. http://stackoverflow.com/questions/6151538/addr2line-on-kernel-module – Eugene

답변

2

이것은 예외가 get_next_timer_interrupt+0xac 주소에 발생했음을 의미합니다. 0xacget_next_timer_interrupt 절차의 오프셋입니다. 0x2b8은 예외가 발생한 프로 시저의 길이 (get_next_timer_interrupt)를 의미합니다.

skorgon 작성한대로 addr2line을 사용하여 디코딩하거나 objdump 명령을 사용하여 Linux 커널을 디스 어셈블하고 커널 소스에서 문제가있는 행을 찾을 수 있습니다. 물론 리눅스 커널은 디버깅 심볼로 컴파일되어야한다.

관련 문제