2.6.33 NFS server header reorg breaks existing systemtap scripts.
Frank Ch. Eigler
fche@redhat.com
Sun Dec 20 00:31:00 GMT 2009
Hi -
> > Sigh. Well, nfsd.stp can probably adapt to avoid using those headers,
> > and rewrite __get_fh etc. to rely on @cast() instead of embedded-C.
>
> If you can point me at some examples on how to use @cast(), I'll
> take a stab at the rewrite...
Sure, something like this:
function __get_fh(argp,index) {
if (index==3) return (& @cast(argp, "nfsd_readargs", "nfsd")->fh);
/* else ... */
}
Actually, it would make sense to inline the appropriate @cast at the
points where __get_fh() is currently called and forget __get_fh().
> > Yes, it's a problem. This is harder to work around for tracepoints,
> > which systemtap finds by parsing kernel-devel header files (instead of
> > searching debuginfo or whatnot). Perhaps we should lobby kernel-devel
> > to include all .h files from the kernel build trees, even subsystem
> > internal .h files.
>
> I think we are going to have to... Starting with rhel6...
OK, I'll open some rhbz's.
- FChE
More information about the Systemtap
mailing list