code: mafs

Download patch

ref: 771085748005f256a9572d3b5638749c169e37d2
parent: abc8e796f627bf35b8f2971f5a0f8f477b0ad0eb
author: 9ferno <gophone2015@gmail.com>
date: Thu Dec 8 23:12:25 EST 2022

ensure that Dentry gets flushed to the disk when changed

--- a/9p.c
+++ b/9p.c
@@ -8,7 +8,7 @@
 
 s32 readfile(u64 dblkno, u64 qpath, char *rbuf, s32 rbufsize, u64 offset);
 s32 writefile(u64 dblkno, u64 qpath, s16 uid, char *wbuf, s32 wbufsize, u64 offset);
-s32 writeallappend(Iobuf *dbuf, u64 dblkno);
+s32 writeallappend(u64 dblkno, u64 qpath);
 
 Aux*
 newaux(u64 addr, u16 uid)
@@ -105,10 +105,12 @@
 		if(dbuf->xiobuf != nil &&
 			dbuf->xiobuf[0] == Tdentry &&
 			dbuf->d->path != Qpnone &&
-			dbuf->append != nil)
-			flush(dbuf);
-		else
+			dbuf->append != nil){
 			putbuf(dbuf, 0);
+			dprint("fsdestroyfid writeallappend()\n");
+			writeallappend(((Aux*)fid->aux)->dblkno, fid->qid.path);
+		}else
+			putbuf(dbuf, 0);
 	}
 
 	freeaux(fid->aux);
@@ -1358,12 +1360,17 @@
 
 /* only for updating existing data */
 s32
-update(Dentry *d, u64 dblkno, char *wbuf, s32 wbufsize, u64 offset)
+update(u64 dblkno, u64 qpath, char *wbuf, s32 wbufsize, u64 offset)
 {
-	Iobuf *oldbuf, *newbuf;
+	Iobuf *oldbuf, *newbuf, *dbuf;
 	s32 howmuch;
 	u64 oldblkno, newblkno, to, nblocks, nblockssize;
+	Dentry *d;
 
+	dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+	if(dbuf == nil)
+		return -1;
+	d = dbuf->d;
 	if(d == nil || wbuf == nil || wbufsize == 0)
 		return 0;
 	if(offset+wbufsize > d->size)
@@ -1400,11 +1407,10 @@
 	putbuf(newbuf, 1);
 
 	/* add the newly allocated blocks to the Dentry */
-	if(addrelative(d, dblkno, offset/Maxdatablocksize, newblkno) == 0){
-		panic("could not write Tdata block\n");
-		freeblocks(newblkno, nblocks, Tdata, d->path);
-		return -2;
-	}
+	if(addrelative(d, dblkno, offset/Maxdatablocksize, newblkno))
+		putbuf(dbuf, 1);
+	else
+		putbuf(dbuf, 0);
 	freeblockbuf(oldbuf);
 	return howmuch;
 }
@@ -1415,22 +1421,29 @@
 	2. last block is partially full
  */
 s32
-writefullappend(Iobuf *dbuf, Dentry *d, u64 dblkno)
+writefullappend(u64 dblkno, u64 qpath)
 {
-	Iobuf *oldbuf, *newbuf;
+	Iobuf *oldbuf, *newbuf, *dbuf;
 	s32 howmuch;
 	u64 newblkno, newbufsize, lastdatablksize, oldblkno;
+	Dentry *d;
 
 	/* last data block is full or there is no last block.
 		write out the append
 	 */
+	dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+	if(dbuf == nil)
+		return -1;
+	d = dbuf->d;
 	if(d->size%Maxdatablocksize == 0 &&
 		dbuf->appendsize == Maxdatablocksize){
 
 		/* allocate new blocks */
 		newbuf = allocblocks(Maxdatablockunits,Tdata, d->path);
-		if(newbuf == nil)
+		if(newbuf == nil){
+			putbuf(dbuf, 0);
 			return -1;
+		}
 		newblkno = newbuf->blkno;
 		newbuf->io->dblkno = dblkno;
 
@@ -1440,13 +1453,11 @@
 		putbuf(newbuf, 1);
 
 		/* add this newly allocated blocks to the Dentry */
-		if(addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno) == 0){
-			panic("could not write Tdata block\n");
-			freeblocks(newblkno, Maxdatablockunits, Tdata, d->path);
-			return -1;
-		}
+		addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno);
 		d->size += dbuf->appendsize;
 		dbuf->appendsize = 0;
+		dprint("writefullappend: write full block d->size %llud\n", d->size);
+		putbuf(dbuf, 1);
 		return 1;
 
 	}else if(d->size%Maxdatablocksize > 0 &&
@@ -1458,8 +1469,10 @@
 
 		/* allocate new blocks */
 		newbuf = allocblocks(Maxdatablockunits, Tdata, d->path);
-		if(newbuf == nil)
+		if(newbuf == nil){
+			putbuf(dbuf, 0);
 			return -1;
+		}
 		newblkno = newbuf->blkno;
 		newbuf->io->dblkno = dblkno;
 		newbufsize = 0;
@@ -1474,6 +1487,7 @@
 								Bwritable, Tdata, d->path, getcallerpc(&dbuf));
 			if(oldbuf == nil){
 				freeblocks(newblkno, Maxdatablockunits, Tdata, d->path);
+				putbuf(dbuf, 0);
 				return -1;
 			}
 			memcpy(newbuf->io->buf, oldbuf->io->buf, lastdatablksize);
@@ -1491,18 +1505,16 @@
 		putbuf(newbuf, 1);
 
 		/* add this newly allocated blocks to the Dentry */
-		if(addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno) == 0){
-			panic("could not write Tdata block\n");
-			freeblocks(newblkno, Maxdatablockunits, Tdata, d->path);
-			return -2;
-		}
+		addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno);
 
+		d->size += howmuch;
+		putbuf(dbuf, 1);
 		/* free the old last blocks */
 		if(oldbuf)
 			freeblockbuf(oldbuf);
-		d->size += howmuch;
 		return 1;
 	}
+	putbuf(dbuf, 0);
 	return 0;
 }
 
@@ -1512,28 +1524,37 @@
 	2. last block is partially full
  */
 s32
