git: 9front

Download patch

ref: 9ae3ae651b358ad1fd435e27e86d3458c45dca8b
parent: cba3203a33e102749be98f70dadea18de8ac7a60
author: cinap_lenrek <cinap_lenrek@centraldogma>
date: Sat Sep 10 03:14:29 EDT 2011

npage: make flush synchronous

--- a/sys/src/cmd/npage.c
+++ b/sys/src/cmd/npage.c
@@ -600,7 +600,9 @@
 	Page *p;
 
 	for(p = root->down; p; p = nextpage(p)){
-		if(!canqlock(p))
+		if(age == 0)	/* synchronous flush */
+			qlock(p);
+		else if(!canqlock(p))
 			continue;
 		if((pagegen - p->gen) >= age)
 			unloadpage(p);
@@ -930,6 +932,7 @@
 					rotate = 0;
 				Unload:
 					viewgen++;
+					esetcursor(&reading);
 					unloadpages(0);
 					showpage(current);
 					continue;
--