lkml.org 
[lkml]   [2010]   [Oct]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] bdi: use deferable timer for sync_supers task
On Fri, Oct 08, 2010 at 09:57:04PM +0800, Wu Fengguang wrote:
> On Fri, Oct 08, 2010 at 06:27:09PM +0800, Yong Wang wrote:
> > On Fri, Oct 08, 2010 at 01:28:07PM +0300, Artem Bityutskiy wrote:
> > > On Fri, 2010-10-08 at 18:27 +0800, Wu, Xia wrote:
> > > > > 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?
> > >
> > > May be yes, may be no.
> > >
> >
> > Thanks for the quick response, Artem. May I know what might need to be
> > written out when system is really idle?
>
> system idle != no dirty inodes

Ah sorry -- I missed the context. Please ignore the following
paragraphs for sync_supers..

Thanks,
Fengguang

> Imagine an application dirties 100MB data and quits. The system then
> goes quiet for very long time. In this case we still want the flusher
> thread to wake up within 30 seconds to flush the 100MB dirty data.
> It's a contract that dirty data will be synced to disk after 30s
> (which is the default value of /proc/sys/vm/dirty_expire_centisecs).
>
> Note that 30s is not an exact value. A dirty page may be synced to
> disk when it's been dirtied for 35s. The 5s error comes from the
> flusher wakeup interval (/proc/sys/vm/dirty_writeback_centisecs).
>
> Thanks,
> Fengguang


\
 
 \ /
  Last update: 2010-10-08 16:45    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site