summaryrefslogtreecommitdiff
path: root/sys/src/cmd/cwfs/cw.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@centraldogma>2011-06-11 14:19:07 +0000
committercinap_lenrek <cinap_lenrek@centraldogma>2011-06-11 14:19:07 +0000
commit67bb0a2c7a9ae7b197932e5b3ff3ad48ee39eab5 (patch)
tree5fc4ec7fe87a36dae66d781c83979470892246df /sys/src/cmd/cwfs/cw.c
parent54e72f3e9cd1e0ae35d14d12940f1b5baa69d031 (diff)
cwfs: store newcache format option in config
Diffstat (limited to 'sys/src/cmd/cwfs/cw.c')
-rw-r--r--sys/src/cmd/cwfs/cw.c20
1 files changed, 9 insertions, 11 deletions
diff --git a/sys/src/cmd/cwfs/cw.c b/sys/src/cmd/cwfs/cw.c
index c22693d6c..bd7757542 100644
--- a/sys/src/cmd/cwfs/cw.c
+++ b/sys/src/cmd/cwfs/cw.c
@@ -84,8 +84,6 @@ static char* cwnames[] =
[Orele] "rele",
};
-int oldcachefmt = 1;
-
Centry* getcentry(Bucket*, Off);
int cwio(Device*, Off, void*, int);
void cmd_cwcmd(int, char*[]);
@@ -302,10 +300,10 @@ dumpblock(Device *dev)
return 0;
found:
- if (oldcachefmt)
- a = a*CEPERBK + (c - b->entry) + caddr;
- else
+ if (conf.newcache)
a += (c - b->entry)*msize + caddr;
+ else
+ a = a*CEPERBK + (c - b->entry) + caddr;
p1 = getbuf(devnone, Cwdump1, 0);
count = 0;
@@ -562,10 +560,10 @@ cwio(Device *dev, Off addr, void *buf, int opcode)
bn = addr % h->msize;
a1 = h->maddr + bn/BKPERBLK;
- if (oldcachefmt)
- a2 = bn*CEPERBK + h->caddr;
- else
+ if (conf.newcache)
a2 = bn + h->caddr;
+ else
+ a2 = bn*CEPERBK + h->caddr;
max = h->wmax;
putbuf(cb);
@@ -583,10 +581,10 @@ cwio(Device *dev, Off addr, void *buf, int opcode)
cw->cdev, (Wideoff)a1);
return Cerror;
}
- if (oldcachefmt)
- a2 += c - b->entry;
- else
+ if (conf.newcache)
a2 += (c - b->entry) * h->msize;
+ else
+ a2 += c - b->entry;
state = c->state;
switch(opcode) {