newer kernel+systemtap & nfs.fop.open

Serhei Makarov me@serhei.io
Fri Apr 1 20:13:15 GMT 2022



On Fri, Apr 1, 2022, at 10:55 AM, Serhei Makarov wrote:
> In this case the last commit
> to tapsets/linux/dentry.stp was in 2020
> so it looks like we may have some catching up to the kernel
> to do. I'll investigate more (i.e. delve into kernel git history)
> and get back to you.
I'm got a 'read fault' running your example on Fedora 5.15.4-201.fc35.x86_64,
which indicates even further divergence later on.
Which kernel version were you running the example on?

Looks like "struct mount" no longer defines the "mnt_parent" member
used by task_dentry_path() tapset function in /usr/share/systemtap/tapset/linux/dentry.stp
which is strange as the upstream Linux kernel code still uses that member
in the equivalent fs/d_path.c __prepend_path code.

sutap -ve 'probe begin { if (@type_member_defined("mount", mnt_parent)) { print("foo") } else { print("bar") } exit() }'

Very strange, as even checking the debugsource doesn't show any downstream changes
as found by

$ debuginfod-find source /boot/vmlinuz-5.15.4-201.fc35.x86_64 /usr/src/debug/kernel-5.15.4/linux-5.15.4-201.fc35.x86_64/fs/d_path.c

I'm also confused and will continue investigating until I become unconfused.


More information about the Systemtap mailing list