RE: [PATCH] bdi: use deferable timer for sync_supers task
From: Wu, Xia
Date: Fri Oct 08 2010 - 06:27:18 EST
> 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.
If the system is in sleep state, is there any data which should be written? Must
sb writeout start even there isn't any data?
èº{.nÇ+·®+%Ëlzwm
ébëæìr¸zX§»®w¥{ayºÊÚë,j¢f£¢·hàz¹®w¥¢¸¢·¦j:+v¨wèjØm¶ÿ¾«êçzZ+ùÝj"ú!¶iOæ¬z·vØ^¶m§ÿðÃnÆàþY&