>>You do?! Actual readahead implementations, or >>people still implementing the old ->readpages() method? No :-) I grabbed that as an example off the top of my head of the kind of thing I saw while reading readahead code, but that I didn't try to handle in my simple implementation of readahead. I'm guessing that since I have some xfstest regressions maybe my implementation overlooks one or more important details... -Mike On Fri, Apr 16, 2021 at 11:14 AM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > > On Fri, Apr 16, 2021 at 10:36:52AM -0400, Mike Marshall wrote: > > So... I think all your stuff is working well from my perspective > > and that I need to figure out why my orangefs_readahead patch > > is causing the regressions I listed. My readahead implementation (via your > > readahead_expand) is really fast, but it is bare-bones... I'm probably > > leaving out some important stuff... I see other filesystem's > > readahead implementations doing stuff like avoiding doing readahead > > on pages that have yet to be written back for example. > > You do?! Actual readahead implementations, or people still implementing > the old ->readpages() method? The ->readahead() method is _only_ called > for pages which are freshly allocated, Locked and !Uptodate. If you ever > see a page which is Dirty or Writeback, something has gone very wrong. > Could you tell me which filesystem you saw that bogosity in? > > > The top two commits at https://github.com/hubcapsc/linux/tree/readahead_v3 > > is the current state of my readahead implementation. > > > > Please do add > > Tested-by: Mike Marshall <hubcap@xxxxxxxxxxxx> > > > > -Mike > > > > On Tue, Apr 13, 2021 at 11:08 AM David Howells <dhowells@xxxxxxxxxx> wrote: > > > > > > Mike Marshall <hubcap@xxxxxxxxxxxx> wrote: > > > > > > > Hi David... I've been gone on a motorcycle adventure, > > > > sorry for the delay... here's my public branch... > > > > > > > > https://github.com/hubcapsc/linux/tree/readahead_v3 > > > > > > That seems to have all of my fscache-iter branch in it. I thought you'd said > > > you'd dropped them because they were causing problems. > > > > > > Anyway, I've distilled the basic netfs lib patches, including the readahead > > > expansion patch and ITER_XARRAY patch here: > > > > > > https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=netfs-lib > > > > > > if that's of use to you? > > > > > > If you're using any of these patches, would it be possible to get a Tested-by > > > for them that I can add? > > > > > > David > > >