From 71a3ab3f13602a1fbac057c2413032fce9f56d9c Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Mon, 27 May 2013 03:26:53 +0200 Subject: kernel: make imagereclaim() skip notext pages (prevent it from blowing the mount cache) imagereclaim would happily uncache pages from the mountcache (port/cache.c) without ever getting a Image* released from it. simple fix, just check for p->image->notext but make sure todo it under the page lock :) --- sys/src/9/port/segment.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys') diff --git a/sys/src/9/port/segment.c b/sys/src/9/port/segment.c index d3ad7cfbb..c71eb43e6 100644 --- a/sys/src/9/port/segment.c +++ b/sys/src/9/port/segment.c @@ -333,7 +333,7 @@ imagereclaim(void) */ for(p = palloc.tail; p && p->image && (n<1000 || !imagealloc.free); p = p->prev) { if(p->ref == 0 && canlock(p)) { - if(p->ref == 0) { + if(p->ref == 0 && p->image && !p->image->notext) { n++; uncachepage(p); } -- cgit v1.2.3