From: Daire Byrne <daire@dneg.com>
To: Serhei Makarov <me@serhei.io>
Cc: systemtap <systemtap@sourceware.org>
Subject: Re: newer kernel+systemtap & nfs.fop.open
Date: Mon, 4 Apr 2022 12:21:05 +0100 [thread overview]
Message-ID: <CAPt2mGModyjqgDCcGNNy1h0b1V9S03rCoa1zDJbn12dnqf6LTA@mail.gmail.com> (raw)
In-Reply-To: <9adcadfd-e6ba-4c0b-8e64-892ec7173bac@www.fastmail.com>
Serhei/David,
Thanks for the suggestions and explanation. I get the same result with
"fullpath_struct_file(task_current(), $filp)" using the v5.16 kernel
and systemtap 4.7pre.
As Serhei said, it seems like the mnt_parent is completely missing.
But then I realised I had completely forgotten that I manually patched
systemtap according to this just so I could get my script to compile
at all:
https://sourceware.org/bugzilla/show_bug.cgi?id=26184#c5
And now it also looks like a recent commit has been made to fix that
particular issue so I'll try to pull the latest systemtap and try
again.
https://sourceware.org/git/?p=systemtap.git;a=commit;h=3739d47c4cc427ce4818d884f429a3efa85c38ae
Daire
On Fri, 1 Apr 2022 at 21:13, Serhei Makarov <me@serhei.io> wrote:
>
>
>
> 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.
next prev parent reply other threads:[~2022-04-04 11:21 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-10 19:58 Daire Byrne
2022-04-01 12:26 ` Daire Byrne
2022-04-01 14:05 ` David Smith
2022-04-01 14:55 ` Serhei Makarov
2022-04-01 20:13 ` Serhei Makarov
2022-04-04 11:21 ` Daire Byrne [this message]
2022-04-04 12:28 ` Daire Byrne
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAPt2mGModyjqgDCcGNNy1h0b1V9S03rCoa1zDJbn12dnqf6LTA@mail.gmail.com \
--to=daire@dneg.com \
--cc=me@serhei.io \
--cc=systemtap@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).