-writeallappend(Iobuf *dbuf, u64 dblkno)
+writeallappend(u64 dblkno, u64 qpath)
 {
-	Iobuf *oldbuf, *newbuf;
+	Iobuf *oldbuf, *newbuf, *dbuf;
 	u64 newblkno, newbufsize, lastdatablksize, oldblkno, newblocks;
 	s32 rv;
 	Dentry *d;
+	u64 dsize, dbufappendsize;
 
-	d = dbuf->d;
-	if(dbuf->appendsize == 0)
+	dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+	if(dbuf == nil)
+		return -1;
+	dsize = dbuf->d->size;
+	dbufappendsize = dbuf->appendsize;
+	putbuf(dbuf, 0);
+	if(dbufappendsize == 0)
 		return 1;
 
-	rv = 0;
-	if((d->size%Maxdatablocksize)+dbuf->appendsize >= Maxdatablocksize){
-		rv = writefullappend(dbuf, d, dblkno);
+	if((dsize%Maxdatablocksize)+dbufappendsize >= Maxdatablocksize){
+		rv = writefullappend(dblkno, qpath);
 		if(rv < 0)
 			return rv;
 	}
 
-	if(rv < 0)
-		return rv;
-	if(dbuf->appendsize == 0)
+	dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+	if(dbuf == nil)
+		return -1;
+	if(dbuf->appendsize == 0){
+		putbuf(dbuf, 0);
 		return 1;
+	}
+	d = dbuf->d;
 
 	/* last data block is full or there is no last block. */
 	if(d->size%Maxdatablocksize == 0){
@@ -1541,8 +1562,10 @@
 		/* allocate new blocks */
 		newblocks = nlastdatablocks(dbuf->appendsize);
 		newbuf = allocblocks(newblocks,Tdata, d->path);
-		if(newbuf == nil)
+		if(newbuf == nil){
+			putbuf(dbuf, 0);
 			return -1;
+		}
 		newblkno = newbuf->blkno;
 		newbuf->io->dblkno = dblkno;
 
@@ -1552,13 +1575,12 @@
 		putbuf(newbuf, 1);
 
 		/* add this newly allocated blocks to the Dentry */
-		if(addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno) == 0){
-			panic("could not write Tdata block\n");
-			freeblocks(newblkno, newblocks, Tdata, d->path);
-			return -1;
-		}
+		addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno);
 		d->size += dbuf->appendsize;
 		dbuf->appendsize = 0;
+		freememunits(dbuf->append, Maxdatablockunits);
+		dbuf->append = nil;
+		putbuf(dbuf, 1);
 		return 1;
 	}
 
@@ -1565,8 +1587,10 @@
 	/* allocate new blocks */
 	newblocks = nlastdatablocks((d->size%Maxdatablocksize) +dbuf->appendsize);
 	newbuf = allocblocks(newblocks, Tdata, d->path);
-	if(newbuf == nil)
-		return -1;
+	if(newbuf == nil){
+			putbuf(dbuf, 0);
+			return -1;
+		}
 	newblkno = newbuf->blkno;
 	newbufsize = 0;
 	newbuf->io->dblkno = dblkno;
@@ -1580,6 +1604,7 @@
 							Bwritable, Tdata, d->path, getcallerpc(&dbuf));
 		if(oldbuf == nil){
 			freeblocks(newblkno, newblocks, Tdata, d->path);
+			putbuf(dbuf, 0);
 			return -1;
 		}
 		memcpy(newbuf->io->buf, oldbuf->io->buf, lastdatablksize);
@@ -1596,11 +1621,7 @@
 	putbuf(newbuf, 1);
 
 	/* add this newly allocated blocks to the Dentry */
-	if(addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno) == 0){
-		panic("could not write Tdata block\n");
-		freeblocks(newblkno, newblocks, Tdata, d->path);
-		return -2;
-	}
+	addrelative(d, dblkno, d->size/Maxdatablocksize, newblkno);
 
 	/* free the old last blocks */
 	if(oldbuf)
@@ -1607,6 +1628,9 @@
 		freeblockbuf(oldbuf);
 	d->size += dbuf->appendsize;
 	dbuf->appendsize = 0;
+	freememunits(dbuf->append, Maxdatablockunits);
+	dbuf->append = nil;
+	putbuf(dbuf, 1);
 	return 1;
 }
 
@@ -1626,9 +1650,10 @@
 {
 	Dentry *d;
 	s64 written;
-	s32 n, rv;
+	s32 n;
 	Iobuf *dbuf;
 	u8 dowrite;
+	u64 dsize, dbufappendsize;
 
 	dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
 	if(dbuf == nil)
@@ -1635,7 +1660,9 @@
 		return 0;
 	d = dbuf->d;
 	d->muid = uid;
-	rv = dowrite = written = 0;
+	dowrite = written = 0;
+	dsize =d->size;
+	dbufappendsize = dbuf->appendsize;
 	// odentry(d);
 
 	// little data, stuff it in the Dentry
@@ -1645,23 +1672,27 @@
 			d->size = offset+wbufsize;
 		written = wbufsize;
 		dowrite = 1;
-		goto writeend;
+		d->mtime = nsec();
+		putbuf(dbuf, dowrite);
+		return written;
 	}
 	// more data, relocate it to a proper data block
 	if(d->size+dbuf->appendsize <= Ddatasize && offset+wbufsize > Ddatasize){
 		if(dbuf->append == nil){
+			dbuf->appendsize = 0;
 			dbuf->append = allocmemunits(Maxdatablockunits);
 			if(dbuf->append == nil){
-				rv = -1;
-				goto writeend;
+				putbuf(dbuf, dowrite);
+				return written;
 			}
-			dbuf->appendsize = 0;
 		}
 		memcpy(dbuf->append, d->buf, d->size);
-		dbuf->appendsize = d->size;
-		d->size = 0;
+		dbuf->appendsize = dbufappendsize = d->size;
+		d->size = dsize = 0;
 		dowrite = 1;
+		d->mtime = nsec();
 	}
