[Lustre-devel] read ahead
Nikita.Danilov at Sun.COM
Tue Dec 11 10:42:13 PST 2007
Peter Braam writes:
> Can anyone tell me if read ahead in Lustre includes "early return"
> features. I mean that if I read 4K and readahead decides to fetch 1M
> will my request get serviced when the first 4K arrives? Is this important?
Currently read system call will proceed when the first RPC (including
first 4K page and some number of read-ahead pages) is serviced:
generic_file_read() waits on a page lock, and lock is released by
completion routine (ll_ap_completion()).
The problem with the "early return" (if I understood it correctly) is
that large read-ahead window is an indication of sequential access, and
in that case read is going to wait on the next page anyway.
> - Peter -
More information about the lustre-devel