shithub: riscv

Download patch

ref: 3d1908d762c6e91e0b6fe2e235e85bdf397d092d
parent: 04b8539ee29154c7455027c4cae457db79ad8fb7
author: cinap_lenrek <[email protected]>
date: Fri Jun 2 13:02:43 EDT 2017

kernel: don't preempt pager during fscache reclaim

the fscache image is the main source for pages once
the page freelist got exhausted, so delay scheduling
until they release the fscache lock.

--- a/sys/src/9/port/proc.c
+++ b/sys/src/9/port/proc.c
@@ -141,6 +141,7 @@
 		if(up->state != Moribund)
 		if(up->delaysched < 20
 		|| palloc.Lock.p == up
+		|| fscache.Lock.p == up
 		|| procalloc.Lock.p == up){
 			up->delaysched++;
  			delayedscheds++;