+	putbuf(dbuf, dowrite);
 
 	for(written = 0; written < wbufsize; ){
 
@@ -1672,7 +1703,7 @@
 		/* all the below functions only write upto the end of an extent.
 		   Hence, the need for a loop to keep repeating.
 		 */
-		if(offset > d->size+dbuf->appendsize){
+		if(offset > dsize+dbufappendsize){
 			/* new blank blocks until offset
 				fill blank data upto offset */
 
@@ -1679,18 +1710,23 @@
 			if(chatty9p > 1)
 				dprint("writefile(): blank blocks until offset\n");
 
+			dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+			if(dbuf == nil)
+				return written;
+			d = dbuf->d;
 			if(dbuf->append == nil){
+				dbuf->appendsize = 0;
 				dbuf->append = allocmemunits(Maxdatablockunits);
 				if(dbuf->append == nil){
-					rv = -1;
-					goto writeend;
+					putbuf(dbuf, 0);
+					return written;
 				}
-				dbuf->appendsize = 0;
 			}
 			n = min(Maxdatablocksize, offset-d->size);
-			dbuf->appendsize = n;
+			dbuf->appendsize = dbufappendsize = n;
+			putbuf(dbuf, 0);
 
-		}else if(offset+written < d->size){
+		}else if(offset+written < dsize){
 			/* replacing existing data
 				no change to file size */
 
@@ -1697,61 +1733,63 @@
 			if(chatty9p > 1)
 				dprint("writefile(): replace existing data\n");
 
-			rv = n = update(d, dblkno,
+			n = update(dblkno, qpath,
 							wbuf+written, /* from where */
 							/* how much */
-							min(wbufsize-written, d->size-(offset+written)),
-							offset+written);	/* to where */
+							min(wbufsize-written, dsize-(offset+written)),
+							offset+written	/* to where */);
 			if(chatty9p > 1)
 				dprint("writefile(): update returned %d\n", n);
 			if(n<0){
 				dprint("update has an issue %d\n", n);
-				goto writeend;
-			}else{
+				return written;
+			}else
 				written += n;
-				dowrite = 1;
-			}
 
-		}else if(offset+written >= d->size &&
-					offset+written < d->size+dbuf->appendsize){
+		}else if(offset+written >= dsize &&
+					offset+written < dsize+dbufappendsize){
 			/* changing append contents */
+			dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+			if(dbuf == nil)
+				return written;
+			d = dbuf->d;
 			n = min(d->size+dbuf->appendsize-(offset+written),wbufsize-written);
 			memcpy(dbuf->append+(offset+written-d->size), wbuf+written, n);
 			written += n;
+			putbuf(dbuf, 0);
 
-		}else if(offset+written >= d->size+dbuf->appendsize){
+		}else if(offset+written >= dsize+dbufappendsize){
 			/* assuming that wbufsize <= append */
 			/* append data, changes file size
 				data blocks from offset until offset+wbufsize */
+
+			dbuf = getmetachk(dblkno, Bwritable, Tdentry, qpath);
+			if(dbuf == nil)
+				return written;
+			d = dbuf->d;
 			if(dbuf->append == nil){
+				dbuf->appendsize = 0;
 				dbuf->append = allocmemunits(Maxdatablockunits);
 				if(dbuf->append == nil){
-					rv = -1;
-					goto writeend;
+					putbuf(dbuf, 0);
+					return written;
 				}
-				dbuf->appendsize = 0;
 			}
 			n = min(Maxdatablocksize-dbuf->appendsize, wbufsize-written);
 			memcpy(dbuf->append+dbuf->appendsize, wbuf+written, n);
-			dbuf->appendsize += n;
+			dbufappendsize = dbuf->appendsize += n;
 			written += n;
+			putbuf(dbuf, 0);
 		}
 		else
 			panic("writefile: should not be here");
 
-		if(dbuf->appendsize == Maxdatablocksize){
-			dowrite = 1;
-			if((rv=writefullappend(dbuf, d, dblkno)) < 0)
-				goto writeend;
+		if(dbufappendsize == Maxdatablocksize){
+		dprint("writefile writefullappend() offset %llud wbufsize %llud written %llud\n",
+				offset, wbufsize, written);
+			if(writefullappend(dblkno, qpath) < 0)
+				return written;
 		}
 	}
-
-writeend:
-	d->mtime = nsec();
-	putbuf(dbuf, dowrite);
-
-	/* How will this work for partial writes? */
-	if(rv < 0)
-		return rv;
 	return written;
 }
--- a/TODO
+++ b/TODO
@@ -29,3 +29,4 @@
 correct /adm/ctl operation:
 	echo df >> /adm/ctl
 	cat /adm/ctl
+
--- a/all.h
+++ b/all.h
@@ -147,7 +147,7 @@
 Tlock*	tlocked(Iobuf*, Dentry*);
 
 /* dentry routines */
-u64 	addrelative(Dentry *d, u64 dblkno, u64 reli, u64 blkno);
+u8 	addrelative(Dentry *d, u64 dblkno, u64 reli, u64 blkno);
 void	clearfrees(void);
 void	freeaux(Aux *a);
 Iobuf*	getdatablkat(Dentry *d, u64 reli);
@@ -157,7 +157,7 @@
 s32		readfilesize(u64 dblkno, u64 qpath);
 void	savefrees(void);
 void	truncatefile(u64 qpath, u64 dblkno, s16 uid);
-s32		writeallappend(Iobuf *dbuf, u64 dblkno);
+s32		writeallappend(u64 dblkno, u64 qpath);
 s32		writefile(u64 dblkno, u64 qpath, s16 uid, char *wbuf, s32 wbufsize, u64 offset);
 void	flush(Iobuf *b);
 u64		sync(void);
--- a/dentry.c
+++ b/dentry.c
@@ -1,26 +1,5 @@
 #include	"all.h"
 
-/* b shoud be wlock'ed */
-void
-flush(Iobuf *b)
-{
-	u8 dowrite = 0;
-
-	if(b == nil ||
-		b->xiobuf == nil ||
-		b->xiobuf[0] != Tdentry)
-		panic("flush called on buf with tag %s\n", tagnames[b->tag]);
-	if(b->append != nil){
-		if(b->appendsize > 0){
-			writeallappend(b, b->blkno);
-			dowrite = 1;
-		}
-		freememunits(b->append, Maxdatablockunits);
-		b->append = nil;
-	}
-	putbuf(b, dowrite);	/* to wunlock b */
-}
-
 u64
 getindblk(u64 blkno, u64 reli, u16 tag, u64 path)
 {
@@ -147,7 +126,7 @@
 
 	dbuf should be wlock'ed.
  */
-u64
+u8
 addrelative(Dentry *d, u64 dblkno, u64 reli, u64 blkno)
 {
 	u64 path, nblkno;
@@ -159,8 +138,10 @@
 
 	path = d->path;
 	if(reli < Ndblock){
+		if(d->dblocks[reli] == blkno)
+			return 0;
 		d->dblocks[reli] = blkno;
-		return blkno;
+		return 1;
 	}
 
 	tag = rel2tind(reli);
@@ -171,8 +152,10 @@
 			dprint("%s",errstring[Ephase]);
 			return 0;
 		}
+	if(d->iblocks[tag-Tind0] == nblkno)
+		return 0;
 	d->iblocks[tag-Tind0] = nblkno;
-	return nblkno;
+	return 1;
 }
 
 /*
@@ -576,7 +559,6 @@
 {
 	s32 nbuf;
 	s8 *buf;
-	Iobuf *dbuf;
 
 	/* should not be necessary as we clear out the file
 		in loadfrees() */
