Messages in this thread | | | Subject | Re: [PATCH 2/3] vmscan: make mapped executable pages the first class citizen | From | Peter Zijlstra <> | Date | Tue, 19 May 2009 09:44:23 +0200 |
| |
On Tue, 2009-05-19 at 09:39 +0300, Pekka Enberg wrote: > Hi! > > On Sat, May 16, 2009 at 12:00 PM, Wu Fengguang <fengguang.wu@intel.com> wrote: > > @@ -1272,28 +1273,40 @@ static void shrink_active_list(unsigned > > > > /* page_referenced clears PageReferenced */ > > if (page_mapping_inuse(page) && > > - page_referenced(page, 0, sc->mem_cgroup, &vm_flags)) > > + page_referenced(page, 0, sc->mem_cgroup, &vm_flags)) { > > pgmoved++; > > + /* > > + * Identify referenced, file-backed active pages and > > + * give them one more trip around the active list. So > > + * that executable code get better chances to stay in > > + * memory under moderate memory pressure. Anon pages > > + * are ignored, since JVM can create lots of anon > > + * VM_EXEC pages. > > + */ > > + if ((vm_flags & VM_EXEC) && !PageAnon(page)) { > > + list_add(&page->lru, &l_active); > > + continue; > > + } > > Why do we need to skip JIT'd code? There are plenty of desktop > applications that use Mono, for example, and it would be nice if we > gave them the same treatment as native applications. Likewise, I am > sure all browsers that use JIT for JavaScript need to be considered.
Its a sekrit conspiracy against bloat by making JIT'd crap run slower :-)
<rant> Anyway, I just checked, we install tons of mono junk for _2_ applications, f-spot and tomboy, both are shite and both have alternatives not requiring this disease. </rant>
But seriously, like Kosaka-san already said, anonymous pages are treated differently from file pages and should not suffer the same problems.
| |