From: Andrew Morton <akpm@linux-foundation.org>
To: Chinmay V S <cvs268@gmail.com>
Cc: Vlad Zolotarov <vlad@scalemp.com>,
viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org,
linux-kernel@vger.kernel.org, Shai@scalemp.com
Subject: Re: [PATCH RESEND] fs: Move bh_cachep to the __read_mostly section
Date: Tue, 3 Jul 2012 14:23:48 -0700 [thread overview]
Message-ID: <20120703142348.3c963378.akpm@linux-foundation.org> (raw)
In-Reply-To: <CAK-9PRBi3XOVtW3gs3doO=ecD0XWfNffVefdRCC1sGnLdT_9LA@mail.gmail.com>
On Mon, 2 Jul 2012 23:54:09 +0530
Chinmay V S <cvs268@gmail.com> wrote:
> Hi Vlad,
>
> I suppose we both are looking at opposite sides of the same coin.
> While i am wary of the potential pitfalls,
> you have focused on the benefits of using __read_mostly.
>
> At this point i would like to send out a shout to everyone concerned to please
> clarify the status of __read_mostly:
>
> 1. Is it being actively pursued? (systems that *will* clearly benefit from it)
> 2. Any actual results on real world use-cases? (w/ & w/o __read_mostly)
> 3. Is __read_mostly being accepted in non-architecture specific kernel code?
> 4. Is anyone working on a potential replacement for it?
I don't recall ever having seen any serious work justifying or
condemning __read_mostly. It's one of those things which seemed a good
idea at the time, got added and nobody did anything further with it, as
far as I know. I've always been rather wobbly about it, for reasons
discussed up-thread.
As for this particular patch: I've not seen any reason to do anything
with it, because the changelog doesn't describe why the patch is
needed. If some performance problem has been encountered then that
should have been fully described in the patch changelog.
If some problem has indeed been observed then an alternative to
__read_mostly is to pad bh_cachep to a cacheline boundary with
____cacheline_aligned_in_smp or similar. Or, perhaps better, identify
the variable which bh_cachep is sharing with, and pad *that* variable
to a cacheline so it can't cause cache thrashing with something else in
the future. And once this mystery variable is identified, we can
perhaps beneficially group it into the same cacheline with some other
variables which are related to it.
But I'm madly guessing and can't say aything dispositive or even
useful, because we haven't been told what the problem was. Still.
next prev parent reply other threads:[~2012-07-03 21:23 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-05-28 11:58 [PATCH RESEND] fs: Move bh_cachep to the __read_mostly section Vlad Zolotarov
2012-06-07 8:23 ` Vlad Zolotarov
2012-06-08 0:07 ` Andrew Morton
2012-06-10 9:36 ` Vlad Zolotarov
2012-07-01 11:34 ` Vlad Zolotarov
[not found] ` <CAK-9PRBiqtyiQahunPex9FT2dtKA0k0gv9PR+=sNCXVvn5Bn9Q@mail.gmail.com>
2012-07-02 12:13 ` Vlad Zolotarov
2012-07-02 16:00 ` Chinmay V S
2012-07-02 17:21 ` Vlad Zolotarov
2012-07-02 18:24 ` Chinmay V S
2012-07-03 9:05 ` Vlad Zolotarov
2012-07-03 21:23 ` Andrew Morton [this message]
2012-07-04 9:08 ` Vlad Zolotarov
2012-07-03 9:08 ` Vlad Zolotarov
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=20120703142348.3c963378.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=Shai@scalemp.com \
--cc=cvs268@gmail.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=viro@zeniv.linux.org.uk \
--cc=vlad@scalemp.com \
/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