@@ -598,15 +580,7 @@
 	free(buf);
 
 	/* flush to the disk if append has stuff */
-	dbuf = getmetachk(Bdfrees, Bwritable, Tdentry, Qpfrees);
-	if(dbuf == nil)
-		return;
-	if(dbuf->append == nil)
-		putbuf(dbuf, 0);
-	else{
-		writeallappend(dbuf, Bdfrees);
-		putbuf(dbuf, 1);
-	}
+	writeallappend(Bdfrees, Qpfrees);
 }
 
 void
--- a/iobuf.c
+++ b/iobuf.c
@@ -130,7 +130,7 @@
 {
 	Iobuf *p;
 	Hiob *hp;
-	u64 i;
+	u64 i, blkno, qpath;
 //	char buf[1024]={'\0'};
 
 	/* flush old unflushed data appended to the Tdentry */
@@ -152,7 +152,10 @@
 					canwlock(p)){
 					p->callerpc = 1;
 					qunlock(hp);
-					flush(p);
+					blkno = p->blkno;
+					qpath = p->d->qpath;
+					wunlock(p);
+					writeallappend(blkno, qpath);
 					goto Again;
 				}
 			}
@@ -163,7 +166,10 @@
 				p->append != nil &&
 				canwlock(p)){
 				qunlock(hp);
-				flush(p);
+				blkno = p->blkno;
+				qpath = p->d->qpath;
+				wunlock(p);
+				writeallappend(blkno, qpath);
 				goto Again;
 			}
 		}
@@ -171,7 +177,7 @@
 	}
 
 Oldbufs:
