Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: 2.4.8/2.4.9 VM problems | Date | Tue, 21 Aug 2001 01:54:53 +0200 |
| |
On August 21, 2001 12:05 am, Marcelo Tosatti wrote: > On Tue, 21 Aug 2001, Daniel Phillips wrote: > > On August 20, 2001 11:50 pm, Marcelo Tosatti wrote: > > > On Tue, 21 Aug 2001, Daniel Phillips wrote: > > > > > > If you've seen streaming IO pages getting evicted before being used, > > > > I'd like to know about it because something is broken in that case. > > > > > > I've seen the first page read by "swapin_readahead()" (which is the > > > actual > > > page we want to swapin) be evicted _before_ we could actually use it (so > > > the read_swap_cache_async() call had to read the same page _again_ from > > > disk). > > > > is that even with yesterday's SetPageReferenced patch to do_swap_page? > > No. It will not help: the call to read_swap_cache_async() is before the > SetPageReferenced call.
Sure it will. The readahead page will have to go all the way from one end of the inactive_dirty list to the other, then all the way down the inactive_clean list. That should be plenty of time for the SetPageReferenced to catch it. The main possibility to screw up is if we scan the inactive lists too fast, which probably happens sometimes because it's all grossly uncalibrated right now.
That's another issue, it needs fixing. We'll never have really consistent, predictable aging or any other vm behaviour until the list scanning is operating in a rock-solid way.
As long as it isn't happening frequently we will be ok for now.
-- 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/
| |