[問題] Kernel build fail

作者: yshihyu (yshihyu)   2015-07-25 01:17:42
最近再android 上使用 ftrace , android kernel 是 3.10.49
cat available_filter_functions 會出現下面錯誤 ,
adb shell cat /sys/kernel/debug/tracing/available_filter_functions
/system/bin/sh: cat: /sys/kernel/debug/tracing/available_filter_functions: No
such device
但是我另外版本 android kernel 3.10.69 可以正常使用
於是我把 android kernel-3.10.69/kernel/ftrace 程式碼 porting 到
android kernel-3.10.49/kernel/ftrace
編譯後出現下面錯誤訊息
kernel/kernel/trace/trace_sched_wakeup.c: In function 'start_wakeup_tracer':
kernel/kernel/trace/trace_sched_wakeup.c:546:2: warning: passing argument 1
of 'register_trace_sched_migrate_task' from incompatible pointer type
[enabled by default]
error, forbidden warning: trace_sched_wakeup.c:546
make[3]: *** [kernel/trace/trace_sched_wakeup.o] Error 1
make[2]: *** [kernel/trace] Error 2
make[2]: *** Waiting for unfinished jobs....
1. 但是有產生出 trace_sched_wakeup.o , build error 為什麼還是可以編譯出
trace_sched_wakeup.o
2. register_trace_sched_migrate_task 再整個kernel中根本沒有實現這函數 , 為
什麼3.10.69也可以編譯過? 是不是Makefile 有做什麼flag 阻擋?
有辦法像shell script debug 下 -x 參數可以看到詳細執行流程
在kernel 中像Makefile問題要怎麼去分析?
3. 我現在被指派做kernel 部份我發現很多時候搞不懂 Makefile Kconfig,
初學kernel 要去研究內核編譯結構嘛?還是應該專注再程式碼學習?
謝謝

Links booklink

Contact Us: admin [ a t ] ucptt.com