joelagnel / adeb

A debian-based shell environment designed for Android and adb
Apache License 2.0
318 stars 98 forks source link

Why are there so many '[unknown]' address info while using uprobe? #41

Open zhanweiw opened 3 years ago

zhanweiw commented 3 years ago

I installed 'adeb' tool in Android R platform, I've enabled the below kernel config:

CONFIG_IKHEADERS=m CONFIG_BPF_JIT=y CONFIG_BPF=y CONFIG_BPF_SYSCALL=y CONFIG_BPF_JIT_ALWAYS_ON=y CONFIG_HAVE_EBPF_JIT=y CONFIG_BPF_EVENTS=y CONFIG_KPROBES=y CONFIG_KPROBE_EVENTS=y CONFIG_UPROBES=y CONFIG_UPROBE_EVENTS=y CONFIG_TRACEPOINTS=y CONFIG_PREEMPTIRQ_EVENTS=y

But while I running the below command to catch the kernel & user space call stack, I found most of the user space call stack was marked with [unknown]. Are there any way to fix this issue? Thanks in advance.

trace 'do_sys_open "%s", arg2' -T -K -U > trace.txt

Part of the abnormal call stack info(I've attached the trace.txt):

17:51:04 1093 2027 InputReader do_sys_open /dev/pmsg0 do_sys_open+0x0 [kernel] el0_svc_common+0xa0 [kernel] el0_svc_handler+0x78 [kernel] el0_svc+0x8 [kernel] openat+0x8 [libc.so] [unknown] [liblog.so] android_log_bwrite+0x88 [liblog.so] [unknown] [libandroid_runtime.so] [unknown] [boot-framework.oat] ...... 17:51:05 1093 24670 Binder:1093_1D do_sys_open /dev/pmsg0 do_sys_open+0x0 [kernel] el0_svc_common+0xa0 [kernel] el0_svc_handler+0x78 [kernel] el0_svc+0x8 [kernel] openat+0x8 [libc.so] [unknown] [liblog.so] [unknown] [liblog.so] android_log_logd_logger+0x7c [liblog.so] [unknown] [libbase.so] [unknown] [libbase.so] std::1::function::func<art::InitLogging(char*, void (&)(char const))::LogdLoggerLocked, std::1::allocator<art::InitLogging(char*, void (&)(char const))::LogdLoggerLocked>, void (android::base::LogId, android::base::LogSeverity, char const, char const, unsigned int, char const)>::operator()(android::base::LogId&&, android::base::LogSeverity&&, char const&&, char const&&, unsigned int&&, char const&&)+0x74 [libartbase.so] [unknown] [libbase.so] __android_log_buf_write+0xbc [liblog.so] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown] ...... 17:51:12 3749 4577 AsyncTask #2 do_sys_open /dev/pmsg0 do_sys_open+0x0 [kernel] el0_svc_common+0xa0 [kernel] el0_svc_handler+0x78 [kernel] el0_svc+0x8 [kernel] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown] [unknown]