diff options
author | Frans Kaashoek <[email protected]> | 2011-07-27 20:35:46 -0400 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2011-07-27 20:35:46 -0400 |
commit | 13a96baefc0ff5d8262c4bc8c797bee4b157443c (patch) | |
tree | a84aa8ed35618f99c3d7e8cdd466d22ae7bad597 /mkfs.c | |
parent | 97657d703f7a92a088b400980c17249f34640a5e (diff) | |
download | xv6-labs-13a96baefc0ff5d8262c4bc8c797bee4b157443c.tar.gz xv6-labs-13a96baefc0ff5d8262c4bc8c797bee4b157443c.tar.bz2 xv6-labs-13a96baefc0ff5d8262c4bc8c797bee4b157443c.zip |
Dirt simple logging
Passes usertests and stressfs
Seems to recover correctly in a number of simple cases
Diffstat (limited to 'mkfs.c')
-rw-r--r-- | mkfs.c | 13 |
1 files changed, 8 insertions, 5 deletions
@@ -9,8 +9,10 @@ #include "types.h" #include "fs.h" #include "stat.h" +#include "param.h" -int nblocks = 995; +int nblocks = 985; +int nlog = LOGSIZE; int ninodes = 200; int size = 1024; @@ -79,17 +81,18 @@ main(int argc, char *argv[]) sb.size = xint(size); sb.nblocks = xint(nblocks); // so whole disk is size sectors sb.ninodes = xint(ninodes); + sb.nlog = xint(nlog); bitblocks = size/(512*8) + 1; usedblocks = ninodes / IPB + 3 + bitblocks; freeblock = usedblocks; - printf("used %d (bit %d ninode %zu) free %u total %d\n", usedblocks, - bitblocks, ninodes/IPB + 1, freeblock, nblocks+usedblocks); + printf("used %d (bit %d ninode %zu) free %u log %u total %d\n", usedblocks, + bitblocks, ninodes/IPB + 1, freeblock, nlog, nblocks+usedblocks+nlog); - assert(nblocks + usedblocks == size); + assert(nblocks + usedblocks + nlog == size); - for(i = 0; i < nblocks + usedblocks; i++) + for(i = 0; i < nblocks + usedblocks + nlog; i++) wsect(i, zeroes); memset(buf, 0, sizeof(buf)); |