diff options
author | Russ Cox <rsc@swtch.com> | 2007-09-25 09:47:31 -0400 |
---|---|---|
committer | Russ Cox <rsc@swtch.com> | 2007-09-25 09:47:31 -0400 |
commit | 7a400ee957a0815287af806e18ef90dd18b47f82 (patch) | |
tree | 023076fb829f630384f2f394eb9577a81fdca59e /src/cmd/venti/srv/fns.h | |
parent | 25a4e89fa907ed5a5f5d84eccfb66180007d9c68 (diff) | |
download | plan9port-7a400ee957a0815287af806e18ef90dd18b47f82.tar.gz plan9port-7a400ee957a0815287af806e18ef90dd18b47f82.tar.bz2 plan9port-7a400ee957a0815287af806e18ef90dd18b47f82.zip |
venti: new icache
Diffstat (limited to 'src/cmd/venti/srv/fns.h')
-rw-r--r-- | src/cmd/venti/srv/fns.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/cmd/venti/srv/fns.h b/src/cmd/venti/srv/fns.h index cf529953..05a3e937 100644 --- a/src/cmd/venti/srv/fns.h +++ b/src/cmd/venti/srv/fns.h @@ -6,8 +6,11 @@ void addstat(int, int); void addstat2(int, int, int, int); ZBlock *alloczblock(u32int size, int zeroed, uint alignment); Arena *amapitoa(Index *index, u64int a, u64int *aa); +Arena *amapitoag(Index *index, u64int a, u64int *gstart, u64int *glimit, int *g); u64int arenadirsize(Arena *arena, u32int clumps); +int arenatog(Arena *arena, u64int aa, u64int *gstart, u64int *glimit, int *g); void arenaupdate(Arena *arena, u32int size, u8int *score); +int asumload(Arena *arena, int g, IEntry *entries, int maxentries); void backsumarena(Arena *arena); void binstats(long (*fn)(Stats *s0, Stats *s1, void*), void *arg, long t0, long t1, Statbin *bin, int nbin); int bloominit(Bloom*, vlong, uchar*); @@ -64,6 +67,7 @@ int iaddrcmp(IAddr *ia1, IAddr *ia2); IEntry* icachedirty(u32int, u32int, u64int); ulong icachedirtyfrac(void); void icacheclean(IEntry*); +int icachelookup(u8int *score, int type, IAddr *ia); int ientrycmp(const void *vie1, const void *vie2); char *ifileline(IFile *f); int ifilename(IFile *f, char *dst); @@ -76,7 +80,7 @@ ArenaPart *initarenapart(Part *part); int initarenasum(void); void initbloomfilter(Index*); void initdcache(u32int mem); -void initicache(int bits, int depth); +void initicache(u32int mem); void initicachewrite(void); IEStream *initiestream(Part *part, u64int off, u64int clumps, u32int size); ISect *initisect(Part *part); @@ -87,7 +91,7 @@ Part* initpart(char *name, int mode); void initround(Round*, char*, int); int initventi(char *config, Config *conf); void insertlump(Lump *lump, Packet *p); -int insertscore(u8int *score, IAddr *ia, int write); +int insertscore(u8int *score, IAddr *ia, int state); void kickdcache(void); void kickicache(void); void kickround(Round*, int wait); @@ -97,8 +101,7 @@ DBlock *loadibucket(Index *index, u8int *score, ISect **is, u32int *buck, IBucke int loadientry(Index *index, u8int *score, int type, IEntry *ie); void logerr(int severity, char *fmt, ...); Lump *lookuplump(u8int *score, int type); -int _lookupscore(u8int *score, int type, IAddr *ia, int *rac); -int lookupscore(u8int *score, int type, IAddr *ia, int *rac); +int lookupscore(u8int *score, int type, IAddr *ia); int maparenas(AMap *am, Arena **arenas, int n, char *what); void markbloomfilter(Bloom*, u8int*); uint msec(void); |