On Wed, 2008-07-16 at 17:05 -0400, Chris Snook wrote:This approach, instead of invalidating the pages right away would provide a middle ground: a way to tell the kernel "these pages are not too important". Whereas if MADV_SEQUENTIAL just invalidates the pages once per megabyte (say), then it's only doing what is already possible using MADV_DONTNEED ("drop this pages now"). It would automate the process, but it would not provide a more subtle hint, which could be quite useful. As I see it, there are two basic concepts here: - no_reuse (like FADV_NOREUSE) - more_ra (more readahead) (DONTNEED being another different concept) Then: MADV_SEQUENTIAL = more_ra | no_reuse FADV_SEQUENTIAL = more_ra | no_reuse FADV_NOREUSE = no_reuse Right now, only the 'more_ra' part is implemented. 'no_reuse' could be implemented as Chris suggests. It looks like the disagreement a year ago around Peter's approach was mostly around the question of whether using read ahead as a heuristic for "drop behind" was safe for all workloads. Would it be less controversial to remove the heuristic (ra->size == ra->ra_pages), and to do something only if the user asked for _SEQUENTIAL or _NOREUSE? It might encourage user space applications to start using FADV_SEQUENTIAL or FADV_NOREUSE more often (as it would become worthwhile to do so), and if they do (especially cron jobs), the problem of the slow desktop in the morning would progressively solve itself. Thanks. --
| Dave Hansen | [RFC][PATCH 0/4] kernel-based checkpoint restart |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| Eric Paris | [RFC 0/5] [TALPA] Intro to a linux interface for on access scanning |
git: | |
| David Miller | Re: [GIT]: Networking |
| Natalie Protasevich | [BUG] New Kernel Bugs |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
