분석할 것
initcall:*
printk:console
initcall:*
- 디바이스 드라이버가 가장 먼저 초기화 될 때 호출되는 함수.
vi /boot/cmdline.txt
![](https://velog.velcdn.com/images/ooweatah/post/78178d07-82f1-4802-a046-667c55c5f91b/image.png)
- 타임스탬프를 확인하여 함수의 실행시간을 체크할 수 있다.
late_initcall로 설정된 함수
![](https://velog.velcdn.com/images/ooweatah/post/eb0190b1-e8aa-4ffc-831e-f9fe32fcf942/image.png)
trace_event=initcall:* ftrace=function
![](https://velog.velcdn.com/images/ooweatah/post/51d1b0fa-b749-46e1-9ca6-a117644c0314/image.png)
- 부트커맨드라인에서 출력되는 각각의 주소정보 출력 , 콜스택 출력 , 심볼 이름과 오프셋이 같이 출력
![](https://velog.velcdn.com/images/ooweatah/post/cac43e02-81e9-4f40-877f-b7f649d8ffe6/image.png)
- 타임스탬프 : 0.004초부터 출력
- do_one_init콜이 실행되어 init call start ~finish가 이루어짐
![](https://velog.velcdn.com/images/ooweatah/post/4d19083f-c874-4869-abc9-c4aa3569ae5d/image.png)
- 해당 디바이스 드라이버가 모듈타입에서의 동작?
- 시스템콜이 유발되어서 시스템콜 핸들러가 유발됨
trace_event=printk:console
![](https://velog.velcdn.com/images/ooweatah/post/695c23bf-8770-4e76-870b-2f281b98fde1/image.png)
- 위의 정보는 preempt count에 관한 정보
![](https://velog.velcdn.com/images/ooweatah/post/745401be-eba2-4485-ac23-8ae52802f5a8/image.png)
- early _irq_int +0x88에서 printk가 호출되었다.