summaryrefslogtreecommitdiff
path: root/sys/src/cmd
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@centraldogma>2011-09-10 07:14:29 +0200
committercinap_lenrek <cinap_lenrek@centraldogma>2011-09-10 07:14:29 +0200
commit441a33970d88a29e628ca1b6866295df87194d8c (patch)
treea0749369d9c04dbb6061190911ed56360b4a0872 /sys/src/cmd
parent5c34facdb3d30195a636ba04321e2e6d0c371bc5 (diff)
npage: make flush synchronous
Diffstat (limited to 'sys/src/cmd')
-rw-r--r--sys/src/cmd/npage.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/src/cmd/npage.c b/sys/src/cmd/npage.c
index e8344b240..36da44276 100644
--- a/sys/src/cmd/npage.c
+++ b/sys/src/cmd/npage.c
@@ -600,7 +600,9 @@ unloadpages(int age)
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 @@ main(int argc, char *argv[])
rotate = 0;
Unload:
viewgen++;
+ esetcursor(&reading);
unloadpages(0);
showpage(current);
continue;