-	/* remove old Iobuf's until hp->n <= Ncollisions */
+	/* remove old Iobuf's that are not Tdentry until hp->n <= Ncollisions */
 	for(i = 0; i < nbuckets; i++){
 		hp=&hiob[i];
 		qlock(hp);
@@ -183,7 +189,8 @@
 					/* all new data from here */
 					if(p->atime > nsec()-Nrefresh)
 						break;
-					if(p->ref == 0 &&
+					if(p->tag != Tdentry &&
+						p->ref == 0 &&
 						canwlock(p)){
 						incref(p); /* not needed */
 						/* remove p from its current position in the lru circular buffer */
@@ -192,8 +199,6 @@
 						hp->n--;
 						p->callerpc = 3;
 						qunlock(hp);
-						if(p->tag == Tdentry)
-							flush(p);
 						freememunits(p->xiobuf, p->len);
 						free(p);
 						goto Oldbufs;
@@ -210,7 +215,7 @@
 {
 	Iobuf *p;
 	Hiob *hp;
-	u64 nlocked, i;
+	u64 nlocked, i, blkno, qpath;
 
 	/* flush any unflushed data appended to the Tdentry */
 Resync:
@@ -224,7 +229,10 @@
 					p->append != nil){
 						if(p->ref == 0 && canwlock(p)){
 							qunlock(hp);
-							flush(p);
+							blkno = p->blkno;
+							qpath = p->d->qpath;
+							wunlock(p);
+							writeallappend(blkno, qpath);
 							goto Resync;
 						}else
 							nlocked++;
@@ -235,7 +243,10 @@
 					p->append != nil &&
 					canwlock(p)){
 					qunlock(hp);
-					flush(p);
+					blkno = p->blkno;
+					qpath = p->d->qpath;
+					wunlock(p);
+					writeallappend(blkno, qpath);
 					goto Resync;
 				}
 			}
@@ -518,6 +529,8 @@
 	}else{
 		srcbno = p->blkno;
 		if(dowrite){
+			if(p->xiobuf[0] == Tdentry)
+				p->d->version++;
 			devwrite(p->blkno, p->xiobuf, p->len);
 			if(p->blkno == config.config.srcbno ||
 				p->blkno == config.super.srcbno ||
--- a/tests/test.0/blocks/0
+++ b/tests/test.0/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524340159597405
+mtime 1670559949417880846
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.0/blocks/1
+++ b/tests/test.0/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670524340161363695
+mtime 1670559949419726443
 path 1
-version 0
+version 1
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.0/blocks/10
+++ b/tests/test.0/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670524340160847110
+mtime 1670559949419207974
 path 10
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.0/blocks/2
+++ b/tests/test.0/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524340158292035
+mtime 1670559949416372316
 path 2
-version 0
+version 5
 mode 444
 qidgen 64
 fsok 1
--- a/tests/test.0/blocks/29
+++ b/tests/test.0/blocks/29
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524340161093703
+mtime 1670559949419460359
 path 14
-version 0
+version 2
 mode 444
 direct blocks
 	0 3
--- a/tests/test.0/blocks/3
+++ b/tests/test.0/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670524340159826165
+mtime 1670559949418148585
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.0/blocks/30
+++ b/tests/test.0/blocks/30
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524341286715733
+mtime 1670559950549709817
 path 13
-version 0
+version 6
 mode 444
 qidgen 64
 fsok 1
--- a/tests/test.0/blocks/31
+++ b/tests/test.0/blocks/31
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524340161610883
+mtime 1670559949419984785
 path 12
-version 0
+version 2
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.0/blocks/4
+++ b/tests/test.0/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524340160338766
+mtime 1670559949418660237
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.0/blocks/5
+++ b/tests/test.0/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524340160081932
+mtime 1670559949418399828
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 31
--- a/tests/test.0/blocks/6
+++ b/tests/test.0/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670524340160590972
+mtime 1670559949418929865
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.0/blocks/7
+++ b/tests/test.0/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670524341287336308
+mtime 1670559950550494079
 path 7
-version 0
+version 3
 mode 444
 11 28 18
--- a/tests/test.0/blocks/8
+++ b/tests/test.0/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670524340161870172
+mtime 1670559949420253221
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.0/blocks/9
+++ b/tests/test.0/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670524340162374447
+mtime 1670559949420778782
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.1/blocks/0
+++ b/tests/test.1/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524570444509835
+mtime 1670559978177739809
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.1/blocks/1
+++ b/tests/test.1/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670524570446307920
+mtime 1670559978179527944
 path 1
-version 0
+version 1
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.1/blocks/10
+++ b/tests/test.1/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670524570445787971
+mtime 1670559978179030925
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.1/blocks/11
+++ b/tests/test.1/blocks/11
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670524571584412007
+mtime 1670559979325534885
 path 64
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 12
--- a/tests/test.1/blocks/12
+++ b/tests/test.1/blocks/12
@@ -6,8 +6,8 @@
 size 5
 pdblkno 11
 pqpath 64
-mtime 1670524571588784095
+mtime 1670559979330877951
 path 65
-version 0
+version 3
 mode 666
 test
--- a/tests/test.1/blocks/2
+++ b/tests/test.1/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524570443165932
+mtime 1670559978176412564
 path 2
-version 0
+version 7
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.1/blocks/29
+++ b/tests/test.1/blocks/29
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524571585741795
+mtime 1670559979326971707
 path 14
-version 0
+version 3
 mode 444
 direct blocks
 	0 3
--- a/tests/test.1/blocks/3
+++ b/tests/test.1/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670524570444733010
+mtime 1670559978177988876
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.1/blocks/30
+++ b/tests/test.1/blocks/30
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524571596464413
+mtime 1670559979340501747
 path 13
-version 0
+version 8
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.1/blocks/31
+++ b/tests/test.1/blocks/31
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670524570446570103
+mtime 1670559978179785282
 path 12
-version 0
+version 2
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.1/blocks/4
+++ b/tests/test.1/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524570445239985
+mtime 1670559978178502371
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.1/blocks/5
+++ b/tests/test.1/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524570445023339
+mtime 1670559978178252019
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 31
--- a/tests/test.1/blocks/6
+++ b/tests/test.1/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670524570445520552
+mtime 1670559978178776155
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.1/blocks/7
+++ b/tests/test.1/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670524571596956180
+mtime 1670559979341110686
 path 7
-version 0
+version 3
 mode 444
 13 28 16
--- a/tests/test.1/blocks/8
+++ b/tests/test.1/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670524570446908788
+mtime 1670559978180036361
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.1/blocks/9
+++ b/tests/test.1/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670524570447463829
+mtime 1670559978180562032
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.2/blocks/0
+++ b/tests/test.2/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524867057899924
+mtime 1670560001182426196
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.2/blocks/1
+++ b/tests/test.2/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670524867059755288
+mtime 1670560001184247754
 path 1
-version 0
+version 1
 mode 444
 disksize 24576
 nblocks 48
--- a/tests/test.2/blocks/10
+++ b/tests/test.2/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670524867059243677
+mtime 1670560001183752422
 path 10
-version 0
+version 9
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.2/blocks/11
+++ b/tests/test.2/blocks/11
@@ -8,5 +8,5 @@
 pqpath 0
 mtime 0
 path 0
-version 0
+version 1
 mode 0
--- a/tests/test.2/blocks/2
+++ b/tests/test.2/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670524867056531498
+mtime 1670560001181051565
 path 2
-version 0
+version 13
 mode 444
 qidgen 72
 fsok 1
--- a/tests/test.2/blocks/3
+++ b/tests/test.2/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670524867058189933
+mtime 1670560001182676979
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.2/blocks/4
+++ b/tests/test.2/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524867058756720
+mtime 1670560001183213406
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.2/blocks/5
+++ b/tests/test.2/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670524867058484834
+mtime 1670560001182959095
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 47
--- a/tests/test.2/blocks/6
+++ b/tests/test.2/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670524867058999260
+mtime 1670560001183485928
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.2/blocks/7
+++ b/tests/test.2/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670524868370551289
+mtime 1670560002535668479
 path 7
-version 0
+version 3
 mode 444
 12 44 33
--- a/tests/test.2/blocks/8
+++ b/tests/test.2/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670524867060255981
+mtime 1670560001185064560
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.2/blocks/9
+++ b/tests/test.2/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670524867060770156
+mtime 1670560001185570158
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.3/blocks/0
+++ b/tests/test.3/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525186133263344
+mtime 1670559517459563308
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.3/blocks/1
+++ b/tests/test.3/blocks/1
@@ -6,9 +6,9 @@
 size 120
 pdblkno 3
 pqpath 3
-mtime 1670525186134887356
+mtime 1670559517461411929
 path 1
-version 0
+version 1
 mode 444
 disksize 20971520
 nblocks 40960
--- a/tests/test.3/blocks/10
+++ b/tests/test.3/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670525186134456200
+mtime 1670559517460886256
 path 10
-version 0
+version 11
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.3/blocks/2
+++ b/tests/test.3/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525186111349305
+mtime 1670559517457860519
 path 2
-version 0
+version 15
 mode 444
 qidgen 74
 fsok 1
--- a/tests/test.3/blocks/3
+++ b/tests/test.3/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670525186133486436
+mtime 1670559517459809180
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.3/blocks/4
+++ b/tests/test.3/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525186133925915
+mtime 1670559517460344656
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.3/blocks/40957
+++ b/tests/test.3/blocks/40957
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525189303602795
+mtime 1670559520749182196
 path 14
-version 0
+version 12
 mode 444
 direct blocks
 	0 3
--- a/tests/test.3/blocks/40958
+++ b/tests/test.3/blocks/40958
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525191247761755
+mtime 1670559522819103398
 path 13
-version 0
+version 16
 mode 444
 qidgen 74
 fsok 1
--- a/tests/test.3/blocks/40959
+++ b/tests/test.3/blocks/40959
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525186135175850
+mtime 1670559517461682492
 path 12
-version 0
+version 2
 mode 444
 disksize 20971520
 nblocks 40960
--- a/tests/test.3/blocks/5
+++ b/tests/test.3/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525186133732678
+mtime 1670559517460078886
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 40959
--- a/tests/test.3/blocks/6
+++ b/tests/test.3/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670525186134219143
+mtime 1670559517460617408
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.3/blocks/7
+++ b/tests/test.3/blocks/7
@@ -6,8 +6,8 @@
 size 15
 pdblkno 3
 pqpath 3
-mtime 1670525191248370197
+mtime 1670559522819760587
 path 7
-version 0
+version 3
 mode 444
 12 40956 40945
--- a/tests/test.3/blocks/8
+++ b/tests/test.3/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670525186135426379
+mtime 1670559517461962101
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.3/blocks/9
+++ b/tests/test.3/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670525186135995423
+mtime 1670559517462488995
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.4/blocks/0
+++ b/tests/test.4/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525241558738902
+mtime 1670560282370345477
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.4/blocks/1
+++ b/tests/test.4/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670525241560556570
+mtime 1670560282372177530
 path 1
-version 0
+version 1
 mode 444
 disksize 32768
 nblocks 64
--- a/tests/test.4/blocks/14
+++ b/tests/test.4/blocks/14
@@ -8,7 +8,7 @@
 pqpath 66
 mtime 1651944159000000000
 path 67
-version 0
+version 4
 mode 20000000777
 direct blocks
 	0 15
--- a/tests/test.4/blocks/15
+++ b/tests/test.4/blocks/15
@@ -8,6 +8,6 @@
 pqpath 67
 mtime 1651944168000000000
 path 68
-version 0
+version 4
 mode 666
 test
--- a/tests/test.4/blocks/4
+++ b/tests/test.4/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525241559519920
+mtime 1670560282371114921
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.4/blocks/5
+++ b/tests/test.4/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525241559250587
+mtime 1670560282370858316
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 63
--- a/tests/test.5/blocks/0
+++ b/tests/test.5/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525268689711838
+mtime 1670560312371880962
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.5/blocks/1
+++ b/tests/test.5/blocks/1
@@ -6,9 +6,9 @@
 size 116
 pdblkno 3
 pqpath 3
-mtime 1670525268691516130
+mtime 1670560312373718685
 path 1
-version 0
+version 1
 mode 444
 disksize 5120000
 nblocks 10000
--- a/tests/test.5/blocks/4
+++ b/tests/test.5/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525268690479169
+mtime 1670560312372664503
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.5/blocks/5
+++ b/tests/test.5/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525268690194342
+mtime 1670560312372399200
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 9999
--- a/tests/test.6/blocks/0
+++ b/tests/test.6/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525304680195834
+mtime 1670560341180976166
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.6/blocks/1
+++ b/tests/test.6/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670525304682003825
+mtime 1670560341182808284
 path 1
-version 0
+version 1
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.6/blocks/10
+++ b/tests/test.6/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670525304681463850
+mtime 1670560341182282373
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.6/blocks/11
+++ b/tests/test.6/blocks/11
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670525305820076859
+mtime 1670560342327573795
 path 64
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 12
--- a/tests/test.6/blocks/12
+++ b/tests/test.6/blocks/12
@@ -6,8 +6,8 @@
 size 5
 pdblkno 11
 pqpath 64
-mtime 1670525305824774468
+mtime 1670560342332858874
 path 65
-version 0
+version 3
 mode 666
 test
--- a/tests/test.6/blocks/2
+++ b/tests/test.6/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525304678899689
+mtime 1670560341179610832
 path 2
-version 0
+version 7
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.6/blocks/29
+++ b/tests/test.6/blocks/29
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525305821421539
+mtime 1670560342328927718
 path 14
-version 0
+version 3
 mode 444
 direct blocks
 	0 3
--- a/tests/test.6/blocks/3
+++ b/tests/test.6/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670525304680430335
+mtime 1670560341181222074
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.6/blocks/30
+++ b/tests/test.6/blocks/30
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525306832247689
+mtime 1670560343343825610
 path 13
-version 0
+version 8
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.6/blocks/31
+++ b/tests/test.6/blocks/31
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525304682256135
+mtime 1670560341183070369
 path 12
-version 0
+version 2
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.6/blocks/4
+++ b/tests/test.6/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525304680939346
+mtime 1670560341181755047
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.6/blocks/5
+++ b/tests/test.6/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525304680694770
+mtime 1670560341181491581
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 31
--- a/tests/test.6/blocks/6
+++ b/tests/test.6/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670525304681210390
+mtime 1670560341182026128
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.6/blocks/7
+++ b/tests/test.6/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670525306832753419
+mtime 1670560343344583229
 path 7
-version 0
+version 3
 mode 444
 13 28 16
--- a/tests/test.6/blocks/8
+++ b/tests/test.6/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670525304682552842
+mtime 1670560341183344121
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.6/blocks/9
+++ b/tests/test.6/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670525304683040090
+mtime 1670560341183872973
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.8/blocks/0
+++ b/tests/test.8/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525623796621306
+mtime 1670560614060412941
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.8/blocks/1
+++ b/tests/test.8/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670525623798374899
+mtime 1670560614062200136
 path 1
-version 0
+version 1
 mode 444
 disksize 14336
 nblocks 28
--- a/tests/test.8/blocks/10
+++ b/tests/test.8/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670525623797851776
+mtime 1670560614061674178
 path 10
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.8/blocks/2
+++ b/tests/test.8/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670525623795412004
+mtime 1670560614059029778
 path 2
-version 0
+version 5
 mode 444
 qidgen 64
 fsok 1
--- a/tests/test.8/blocks/25
+++ b/tests/test.8/blocks/25
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670525623798115506
+mtime 1670560614061929283
 path 14
-version 0
+version 2
 mode 444
 direct blocks
 	0 3
--- a/tests/test.8/blocks/3
+++ b/tests/test.8/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670525623796847058
+mtime 1670560614060654290
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.8/blocks/4
+++ b/tests/test.8/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525623797358955
+mtime 1670560614061157322
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.8/blocks/5
+++ b/tests/test.8/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670525623797114828
+mtime 1670560614060907555
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 27
--- a/tests/test.8/blocks/6
+++ b/tests/test.8/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670525623797602080
+mtime 1670560614061425056
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.8/blocks/7
+++ b/tests/test.8/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670525624924374336
+mtime 1670560615193173784
 path 7
-version 0
+version 3
 mode 444
 11 24 14
--- a/tests/test.8/blocks/8
+++ b/tests/test.8/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670525623798867301
+mtime 1670560614062720313
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.8/blocks/9
+++ b/tests/test.8/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670525623799370996
+mtime 1670560614063216145
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.b/blocks/0
+++ b/tests/test.b/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527063549958908
+mtime 1670560839522655674
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.b/blocks/1
+++ b/tests/test.b/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670527063551933025
+mtime 1670560839524438160
 path 1
-version 0
+version 1
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.b/blocks/10
+++ b/tests/test.b/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670527063551422331
+mtime 1670560839523930256
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.b/blocks/11
+++ b/tests/test.b/blocks/11
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527064690851471
+mtime 1670560840668840821
 path 64
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 12
--- a/tests/test.b/blocks/12
+++ b/tests/test.b/blocks/12
@@ -6,8 +6,8 @@
 size 5
 pdblkno 11
 pqpath 64
-mtime 1670527064695491205
+mtime 1670560840673860813
 path 65
-version 0
+version 3
 mode 666
 test
--- a/tests/test.b/blocks/2
+++ b/tests/test.b/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527063548597953
+mtime 1670560839521305618
 path 2
-version 0
+version 7
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.b/blocks/29
+++ b/tests/test.b/blocks/29
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527064692179635
+mtime 1670560840670183455
 path 14
-version 0
+version 3
 mode 444
 direct blocks
 	0 3
--- a/tests/test.b/blocks/3
+++ b/tests/test.b/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527063550185921
+mtime 1670560839522904212
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.b/blocks/30
+++ b/tests/test.b/blocks/30
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527064702673599
+mtime 1670560840683625757
 path 13
-version 0
+version 8
 mode 444
 qidgen 66
 fsok 1
--- a/tests/test.b/blocks/31
+++ b/tests/test.b/blocks/31
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527063552182825
+mtime 1670560839524688726
 path 12
-version 0
+version 2
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.b/blocks/4
+++ b/tests/test.b/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527063550725519
+mtime 1670560839523423463
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.b/blocks/5
+++ b/tests/test.b/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527063550446871
+mtime 1670560839523166827
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 31
--- a/tests/test.b/blocks/6
+++ b/tests/test.b/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670527063550923045
+mtime 1670560839523683447
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.b/blocks/7
+++ b/tests/test.b/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670527064703248005
+mtime 1670560840684319235
 path 7
-version 0
+version 3
 mode 444
 13 28 16
--- a/tests/test.b/blocks/8
+++ b/tests/test.b/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670527063552452458
+mtime 1670560839524954999
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.b/blocks/9
+++ b/tests/test.b/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670527063552959515
+mtime 1670560839525476346
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.d/blocks/0
+++ b/tests/test.d/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527103835680728
+mtime 1670560816350831524
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.d/blocks/1
+++ b/tests/test.d/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670527103837509589
+mtime 1670560816352665588
 path 1
-version 0
+version 1
 mode 444
 disksize 19456
 nblocks 38
--- a/tests/test.d/blocks/10
+++ b/tests/test.d/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670527103836983537
+mtime 1670560816352143955
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.d/blocks/11
+++ b/tests/test.d/blocks/11
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527104975864358
+mtime 1670560817496073307
 path 64
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 12
--- a/tests/test.d/blocks/12
+++ b/tests/test.d/blocks/12
@@ -6,9 +6,9 @@
 size 0
 pdblkno 11
 pqpath 64
-mtime 1670527104977653093
+mtime 1670560817498166508
 path 65
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 13
--- a/tests/test.d/blocks/13
+++ b/tests/test.d/blocks/13
@@ -6,9 +6,9 @@
 size 0
 pdblkno 12
 pqpath 65
-mtime 1670527104979089137
+mtime 1670560817499777374
 path 66
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 14
--- a/tests/test.d/blocks/14
+++ b/tests/test.d/blocks/14
@@ -6,9 +6,9 @@
 size 0
 pdblkno 13
 pqpath 66
-mtime 1670527104980442367
+mtime 1670560817501220174
 path 67
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 15
--- a/tests/test.d/blocks/15
+++ b/tests/test.d/blocks/15
@@ -6,9 +6,9 @@
 size 0
 pdblkno 14
 pqpath 67
-mtime 1670527104981772411
+mtime 1670560817502548097
 path 68
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 0
--- a/tests/test.d/blocks/2
+++ b/tests/test.d/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527103834379195
+mtime 1670560816349439860
 path 2
-version 0
+version 10
 mode 444
 qidgen 69
 fsok 1
--- a/tests/test.d/blocks/3
+++ b/tests/test.d/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527103835918980
+mtime 1670560816351066267
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.d/blocks/35
+++ b/tests/test.d/blocks/35
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527104977048889
+mtime 1670560817497439724
 path 14
-version 0
+version 3
 mode 444
 direct blocks
 	0 3
--- a/tests/test.d/blocks/36
+++ b/tests/test.d/blocks/36
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527105006334120
+mtime 1670560817532207068
 path 13
-version 0
+version 11
 mode 444
 qidgen 69
 fsok 1
--- a/tests/test.d/blocks/37
+++ b/tests/test.d/blocks/37
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527103837756065
+mtime 1670560816352935505
 path 12
-version 0
+version 2
 mode 444
 disksize 19456
 nblocks 38
--- a/tests/test.d/blocks/4
+++ b/tests/test.d/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527103836451933
+mtime 1670560816351600454
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.d/blocks/5
+++ b/tests/test.d/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527103836178576
+mtime 1670560816351335104
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 37
--- a/tests/test.d/blocks/6
+++ b/tests/test.d/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670527103836701660
+mtime 1670560816351870326
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.d/blocks/7
+++ b/tests/test.d/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670527105006860913
+mtime 1670560817532834520
 path 7
-version 0
+version 3
 mode 444
 16 34 19
--- a/tests/test.d/blocks/8
+++ b/tests/test.d/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670527103838022889
+mtime 1670560816353201148
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.d/blocks/9
+++ b/tests/test.d/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670527103838545578
+mtime 1670560816353729334
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.e/blocks/0
+++ b/tests/test.e/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527183582675292
+mtime 1670560785652047116
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.e/blocks/1
+++ b/tests/test.e/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670527183584507183
+mtime 1670560785653880538
 path 1
-version 0
+version 1
 mode 444
 disksize 19456
 nblocks 38
--- a/tests/test.e/blocks/10
+++ b/tests/test.e/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670527183583964534
+mtime 1670560785653349413
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.e/blocks/11
+++ b/tests/test.e/blocks/11
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527184722597142
+mtime 1670560786798845460
 path 64
-version 0
+version 5
 mode 20000000777
 direct blocks
 	0 12
--- a/tests/test.e/blocks/12
+++ b/tests/test.e/blocks/12
@@ -8,5 +8,5 @@
 pqpath 0
 mtime 0
 path 0
-version 0
+version 1
 mode 0
--- a/tests/test.e/blocks/13
+++ b/tests/test.e/blocks/13
@@ -6,9 +6,9 @@
 size 0
 pdblkno 11
 pqpath 64
-mtime 1670527184726227739
+mtime 1670560786802243911
 path 66
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 0
--- a/tests/test.e/blocks/14
+++ b/tests/test.e/blocks/14
@@ -8,5 +8,5 @@
 pqpath 0
 mtime 0
 path 0
-version 0
+version 1
 mode 0
--- a/tests/test.e/blocks/15
+++ b/tests/test.e/blocks/15
@@ -6,7 +6,7 @@
 size 0
 pdblkno 11
 pqpath 64
-mtime 1670527184000000000
+mtime 1670560786000000000
 path 68
-version 0
+version 2
 mode 666
--- a/tests/test.e/blocks/2
+++ b/tests/test.e/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527183581316296
+mtime 1670560785650744102
 path 2
-version 0
+version 10
 mode 444
 qidgen 69
 fsok 1
--- a/tests/test.e/blocks/3
+++ b/tests/test.e/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527183582900192
+mtime 1670560785652281645
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.e/blocks/4
+++ b/tests/test.e/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527183583449842
+mtime 1670560785652813017
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.e/blocks/5
+++ b/tests/test.e/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527183583179186
+mtime 1670560785652548423
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 37
--- a/tests/test.e/blocks/6
+++ b/tests/test.e/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670527183583704706
+mtime 1670560785653084889
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.e/blocks/7
+++ b/tests/test.e/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670527184768379949
+mtime 1670560786857151527
 path 7
-version 0
+version 3
 mode 444
 16 34 19
--- a/tests/test.e/blocks/8
+++ b/tests/test.e/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670527183585072761
+mtime 1670560785654417823
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.e/blocks/9
+++ b/tests/test.e/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670527183585680339
+mtime 1670560785654951577
 path 9
-version 0
+version 1
 mode 444
--- a/tests/test.f/blocks/0
+++ b/tests/test.f/blocks/0
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527225328424329
+mtime 1670560755787325707
 path 11
-version 0
+version 1
 mode 20000000777
 mafs device
 512
--- a/tests/test.f/blocks/1
+++ b/tests/test.f/blocks/1
@@ -6,9 +6,9 @@
 size 105
 pdblkno 3
 pqpath 3
-mtime 1670527225330253770
+mtime 1670560755789054068
 path 1
-version 0
+version 1
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.f/blocks/10
+++ b/tests/test.f/blocks/10
@@ -6,9 +6,9 @@
 size 0
 pdblkno 0
 pqpath 0
-mtime 1670527225329717328
+mtime 1670560755788551301
 path 10
-version 0
+version 2
 mode 20000000777
 direct blocks
 	0 3
--- a/tests/test.f/blocks/11
+++ b/tests/test.f/blocks/11
@@ -6,8 +6,8 @@
 size 5
 pdblkno 10
 pqpath 10
-mtime 1670527226469838597
+mtime 1670560756937749349
 path 64
-version 0
+version 2
 mode 666
 test
--- a/tests/test.f/blocks/2
+++ b/tests/test.f/blocks/2
@@ -6,9 +6,9 @@
 size 16
 pdblkno 3
 pqpath 3
-mtime 1670527225327077749
+mtime 1670560755785999352
 path 2
-version 0
+version 8
 mode 444
 qidgen 65
 fsok 1
--- a/tests/test.f/blocks/29
+++ b/tests/test.f/blocks/29
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527226467893285
+mtime 1670560756934599741
 path 14
-version 0
+version 3
 mode 444
 direct blocks
 	0 3
--- a/tests/test.f/blocks/3
+++ b/tests/test.f/blocks/3
@@ -6,9 +6,9 @@
 size 0
 pdblkno 10
 pqpath 10
-mtime 1670527225328646992
+mtime 1670560755787528056
 path 3
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 1
--- a/tests/test.f/blocks/30
+++ b/tests/test.f/blocks/30
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527228337269277
+mtime 1670560758796621529
 path 13
-version 0
+version 9
 mode 444
 qidgen 65
 fsok 1
--- a/tests/test.f/blocks/31
+++ b/tests/test.f/blocks/31
@@ -6,9 +6,9 @@
 size 0
 pdblkno 5
 pqpath 5
-mtime 1670527225330515284
+mtime 1670560755789350644
 path 12
-version 0
+version 2
 mode 444
 disksize 16384
 nblocks 32
--- a/tests/test.f/blocks/4
+++ b/tests/test.f/blocks/4
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527225329197309
+mtime 1670560755788073254
 path 4
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 6
--- a/tests/test.f/blocks/5
+++ b/tests/test.f/blocks/5
@@ -6,9 +6,9 @@
 size 96
 pdblkno 3
 pqpath 3
-mtime 1670527225328909695
+mtime 1670560755787769157
 path 5
-version 0
+version 1
 mode 20000000777
 direct blocks
 	0 31
--- a/tests/test.f/blocks/6
+++ b/tests/test.f/blocks/6
@@ -6,9 +6,9 @@
 size 95
 pdblkno 4
 pqpath 4
-mtime 1670527225329448382
+mtime 1670560755788327368
 path 6
-version 0
+version 1
 mode 444
 -1:adm:adm:glenda
 0:none:adm:
--- a/tests/test.f/blocks/7
+++ b/tests/test.f/blocks/7
@@ -6,8 +6,8 @@
 size 9
 pdblkno 3
 pqpath 3
-mtime 1670527228338066592
+mtime 1670560758797452306
 path 7
-version 0
+version 6
 mode 444
 12 28 17
--- a/tests/test.f/blocks/8
+++ b/tests/test.f/blocks/8
@@ -6,7 +6,7 @@
 size 0
 pdblkno 3
 pqpath 3
-mtime 1670527225330785196
+mtime 1670560755789630747
 path 8
-version 0
+version 1
 mode 444
--- a/tests/test.f/blocks/9
+++ b/tests/test.f/blocks/9
@@ -6,7 +6,7 @@
 size 0
 pdblkno 4
 pqpath 4
-mtime 1670527225331312113
+mtime 1670560755790149670
 path 9
-version 0
+version 1
 mode 444