From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Oleg Drokin <green@linuxhacker.ru>
Cc: Evgeny Budilovsky <budevg@gmail.com>,
devel@driverdev.osuosl.org,
Andreas Dilger <andreas.dilger@intel.com>,
Peng Tao <bergwolf@gmail.com>,
linux-kernel@vger.kernel.org, Lai Siyao <lai.siyao@intel.com>
Subject: Re: [PATCH] staging/lustre: use rcu_dereference to access rcu protected current->real_parent field
Date: Thu, 7 Aug 2014 22:32:46 -0700 [thread overview]
Message-ID: <20140808053246.GA13588@kroah.com> (raw)
In-Reply-To: <1FE03450-A256-4A18-85AB-6332A28E3EF5@linuxhacker.ru>
On Fri, Aug 08, 2014 at 01:06:15AM -0400, Oleg Drokin wrote:
>
> On Aug 8, 2014, at 12:42 AM, Greg Kroah-Hartman wrote:
>
> > On Fri, Aug 08, 2014 at 12:03:20AM -0400, Oleg Drokin wrote:
> >> Hello!
> >>
> >> On Aug 7, 2014, at 11:49 PM, Greg Kroah-Hartman wrote:
> >>>>
> >>>> This is not a critical bug and in the worst case the code here may
> >>>> cause miss of statistics counter increase.
> >>>> This is why I think it is not worth to backport the patch at all.
> >>> You are right, and if this is just for some random "statistics" file,
> >>> can we just delete the whole function?
> >>
> >> I hope not!
> >> This is used all around the client to tally up various operations executed counts.
> > Why would you do that? Why would they care?
>
> We would do that to provide information on the client operations performed.
> They would care because they are interested in what particular clients might be doing.
>
> >> The statistic is then used by various userspace monitoring tools.
> > Why not use the in-kernel monitoring tools instead of creating your own?
> > What does userspace do with that information?
>
> We don't really control the userspace tools. People write tools to suit their needs
> to monitor loads, see odd things the end users are doing or possibly for some
> debugging even.
> Correlating these numbers with what server sees also proves useful at times
> (write combining for example).
>
> Here's a sample of output of a recently mounted client that I poked on a bit (the lines starting with # are my comments):
> # cat /proc/fs/lustre/llite/lustre-ffff88008dde27f0/stats
> snapshot_time 1407473168.466102 secs.usecs
> read_bytes 1 samples [bytes] 0 0 0
> write_bytes 4 samples [bytes] 2 7 19
> osc_write 4 samples [bytes] 2 7 19
> # The bytes counts show you minimum, maximum of writes seen and total number of bytes read-written.
> # Lustre (and many other network filesystems) is very sensitive to small IO, esp. reads so it's good
> # to know if you have a lot of it.
> open 6 samples [regs]
> # The "regs" type just shows you how many of given type operations were performed since last statistic reset.
> # Frequently that allows people to guess where does high load come from on a particular client when
> # it's otherwise not obvious because not a lot of cpu is used.
> # Some operations are heavier than others too.
> close 6 samples [regs]
> readdir 4 samples [regs]
> setattr 1 samples [regs]
> truncate 4 samples [regs]
> getattr 7 samples [regs]
> create 1 samples [regs]
> alloc_inode 1 samples [regs]
> getxattr 8 samples [regs]
> inode_permission 28 samples [regs]
>
> As more operations types are seen the list grows.
> Then there are also specific stats for readahead (data and metadata) so that interested people can make informed
> decisions on the tuning there should they be unsatisfied with default settings.
>
> I am not sure there's a similar mechanism in the kernel already that
> would allow us to get this sort of data easily all in one place?
perf should show you this, if not, please add the functionality there.
A filesystem is not the place to have performance monitoring code, this
needs to be removed before it can be moved out of staging. Please work
with the trace/perf developers on this if there is something lacking
there.
thanks,
greg k-h
dG
>
> Bye,
> Oleg
next prev parent reply other threads:[~2014-08-08 5:33 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-08-06 18:22 [PATCH] staging/lustre: use rcu_dereference to access rcu protected current->real_parent field Evgeny Budilovsky
2014-08-06 21:42 ` Greg Kroah-Hartman
2014-08-07 11:13 ` Evgeny Budilovsky
2014-08-08 3:49 ` Greg Kroah-Hartman
2014-08-08 4:03 ` Oleg Drokin
2014-08-08 4:42 ` Greg Kroah-Hartman
2014-08-08 5:06 ` Oleg Drokin
2014-08-08 5:32 ` Greg Kroah-Hartman [this message]
2014-08-09 11:05 ` Peng Tao
2014-08-09 14:04 ` Greg Kroah-Hartman
2014-08-09 14:34 ` Oleg Drokin
2014-08-09 15:47 ` Greg Kroah-Hartman
2014-08-12 1:44 ` Oleg Drokin
2014-08-12 2:39 ` Greg Kroah-Hartman
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=20140808053246.GA13588@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=andreas.dilger@intel.com \
--cc=bergwolf@gmail.com \
--cc=budevg@gmail.com \
--cc=devel@driverdev.osuosl.org \
--cc=green@linuxhacker.ru \
--cc=lai.siyao@intel.com \
--cc=linux-kernel@vger.kernel.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 NNTP newsgroup(s).