On February 5, 2002 07:45 pm, Rik van Riel wrote:
> On Tue, 5 Feb 2002, Pavel Machek wrote:
> > > > > the biggest reason for this is that we *suck* at readahead for
> > > > > mmap....
> > > >
> > > > Is there not also fault overhead and similar issues related to mmap(2)
> > > > in general, that are not present with read(2)/write(2)?
> > >
> > > If a fault is more expensive than a system call, we're doing
> > > something wrong in the page fault path ;)
> >
> > You can read 128K at a time, but you can't fault 128K...
>
> Why not ?
>
> If the pages are present (read-ahead) and the page table
> is present, I see no reason why we couldn't fill in 32
> page table entries at once.
Yes, essentially what you want is to schedule a generic_file_readahead, which
we'd need to cook up a mechanism for doing. The other part - much harder -
is deciding when to readahead, and how much.
I'd amend your original statement to just 'we *suck* at readahead'.
-- 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/
This archive was generated by hypermail 2b29 : Thu Feb 07 2002 - 21:00:48 EST