On Sat, 21 Apr 2007 14:01:36 +0200 Peter Zijlstra <[EMAIL PROTECTED]> wrote:
> On Sat, 2007-04-21 at 02:55 -0700, Andrew Morton wrote: > > > > + > > > + __mod_bdi_stat64(bdi, BDI_WRITEOUT, -half); > > > + bdi->cycles += cycle; > > > + } > > > + bdi->cycles = global_cycle; > > > + spin_unlock_irqrestore(&bdi->lock, flags); > > > +} > > > > Here we get to the real critical substance of the patchset, and I don't > > have a clue what it's doing nor how it's doing it. And I bet nobody else > > does either. > > I shall send a comment patch; but let me try to explain: > > I am trying to keep a floating proportion between the BDIs based on > writeout events. The term "writeout event" hasn't been defined. I assume that it refers to something like "one call to balance_dirty_pages()". Or maybe "one pass through balance_dirty_pages()'s inner loop". Or maybe something else. This is important, because the reader is already a bit lost. > That is, each device is given a share equal to its > proportion of completed writebacks In what units are "writebacks" measured? Pages? > (writeback, we are in the process of > writing vs. writeout, we have written). This proportion is measured in a > 'time'-span measured itself in writeouts. time is measured how? jiffies? Calls to balance_dirty_pages(), or passes around its inner loop, or... > Example: > > device A completes 4, device B completes 12 and, device C 16 writes. writes of what? One page?? I think you get my point ;) Please start from the top. Define terms before using them, always specify in what units all things are being measured, assume *no* prior knowledge apart from general kernel-fu. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/