Bug 5150 - buildok/nfs-all-probes.stp fails
Summary: buildok/nfs-all-probes.stp fails
Status: RESOLVED FIXED
Alias: None
Product: systemtap
Classification: Unclassified
Component: tapsets (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: David Smith
URL:
Keywords:
: 10900 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-10-09 15:33 UTC by William Cohen
Modified: 2009-11-18 17:07 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description William Cohen 2007-10-09 15:33:28 UTC
With the 2.6.23-rc9 kernel the probe points for some of the nfs.* nfs.*.* probes
are available.

Running /home/wcohen/stap_snap_200710081315/src/testsuite/buildok/nfs-all-probes.stp
starting
/home/wcohen/stap_snap_200710081315/src/testsuite/buildok/nfs-all-probes.stp
spawn1 stap -p4
/home/wcohen/stap_snap_200710081315/src/testsuite/buildok/nfs-all-probes.stp
semantic error: no match for probe point while resolving probe point
nfs.fop.sendfile

semantic error: no match for probe point while resolving probe point
nfs.fop.sendfile

semantic error: no match for probe point while resolving probe point
nfs.fop.sendfile.return


semantic error: no match for probe point while resolving probe point
nfs.fop.sendfile.return

semantic error: no match for probe point while resolving probe point
nfs.proc3.commit


semantic error: no match for probe point while resolving probe point
nfs.proc3.commit

semantic error: no match for probe point while resolving probe point
nfs.proc4.commit


semantic error: no match for probe point while resolving probe point
nfs.proc4.commit

semantic error: no match for probe point while resolving probe point nfs.proc2.read


semantic error: no match for probe point while resolving probe point nfs.proc2.read

semantic error: no match for probe point while resolving probe point nfs.proc3.read


semantic error: no match for probe point while resolving probe point nfs.proc3.read

semantic error: no match for probe point while resolving probe point nfs.proc4.read


semantic error: no match for probe point while resolving probe point nfs.proc4.read

semantic error: no match for probe point while resolving probe point nfs.proc.read


semantic error: no match for probe point while resolving probe point nfs.proc.read

semantic error: no match for probe point while resolving probe point nfs.proc2.write


semantic error: no match for probe point while resolving probe point nfs.proc2.write

semantic error: no match for probe point while resolving probe point nfs.proc3.write


semantic error: no match for probe point while resolving probe point nfs.proc3.write

semantic error: no match for probe point while resolving probe point nfs.proc4.write


semantic error: no match for probe point while resolving probe point nfs.proc4.write

semantic error: no match for probe point while resolving probe point nfs.proc.write


semantic error: no match for probe point while resolving probe point nfs.proc.write

semantic error: no match for probe point while resolving probe point nfs.proc.commit


semantic error: no match for probe point while resolving probe point nfs.proc.commit

semantic error: no match for probe point while resolving probe point
nfs.proc2.read.return


semantic error: no match for probe point while resolving probe point
nfs.proc2.read.return

semantic error: no match for probe point while resolving probe point
nfs.proc3.read.return


semantic error: no match for probe point while resolving probe point
nfs.proc3.read.return

semantic error: no match for probe point while resolving probe point
nfs.proc4.read.return


semantic error: no match for probe point while resolving probe point
nfs.proc4.read.return

semantic error: no match for probe point while resolving probe point
nfs.proc.read.return


semantic error: no match for probe point while resolving probe point
nfs.proc.read.return

semantic error: no match for probe point while resolving probe point
nfs.proc2.write.return


semantic error: no match for probe point while resolving probe point
nfs.proc2.write.return

semantic error: no match for probe point while resolving probe point
nfs.proc3.write.return


semantic error: no match for probe point while resolving probe point
nfs.proc3.write.return

semantic error: no match for probe point while resolving probe point
nfs.proc4.write.return


semantic error: no match for probe point while resolving probe point
nfs.proc4.write.return

semantic error: no match for probe point while resolving probe point
nfs.proc.write.return


semantic error: no match for probe point while resolving probe point
nfs.proc.write.return

semantic error: no match for probe point while resolving probe point
nfs.proc3.commit.return


semantic error: no match for probe point while resolving probe point
nfs.proc3.commit.return

semantic error: no match for probe point while resolving probe point
nfs.proc4.commit.return


semantic error: no match for probe point while resolving probe point
nfs.proc4.commit.return

semantic error: no match for probe point while resolving probe point
nfs.proc.commit.return


semantic error: no match for probe point while resolving probe point
nfs.proc.commit.return

Pass 2: analysis failed.  Try again with more '-v' (verbose) options.


Pass 2: analysis failed.  Try again with more '-v' (verbose) options.

wait results: 2766 exp15 0 1
FAIL: buildok/nfs-all-probes.stp
Comment 1 Mike Mason 2007-10-09 16:53:29 UTC
This is a new test that exposes nfs tapset bugs that have been around for a
while.  Looks like some or all of the functions associated with these probes
went away around 2.6.21.
Comment 2 David Smith 2009-11-09 15:58:03 UTC
*** Bug 10900 has been marked as a duplicate of this bug. ***
Comment 3 David Smith 2009-11-09 16:00:11 UTC
(Here's some info copied over from bug #10900 with up-to-date testing results.)

There are several problems in the nfs tapset.  During testing I used:
- a x86_64 rhel5 system (kernel 2.6.18-164.2.1.el5)
- a ia64 rhel5 system (kernel 2.6.18-157.el5)
- a rawhide system (kernel 2.6.31.5-96.fc12.x86_64.debug).

- probes 'nfs.fop.fsync' & 'nfs.fop.fsync.return' didn't work on rawhide

- probes 'nfs.fop.sendfile' & 'nfs.fop.sendfile.return' didn't work on rawhide

- probes 'nfs.fop.check_flags' & 'nfs.fop.check_flags.return' don't work on
either ia64 rhel5 or rawhide.  They did work on the x86_64 rhel5 system.

- probe 'nfs.aop.readpages.return' has a mistake in it. 'size = retstr' should
be 'size = $return' (to match the other return probes)

- probes 'nfs.aop.prepare_write' & 'nfs.aop.prepare_write.return' don't work on
either rhel5 or rawhide

- probes 'nfs.aop.commit_write' & 'nfs.aop.commit_write.return' don't work on
either rhel5 or rawhide
Comment 4 David Smith 2009-11-16 19:00:41 UTC
(In reply to comment #3)
> (Here's some info copied over from bug #10900 with up-to-date testing results.)
...
> - probes 'nfs.aop.prepare_write' & 'nfs.aop.prepare_write.return' don't work on
> either rhel5 or rawhide
> 
> - probes 'nfs.aop.commit_write' & 'nfs.aop.commit_write.return' don't work on
> either rhel5 or rawhide

Fixed the prepare_write()/commit_write() problem in commit 1bc3d8e.
Comment 5 David Smith 2009-11-16 21:59:52 UTC
(In reply to comment #3)
> - probes 'nfs.fop.fsync' & 'nfs.fop.fsync.return' didn't work on rawhide

Fixed in commit e7c8466 by added support for 'nfs_file_fsync'.
 
> - probes 'nfs.fop.sendfile' & 'nfs.fop.sendfile.return' didn't work on rawhide

This was a bug in my testing - those functions are only supported on kernels <=
2.6.18.

> - probes 'nfs.fop.check_flags' & 'nfs.fop.check_flags.return' don't work on
> either ia64 rhel5 or rawhide.  They did work on the x86_64 rhel5 system.

These probes actually work, they just can't find '$flags'.

> - probe 'nfs.aop.readpages.return' has a mistake in it. 'size = retstr' should
> be 'size = $return' (to match the other return probes)

Fixed in commit e7c8466.


With commits 1bc3d8e and e7c8466 all the 'nfs.fop.*' errors listed in comment #1
are gone.
Comment 6 David Smith 2009-11-18 17:07:54 UTC
Commit f210735 fixes the rest of the errors mentioned in comment #1 by making
the probe points 'nfs.proc.read', 'nfs.proc.write', and 'nfs.proc.commit'
optional.  Those probe points don't exist in newer kernels.

The problem of the probe 'nfs.fop.check_flags' not being able to resolve
'$flags' (mentioned in comment #5) is probably an instance of bug #1155 (inline
function parameters).

Since all the problems mentioned in the original report are now fixed, I'll mark
this one as resolved.