This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

kallsyms __print_symbol prints first weak symbol encountered


Hi,

I am try to see how I can use kallsyms to get the mapping syscall id ->
syscall name by listing all the symbols corresponding to the function
pointers present in the sys_call_table.

However, I just ran into what I consider an unusual behavior of kallsyms:
when I list the sys_ni() (not implemented system calls), I get
compat_sys_futex instead.

If I look at System.map, it's explained by this:

c0146630 W compat_sys_futex
c0146630 W compat_sys_get_mempolicy
c0146630 W compat_sys_get_robust_list
c0146630 W compat_sys_ipc
c0146630 W compat_sys_kexec_load
c0146630 W compat_sys_keyctl
...
c0146630 T sys_ni_syscall
...
c0146630 W sys_timerfd

kallsyms returns the first symbol encountered, even though it is weak,
when it should in fact return sys_ni_syscall.

Is it a concern for anyone else out there ? Would it make sense to fix
it ?

Mathieu

-- 
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F  BA06 3F25 A8FE 3BAE 9A68


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]