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]

Re: do_mmap fails to work on RHEL5.1GA


baiwd <baiwd@cn.fujitsu.com> writes:

> When I test with the newest stp on RHEL5.1GA, I found that probe for
> do_mmap in memory.stp cannot work correctly. [...]

Thanks for testing!

> ERROR: probe kernel.function("do_mmap@include/linux/mm.h:1001")
> registration error (rc -22)

This means that systemtap got addresses it thought plausible, but the
kernel refused to actually insert a probe there.  I wonder if this is
the latent systemtap bug awakened by elfutils 0.131.

> By looking through the elf file of linux kernel debug and the source
> codes, I think do_mmap and do_mmap2 are inlined functions [...]

That by itself is not a problem.  We can often find reasonable probing
addresses for inlined functions.  (Not being able to get at their
parameters is a whole different (gcc) problem.)


> So I wondered whether memory.stp can be changed as following:
> [...]
> -probe vm.mmap = kernel.function("do_mmap"), kernel.function("do_mmap2")? {
> +probe vm.mmap = kernel.function("do_mmap_pgoff") {

This would be a good candidate for the recently added optional/sufficient flag:

probe vm.mmap = kernel.function("do_mmap")!,
                kernel.function("do_mmap_pgoff")!,
                kernel.function("do_mmap2") { ... }

- FChE


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