Messages in this thread | | | Date | Fri, 13 Mar 2009 08:20:51 +0900 | From | Minchan Kim <> | Subject | Re: [uClinux-dev] RE: [PATCH] NOMMU: Pages allocated to a ramfs inode's pagecache may get wrongly discarded |
| |
Hi, Peter.
On Thu, 12 Mar 2009 12:50:08 +0100 Peter Zijlstra <peterz@infradead.org> wrote:
> On Thu, 2009-03-12 at 11:29 +0000, Jamie Lokier wrote: > > Berkhan, Enrik (GE Infra, Oil & Gas) wrote: > > > Andrew Morton wrote: > > > > On Wed, 11 Mar 2009 15:30:35 +0000 > > > > David Howells <dhowells@redhat.com> wrote: > > > >> From: Enrik Berkhan <Enrik.Berkhan@ge.com> > > > >> > > > >> The solution is to mark the pages dirty at the point of allocation by > > > >> the truncation code. > > > > > > > > Was there a specific reason for using the low-level SetPageDirty()? > > > > > > No, no specific reason. It was just my first try of a fix after spotting > > > the problem. After a short discussion with David, we decided to wait for > > > others' comments on using the low-/high-level approach. > > > > Tangentially related... > > > > Does the vm pageout logic include or skip these "dirty" pages looking > > for candidates to flush to storage? What about with MMU? > > Includes them, regular pageout will try to do the writeout to clean them > and then discard them. > > The ramfs stuff is rather icky in that it adds the pages to the aging > list, marks them dirty, but does not provide a writeout method. > > This will make the paging code scan over them (continuously) trying to > clean them, failing that (lack of writeout method) and putting them back > on the list.
It ins't true any more. UNEVICTABLE_LRU will move ramfs's page from LRU to unevictable list. Couldn't we solve this problem if NOMMU can support CONFIG_UNEVICTABLE_LRU ?
> -- > 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/
-- Kinds Regards Minchan Kim
| |