npage: make flush synchronous
This commit is contained in:
parent
5c34facdb3
commit
441a33970d
1 changed files with 4 additions and 1 deletions
|
@ -600,7 +600,9 @@ unloadpages(int age)
|
||||||
Page *p;
|
Page *p;
|
||||||
|
|
||||||
for(p = root->down; p; p = nextpage(p)){
|
for(p = root->down; p; p = nextpage(p)){
|
||||||
if(!canqlock(p))
|
if(age == 0) /* synchronous flush */
|
||||||
|
qlock(p);
|
||||||
|
else if(!canqlock(p))
|
||||||
continue;
|
continue;
|
||||||
if((pagegen - p->gen) >= age)
|
if((pagegen - p->gen) >= age)
|
||||||
unloadpage(p);
|
unloadpage(p);
|
||||||
|
@ -930,6 +932,7 @@ main(int argc, char *argv[])
|
||||||
rotate = 0;
|
rotate = 0;
|
||||||
Unload:
|
Unload:
|
||||||
viewgen++;
|
viewgen++;
|
||||||
|
esetcursor(&reading);
|
||||||
unloadpages(0);
|
unloadpages(0);
|
||||||
showpage(current);
|
showpage(current);
|
||||||
continue;
|
continue;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue