All of lore.kernel.org
 help / color / mirror / Atom feed
From: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
To: "ext Wu, Xia" <xia.wu@intel.com>
Cc: Christoph Hellwig <hch@lst.de>,
	Yong Wang <yong.y.wang@linux.intel.com>,
	Jens Axboe <jaxboe@fusionio.com>,
	"Wu, Fengguang" <fengguang.wu@intel.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: RE: [PATCH] bdi: use deferable timer for sync_supers task
Date: Fri, 08 Oct 2010 13:09:46 +0300	[thread overview]
Message-ID: <1286532586.2095.55.camel@localhost> (raw)
In-Reply-To: <A24AE1FFE7AEC5489F83450EE98351BF227AB58D43@shsmsx502.ccr.corp.intel.com>

On Fri, 2010-10-08 at 12:04 +0200, ext Wu, Xia wrote:
> On Fri, Oct 08, 2010 at 04:35:14PM +0800, Yong Wang wrote:
> > > sync_supers task currently wakes up periodically for superblock
> > > writeback. This hurts power on battery driven devices. This patch
> > > turns this housekeeping timer into a deferable timer so that it
> > > does not fire when system is really idle.
> 
> > How long can the timer be defereed?  We can't simply stop writing
> > out data for a long time.  I think the current timer value should be
> > the upper bound, but allowing to fire earlier to run during the
> > same wakeup cycle as others is fine.
> 
> If the system is in sleep state, this timer can be deferred to the next wake-up interrupt.
> If the system is busy, this timer will fire at the scheduled time.

However, when the next wake-up interrupt happens is not defined. It can
happen 1ms after, or 1 minute after, or 1 hour after. What Christoph
says is that there should be some guarantee that sb writeout starts,
say, within 5 to 10 seconds interval. Deferrable timers do not guarantee
this. But take a look at the range hrtimers - they do exactly this.

-- 
Best Regards,
Artem Bityutskiy (Артём Битюцкий)


WARNING: multiple messages have this Message-ID (diff)
From: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
To: "ext Wu, Xia" <xia.wu@intel.com>
Cc: Christoph Hellwig <hch@lst.de>,
	Yong Wang <yong.y.wang@linux.intel.com>,
	Jens Axboe <jaxboe@fusionio.com>,
	"Wu, Fengguang" <fengguang.wu@intel.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: RE: [PATCH] bdi: use deferable timer for sync_supers task
Date: Fri, 08 Oct 2010 13:09:46 +0300	[thread overview]
Message-ID: <1286532586.2095.55.camel@localhost> (raw)
In-Reply-To: <A24AE1FFE7AEC5489F83450EE98351BF227AB58D43@shsmsx502.ccr.corp.intel.com>

On Fri, 2010-10-08 at 12:04 +0200, ext Wu, Xia wrote:
> On Fri, Oct 08, 2010 at 04:35:14PM +0800, Yong Wang wrote:
> > > sync_supers task currently wakes up periodically for superblock
> > > writeback. This hurts power on battery driven devices. This patch
> > > turns this housekeeping timer into a deferable timer so that it
> > > does not fire when system is really idle.
> 
> > How long can the timer be defereed?  We can't simply stop writing
> > out data for a long time.  I think the current timer value should be
> > the upper bound, but allowing to fire earlier to run during the
> > same wakeup cycle as others is fine.
> 
> If the system is in sleep state, this timer can be deferred to the next wake-up interrupt.
> If the system is busy, this timer will fire at the scheduled time.

However, when the next wake-up interrupt happens is not defined. It can
happen 1ms after, or 1 minute after, or 1 hour after. What Christoph
says is that there should be some guarantee that sb writeout starts,
say, within 5 to 10 seconds interval. Deferrable timers do not guarantee
this. But take a look at the range hrtimers - they do exactly this.

-- 
Best Regards,
Artem Bityutskiy (D?N?N?N?D 1/4  D?D,N?N?N?DoD,D1)

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2010-10-08 10:12 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-08  8:35 [PATCH] bdi: use deferable timer for sync_supers task Yong Wang
2010-10-08  8:35 ` Yong Wang
2010-10-08  9:25 ` Christoph Hellwig
2010-10-08  9:25   ` Christoph Hellwig
2010-10-08 10:02   ` Artem Bityutskiy
2010-10-08 10:02     ` Artem Bityutskiy
2010-10-08 10:04   ` Wu, Xia
2010-10-08 10:04     ` Wu, Xia
2010-10-08 10:09     ` Artem Bityutskiy [this message]
2010-10-08 10:09       ` Artem Bityutskiy
2010-10-08 10:27       ` Wu, Xia
2010-10-08 10:27         ` Wu, Xia
2010-10-08 10:28         ` Artem Bityutskiy
2010-10-08 10:28           ` Artem Bityutskiy
2010-10-08 10:27           ` Yong Wang
2010-10-08 10:27             ` Yong Wang
2010-10-08 13:57             ` Wu Fengguang
2010-10-08 13:57               ` Wu Fengguang
2010-10-08 14:42               ` Wu Fengguang
2010-10-08 14:42                 ` Wu Fengguang
2010-10-08 13:59             ` Artem Bityutskiy
2010-10-08 13:59               ` 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=1286532586.2095.55.camel@localhost \
    --to=artem.bityutskiy@nokia.com \
    --cc=fengguang.wu@intel.com \
    --cc=hch@lst.de \
    --cc=jaxboe@fusionio.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=xia.wu@intel.com \
    --cc=yong.y.wang@linux.intel.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 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.