shithub: gefs

Download patch

ref: 38d7beb51498c1fe78acf1bdc810fa563603b6e1
parent: ccf53815c52ed336f51259e7e30cbfd01c4f56e4
author: Ori Bernstein <ori@eigenstate.org>
date: Sat Oct 22 17:36:44 EDT 2022

blk: flush all the queues

left some debug crap in there.

--- a/blk.c
+++ b/blk.c
@@ -1033,9 +1033,7 @@
 			if(--fs->syncing == 0)
 				rwakeupall(&fs->syncrz);
 			qunlock(&fs->synclk);
-			continue;
-		}				
-		if(!checkflag(b, Bfreed)){
+		}else if(!checkflag(b, Bfreed)){
 			if(syncblk(b) == -1){
 				ainc(&fs->broken);
 				fprint(2, "write: %r");
@@ -1061,7 +1059,7 @@
 		lock(&fs->freelk);
 		b->qgen = ++fs->qgen;
 		unlock(&fs->freelk);
-		qput(&fs->syncq[0], b);
+		qput(&fs->syncq[i], b);
 	}
 	while(fs->syncing != 0)
 		rsleep(&fs->syncrz);