From: Peter Zijlstra <peterz@infradead.org>
To: Arjan van de Ven <arjan@infradead.org>
Cc: Steven Rostedt <rostedt@goodmis.org>,
linux-kernel@vger.kernel.org, mingo@elte.hu
Subject: Re: [PATCH] ftrace: add an fsync tracer
Date: Thu, 06 Nov 2008 15:50:52 +0100 [thread overview]
Message-ID: <1225983052.7803.4623.camel@twins> (raw)
In-Reply-To: <20081106063108.02b4813d@infradead.org>
On Thu, 2008-11-06 at 06:31 -0800, Arjan van de Ven wrote:
> On Thu, 06 Nov 2008 15:19:01 +0100
> Peter Zijlstra <peterz@infradead.org> wrote:
>
> > > a syscall tracer will exactly not tell you which file(name) was
> > > being fsync()'d which was the whole point.
> >
> > It will tell you the process and the fd, and when you have those two
> > its a simple step to find the actual file.
>
> actually process+fd is absolutely useless; the typical useage is
>
> fd = open(file)
> write(fd, <> )
> fsync(fd);
> close(fd);
>
> by the time userland gets the data the fd is closed. And heck, even the
> program may have exited.
> Really, the fd number is only useful for the program itself, not for
> any outside part, and especially, later in time.
The syscall tracer will also have told you about that open.
Anyway, do_fsync() doesn't catch all sync actions (although I suspect it
catches most). We still have the mythical sync_file_range() that Andrew
still wants a real program to use.
And then there are things like sync and umount that do syncs too. But I
suspect you might not be interested in those.
> >
> > > LatencyTOP already KNOWS that fsync is the problem. What it doesn't
> > > know is which file is being fsync()d.
> > >
> > > fsync is a problem when used incorrectly, not just for ext3 but also
> > > due to barriers. That's why it's important to be able to find who
> > > calls it when it impacts interactive performance.
> >
> > Which suggests you want a tracer that gives more information about who
> > generates barriers, not specifically fsync().
>
> that would be a fine second tracer. because the filesystem part of it
> is also expensive, and you can diss ext3 all you want, it is reality
> for 99% of the people...
Lets hope btrfs will fix that quickly. fsync() causing latencies for
anyone else besides tasks interested in that file is utterly
unacceptable.
> (and I suspect that at the barrier level it'll be really hard to get to
> a filename)
I suspect you might be right, but that's not a reason not to try ;-)
next prev parent reply other threads:[~2008-11-06 14:50 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-05 17:49 [PATCH] ftrace: add an fsync tracer Arjan van de Ven
2008-11-05 19:43 ` Marcin Slusarz
2008-11-05 20:36 ` Arjan van de Ven
2008-11-06 7:20 ` Ingo Molnar
2008-11-06 12:55 ` Peter Zijlstra
2008-11-06 13:28 ` Frédéric Weisbecker
2008-11-06 14:06 ` Arjan van de Ven
2008-11-06 14:19 ` Peter Zijlstra
2008-11-06 14:31 ` Arjan van de Ven
2008-11-06 14:50 ` Peter Zijlstra [this message]
2008-11-06 15:01 ` Arjan van de Ven
2008-11-06 15:34 ` Steven Rostedt
2008-11-06 17:45 ` Arjan van de Ven
2008-11-06 20:19 ` Frank Ch. Eigler
2008-11-06 20:29 ` Peter Zijlstra
2008-11-06 20:57 ` Frank Ch. Eigler
2008-11-06 21:18 ` Jason Baron
2008-11-06 21:53 ` Mathieu Desnoyers
2008-11-06 22:14 ` Frank Ch. Eigler
2008-11-06 22:25 ` Mathieu Desnoyers
2008-11-06 23:25 ` Frank Ch. Eigler
2008-11-07 4:25 ` Arjan van de Ven
2008-11-07 5:12 ` Mathieu Desnoyers
2008-11-06 21:13 ` Arjan van de Ven
2008-11-06 21:20 ` Frank Ch. Eigler
2008-11-06 14:14 ` Arjan van de Ven
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=1225983052.7803.4623.camel@twins \
--to=peterz@infradead.org \
--cc=arjan@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.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