diff options
| author | Russ Cox <rsc@swtch.com> | 2009-05-25 02:11:27 -0700 |
|---|---|---|
| committer | Russ Cox <rsc@swtch.com> | 2009-05-25 02:11:27 -0700 |
| commit | 75d048884cfcb7cc4404b384da50923e22224365 (patch) | |
| tree | b918a6a957b1f322ebb2f84c16092e103f91acda /src/cmd/vac/vacfs.c | |
| parent | 33b446b8bbfea80552d462296d27ad4114fbd3fb (diff) | |
| download | plan9port-75d048884cfcb7cc4404b384da50923e22224365.tar.gz plan9port-75d048884cfcb7cc4404b384da50923e22224365.zip | |
venti: 32-bit extensions to data structures
Diffstat (limited to 'src/cmd/vac/vacfs.c')
| -rw-r--r-- | src/cmd/vac/vacfs.c | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/src/cmd/vac/vacfs.c b/src/cmd/vac/vacfs.c index 5c65cf3b..ad72098f 100644 --- a/src/cmd/vac/vacfs.c +++ b/src/cmd/vac/vacfs.c @@ -118,6 +118,31 @@ notifyf(void *a, char *s) noted(NDFLT); } +#define TWID64 ~(u64int)0 +static u64int +unittoull(char *s) +{ + char *es; + u64int n; + + if(s == nil) + return TWID64; + n = strtoul(s, &es, 0); + if(*es == 'k' || *es == 'K'){ + n *= 1024; + es++; + }else if(*es == 'm' || *es == 'M'){ + n *= 1024*1024; + es++; + }else if(*es == 'g' || *es == 'G'){ + n *= 1024*1024*1024; + es++; + } + if(*es != '\0') + return TWID64; + return n; +} + void threadmain(int argc, char *argv[]) { @@ -125,10 +150,10 @@ threadmain(int argc, char *argv[]) int p[2], fd; int stdio; char *host = nil; - long ncache; + ulong mem; + mem = 16<<20; stdio = 0; - ncache = 256; fmtinstall('H', encodefmt); fmtinstall('V', vtscorefmt); fmtinstall('F', vtfcallfmt); @@ -140,9 +165,6 @@ threadmain(int argc, char *argv[]) fmtinstall('F', fcallfmt); dflag = 1; break; - case 'c': - ncache = atoi(EARGF(usage())); - break; case 'i': defmnt = nil; stdio = 1; @@ -158,6 +180,9 @@ threadmain(int argc, char *argv[]) case 's': defsrv = "vacfs"; break; + case 'M': + mem = unittoull(EARGF(usage())); + break; case 'm': defmnt = EARGF(usage()); break; @@ -206,7 +231,7 @@ threadmain(int argc, char *argv[]) if(vtconnect(conn) < 0) sysfatal("vtconnect: %r"); - fs = vacfsopen(conn, argv[0], VtOREAD, ncache); + fs = vacfsopen(conn, argv[0], VtOREAD, mem); if(fs == nil) sysfatal("vacfsopen: %r"); |
