On Thu, 2009-01-15 at 14:45 -0800, Grant Grundler wrote: > On Thu, Jan 15, 2009 at 11:00 AM, James Bottomley > <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > ... > >> Code can test for zero/nonzero or (preferably) more fine grained. > >> e.g. "avgreadcost > 1ms" or "avgwritecost". I'm hoping this test > >> can be abstracted into a macro. > > > > Um these really have to be things we can get out of the device at boot > > time without effort (as in part of the data the device can give in a > > single command). I'll be shot for increasing boot time so we can work > > out these parameters ... > > No. The whole point is we should not care what it is at boot time. > It should be based on recent history of what is going on. > At boot time we read the partition table and we superblocks to mount > file systems. > That's fine to start with. So I don't see any need to add some synthetic test > to establish initial values. > > The rest of the code should work regardless of what the values start out to be. > This is true for the previous proposed patch too when user space has > to decide what the right policy is. OK, so they could be calculated on the fly in the elevators, I suppose. But what would the value be? Right now we use the nonrotational flag to basically not bother with plugging (no point if no seek penalty) on certain events where we'd previously have waited for other I/O to join. But that's really a seek penalty parameter rather than the idea of read or write costing (although the elevators usually track these dynamically anyway ... as part of the latency calculations but not explicitly). James -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html