All of lore.kernel.org
 help / color / mirror / Atom feed
From: "J. Bruce Fields" <bfields@fieldses.org>
To: Artem Bityutskiy <dedekind1@gmail.com>
Cc: Neil Brown <neilb@suse.de>,
	linux-nfs@vger.kernel.org, linux-kernel@vger.kernel.org,
	Trond Myklebust <Trond.Myklebust@netapp.com>,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH] sunrpc: make the cache cleaner workqueue deferrable
Date: Tue, 6 Jul 2010 12:29:02 -0400	[thread overview]
Message-ID: <20100706162902.GF7387@fieldses.org> (raw)
In-Reply-To: <1278333090.29620.47.camel@localhost>

On Mon, Jul 05, 2010 at 03:31:30PM +0300, Artem Bityutskiy wrote:
> On Thu, 2010-07-01 at 18:05 +0300, Artem Bityutskiy wrote:
> > From: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
> > 
> > This patch makes the cache_cleaner workqueue deferrable, to prevent
> > unnecessary system wake-ups, which is very important for embedded
> > battery-powered devices.
> > 
> > do_cache_clean() is called every 30 seconds at the moment, and often
> > makes the system wake up from its power-save sleep state. With this
> > change, when the workqueue uses a deferrable timer, the
> > do_cache_clean() invocation will be delayed and combined with the
> > closest "real" wake-up. This improves the power consumption situation.
> > 
> > Note, I tried to create a DECLARE_DELAYED_WORK_DEFERRABLE() helper
> > macro, similar to DECLARE_DELAYED_WORK(), but failed because of the
> > way the timer wheel core stores the deferrable flag (it is the
> > LSBit in the time->base pointer). My attempt to define a static
> > variable with this bit set ended up with the "initializer element is
> > not constant" error.
> > 
> > Thus, I have to use run-time initialization, so I created a new
> > cache_initialize() function which is called once when sunrpc is
> > being initialized.
> > 
> > Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
> 
> Bruce,
> 
> I did some git-logging, and found out that sunrpc stuff goes from you,
> from Trond, and from David, and MAINTAINERS also mentions Neil. Whom
> should I ping WRT to merging this patch?

I got it.  (I'm just getting back from vacation, and very backlogged.)

--b.

  reply	other threads:[~2010-07-06 16:29 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-01 15:05 [PATCH] sunrpc: make the cache cleaner workqueue deferrable Artem Bityutskiy
2010-07-05 12:31 ` Artem Bityutskiy
2010-07-06 16:29   ` J. Bruce Fields [this message]
2010-07-06 16:28 ` J. Bruce Fields
2010-07-06 17:19 ` [PATCH] timers.c: document meaning of deferrable timer J. Bruce Fields
2010-07-17 12:30   ` Artem Bityutskiy
2010-07-17 12:30     ` Artem Bityutskiy

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=20100706162902.GF7387@fieldses.org \
    --to=bfields@fieldses.org \
    --cc=Trond.Myklebust@netapp.com \
    --cc=davem@davemloft.net \
    --cc=dedekind1@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=neilb@suse.de \
    /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.