> Steven Pratt wrote:>>> Andrew Morton wrote:>>>>> Steven Pratt <slpratt@austin.ibm.com> wrote:>>> >>>>>>> would like to offer up an alternative simplified design which will >>>> not only make the code easier to maintain,>>>> >>>>>>>>> We won't know that until all functionality is in place.>>> >>>> Ok, but both you and Nick indicated that the queue congestion isn't >> needed,>> I would have thought that always doing the readahead would provide a> more graceful degradation, assuming the readahead algorithm is fairly> accurate, and copes with things like readahead thrashing (which we> hope is the case).

Yes, that is exactly my thought. I think this is what the new code does.

>>>> I do think we should skip the I/O for POSIX_FADV_WILLNEED against a>>> congested queue. I can't immediately think of a good reason for >>> skipping>>> the I/O for normal readahead.>>> >>>> I don't see why you should skip the readahead for FADVISE_WILLNEED> either. Presumably if someone needs this, they really need it. We> should aim for optimal behaviour when the apis are being used > correctly...