This is the mail archive of the
mailing list for the systemtap project.
Re: manual SyS_foo management is unnecessary?
On 06/14/2010 10:19 PM, Ananth N Mavinakayanahalli wrote:
> For the normal case (kernel.function) case, when SYSCALL_WRAPPERS were
> introduced, every one of the syscall tests would fail with 'no match for
> probe point sys_open' and the like. This was because the sys_ variants
> would be inlined and stap wouldn't find them. Has this changed?
It's not that sys_ is an inline. There are three variants:
- sys_foo(typed args), declared and aliased to SyS_foo
- SyS_foo(long args), defined to cast each arg in a call to SYSC_foo
- inline SYSC_foo(typed args), the real syscall function
Your commit 132c337 in February 2009 added all the SyS_ variants to the
syscalls tapset, which was necessary at the time because stap didn't
know how to find the alias-only sys_ functions.
My commit 1c6b77e in July 2009 started resolving symbol aliases, which
was specifically done for libraries like libc, though it applies to any
ELF object. It wasn't until now that I realized that this applies to
the sys_foo names too.