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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.