Clearly, if the spindle a dirty file page belongs to is idle, we have
goofed.
With process data the situation is a little different because the
natural home of the data is not the swap device but main memory. The
following gets pretty close to the truth: when there is memory
pressure, if the spindle a dirty process page belongs to is idle, we
have goofed.
Well, as soon as I wrote those obvious truths I started thinking of
exceptions, but they are silly exceptions such as:
- read disk block 0
- dirty last block of disk
- dirty 1,000 blocks starting at block 0.
For good measure, delete the file the last block of the disk belongs
to. We have just sent the head off on a wild goose chase, but we had
to work at it. To handle such a set of events without requiring
prescience we need to be able to cancel disk writes, but just ignoring
such oddball situations is the next best thing.
That's all by way of saying I agree with you.
-- Daniel - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/