ref: 26a4fed09d56d1c8c2f46feb8fbec4c9a46adbb7
parent: 9bdccad213908337528dc897a4ca5d80d6ddf0e4
author: Ori Bernstein <ori@eigenstate.org>
date: Sun May 28 13:10:53 EDT 2023
blk: nil logtl means there's no update to do
--- a/blk.c
+++ b/blk.c
@@ -1124,6 +1124,10 @@
for(i = 0; i < fs->narena; i++){
a = &fs->arenas[i];
lock(a);
+ if(a->logtl == nil){
+ unlock(a);
+ continue;
+ }
if(a->deferhd.addr != -1){
chainlog(a->logtl, a->deferhd.addr);
loadlog(a, a->deferhd);
@@ -1167,7 +1171,7 @@
sysfatal("sync sb: %r");
if(syncblk(fs->sb1) == -1)
sysfatal("sync sb: %r");
-
+ fs->snap.dirty = 0;
/*
* pass 3: sync block footers; if we crash here,
* the block headers are consistent, and we can