1*368c31abSDavid du Colombier #include "stdinc.h" 2*368c31abSDavid du Colombier #include "dat.h" 3*368c31abSDavid du Colombier #include "fns.h" 4*368c31abSDavid du Colombier 5*368c31abSDavid du Colombier void usage(void)6*368c31abSDavid du Colombierusage(void) 7*368c31abSDavid du Colombier { 8*368c31abSDavid du Colombier fprint(2, "usage: printmap [-B blockcachesize] config\n"); 9*368c31abSDavid du Colombier threadexitsall("usage"); 10*368c31abSDavid du Colombier } 11*368c31abSDavid du Colombier 12*368c31abSDavid du Colombier Config conf; 13*368c31abSDavid du Colombier 14*368c31abSDavid du Colombier void threadmain(int argc,char * argv[])15*368c31abSDavid du Colombierthreadmain(int argc, char *argv[]) 16*368c31abSDavid du Colombier { 17*368c31abSDavid du Colombier u32int bcmem; 18*368c31abSDavid du Colombier int fix; 19*368c31abSDavid du Colombier 20*368c31abSDavid du Colombier fix = 0; 21*368c31abSDavid du Colombier bcmem = 0; 22*368c31abSDavid du Colombier ARGBEGIN{ 23*368c31abSDavid du Colombier case 'B': 24*368c31abSDavid du Colombier bcmem = unittoull(ARGF()); 25*368c31abSDavid du Colombier break; 26*368c31abSDavid du Colombier default: 27*368c31abSDavid du Colombier usage(); 28*368c31abSDavid du Colombier break; 29*368c31abSDavid du Colombier }ARGEND 30*368c31abSDavid du Colombier 31*368c31abSDavid du Colombier if(!fix) 32*368c31abSDavid du Colombier readonly = 1; 33*368c31abSDavid du Colombier 34*368c31abSDavid du Colombier if(argc != 1) 35*368c31abSDavid du Colombier usage(); 36*368c31abSDavid du Colombier 37*368c31abSDavid du Colombier if(initventi(argv[0], &conf) < 0) 38*368c31abSDavid du Colombier sysfatal("can't init venti: %r"); 39*368c31abSDavid du Colombier 40*368c31abSDavid du Colombier printindex(1, mainindex); 41*368c31abSDavid du Colombier threadexitsall(0); 42*368c31abSDavid du Colombier } 43