|  | /* | 
|  | * sorted by 4,/^$/|sort -bd +1 | 
|  | */ | 
|  | int		addarena(Arena *name); | 
|  | 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*); | 
|  | int		bucklook(u8int*, int, u8int*, int); | 
|  | u32int		buildbucket(Index *ix, IEStream *ies, IBucket *ib, uint); | 
|  | void		checkdcache(void); | 
|  | void		checklumpcache(void); | 
|  | int		clumpinfoeq(ClumpInfo *c, ClumpInfo *d); | 
|  | int		clumpinfoeq(ClumpInfo *c, ClumpInfo *d); | 
|  | u32int		clumpmagic(Arena *arena, u64int aa); | 
|  | uint		countbits(uint n); | 
|  | int		delarena(Arena *arena); | 
|  | void		delaykickicache(void); | 
|  | void		delaykickround(Round*); | 
|  | void		delaykickroundproc(void*); | 
|  | void		dirtydblock(DBlock*, int); | 
|  | void		diskaccess(int); | 
|  | void		disksched(void); | 
|  | void		*emalloc(ulong); | 
|  | void		emptydcache(void); | 
|  | void		emptyicache(void); | 
|  | void		emptylumpcache(void); | 
|  | void		*erealloc(void *, ulong); | 
|  | char		*estrdup(char*); | 
|  | void		*ezmalloc(ulong); | 
|  | Arena		*findarena(char *name); | 
|  | int		flushciblocks(Arena *arena); | 
|  | void		flushdcache(void); | 
|  | void		flushicache(void); | 
|  | int		flushpart(Part*); | 
|  | void		flushqueue(void); | 
|  | void		fmtzbinit(Fmt *f, ZBlock *b); | 
|  | void		freearena(Arena *arena); | 
|  | void		freearenapart(ArenaPart *ap, int freearenas); | 
|  | void		freeiestream(IEStream *ies); | 
|  | void		freeifile(IFile *f); | 
|  | void		freeisect(ISect *is); | 
|  | void		freeindex(Index *index); | 
|  | void		freepart(Part *part); | 
|  | void		freezblock(ZBlock *b); | 
|  | DBlock		*_getdblock(Part *part, u64int addr, int mode, int load); | 
|  | DBlock		*getdblock(Part *part, u64int addr, int mode); | 
|  | u32int		hashbits(u8int *score, int nbits); | 
|  | char		*hargstr(HConnect*, char*, char*); | 
|  | vlong	hargint(HConnect*, char*, vlong); | 
|  | int		hdebug(HConnect*); | 
|  | int		hdisk(HConnect*); | 
|  | int		hnotfound(HConnect*); | 
|  | int		hproc(HConnect*); | 
|  | int		hsethtml(HConnect*); | 
|  | int		hsettext(HConnect*); | 
|  | int		httpdinit(char *address, char *webroot); | 
|  | 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); | 
|  | AState	icachestate(void); | 
|  | int		ientrycmp(const void *vie1, const void *vie2); | 
|  | char		*ifileline(IFile *f); | 
|  | int		ifilename(IFile *f, char *dst); | 
|  | int		ifileu32int(IFile *f, u32int *r); | 
|  | int		inbloomfilter(Bloom*, u8int*); | 
|  | int		indexsect(Index *ix, u8int *score); | 
|  | int		indexsect0(Index *ix, u32int buck); | 
|  | Arena		*initarena(Part *part, u64int base, u64int size, u32int blocksize); | 
|  | ArenaPart	*initarenapart(Part *part); | 
|  | int		initarenasum(void); | 
|  | void		initbloomfilter(Index*); | 
|  | void		initdcache(u32int mem); | 
|  | void		initicache(u32int mem); | 
|  | void		initicachewrite(void); | 
|  | IEStream	*initiestream(Part *part, u64int off, u64int clumps, u32int size); | 
|  | ISect		*initisect(Part *part); | 
|  | Index		*initindex(char *name, ISect **sects, int n); | 
|  | void		initlumpcache(u32int size, u32int nblocks); | 
|  | int		initlumpqueues(int nq); | 
|  | 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 state, AState *as); | 
|  | void		kickdcache(void); | 
|  | void		kickicache(void); | 
|  | void		kickround(Round*, int wait); | 
|  | int		loadbloom(Bloom*); | 
|  | ZBlock		*loadclump(Arena *arena, u64int aa, int blocks, Clump *cl, u8int *score, int verify); | 
|  | DBlock	*loadibucket(Index *index, u8int *score, ISect **is, u32int *buck, IBucket *ib); | 
|  | 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		maparenas(AMap *am, Arena **arenas, int n, char *what); | 
|  | void		markbloomfilter(Bloom*, u8int*); | 
|  | void		markbloomfiltern(Bloom*, u8int[][20], int); | 
|  | uint		msec(void); | 
|  | int		namecmp(char *s, char *t); | 
|  | void		namecp(char *dst, char *src); | 
|  | int		nameok(char *name); | 
|  | void		needmainindex(void); | 
|  | void		needzeroscore(void); | 
|  | Arena		*newarena(Part *part, u32int, char *name, u64int base, u64int size, u32int blocksize); | 
|  | ArenaPart	*newarenapart(Part *part, u32int blocksize, u32int tabsize); | 
|  | ISect		*newisect(Part *part, u32int vers, char *name, u32int blocksize, u32int tabsize); | 
|  | Index		*newindex(char *name, ISect **sects, int n); | 
|  | u32int		now(void); | 
|  | int		okamap(AMap *am, int n, u64int start, u64int stop, char *what); | 
|  | int		okibucket(IBucket*, ISect*); | 
|  | int		outputamap(Fmt *f, AMap *am, int n); | 
|  | int		outputindex(Fmt *f, Index *ix); | 
|  | int		_packarena(Arena *arena, u8int *buf, int); | 
|  | int		packarena(Arena *arena, u8int *buf); | 
|  | int		packarenahead(ArenaHead *head, u8int *buf); | 
|  | int		packarenapart(ArenaPart *as, u8int *buf); | 
|  | void		packbloomhead(Bloom*, u8int*); | 
|  | int		packclump(Clump *c, u8int *buf, u32int); | 
|  | void		packclumpinfo(ClumpInfo *ci, u8int *buf); | 
|  | void		packibucket(IBucket *b, u8int *buf, u32int magic); | 
|  | void		packientry(IEntry *i, u8int *buf); | 
|  | int		packisect(ISect *is, u8int *buf); | 
|  | void		packmagic(u32int magic, u8int *buf); | 
|  | ZBlock		*packet2zblock(Packet *p, u32int size); | 
|  | int		parseamap(IFile *f, AMapN *amn); | 
|  | int		parseindex(IFile *f, Index *ix); | 
|  | void		partblocksize(Part *part, u32int blocksize); | 
|  | int		partifile(IFile *f, Part *part, u64int start, u32int size); | 
|  | void		printarenapart(int fd, ArenaPart *ap); | 
|  | void		printarena(int fd, Arena *arena); | 
|  | void		printindex(int fd, Index *ix); | 
|  | void		printstats(void); | 
|  | void		putdblock(DBlock *b); | 
|  | void		putlump(Lump *b); | 
|  | int		queuewrite(Lump *b, Packet *p, int creator, uint ms); | 
|  | u32int		readarena(Arena *arena, u64int aa, u8int *buf, long n); | 
|  | int		readarenamap(AMapN *amn, Part *part, u64int base, u32int size); | 
|  | Bloom	*readbloom(Part*); | 
|  | int		readclumpinfo(Arena *arena, int clump, ClumpInfo *ci); | 
|  | int		readclumpinfos(Arena *arena, int clump, ClumpInfo *cis, int n); | 
|  | ZBlock		*readfile(char *name); | 
|  | int		readifile(IFile *f, char *name); | 
|  | Packet		*readlump(u8int *score, int type, u32int size, int *cached); | 
|  | int		readpart(Part *part, u64int addr, u8int *buf, u32int n); | 
|  | int		resetbloom(Bloom*); | 
|  | int		runconfig(char *config, Config*); | 
|  | int		scorecmp(u8int *, u8int *); | 
|  | void		scoremem(u8int *score, u8int *buf, int size); | 
|  | void		setatailstate(AState*); | 
|  | void		seterr(int severity, char *fmt, ...); | 
|  | void		setstat(int, long); | 
|  | void		settrace(char *type); | 
|  | u64int		sortrawientries(Index *ix, Part *tmp, u64int *tmpoff, Bloom *bloom); | 
|  | void		startbloomproc(Bloom*); | 
|  | Memimage*	statgraph(Graph *g); | 
|  | void		statsinit(void); | 
|  | int		storeclump(Index *index, ZBlock *b, u8int *score, int type, u32int creator, IAddr *ia); | 
|  | int		storeientry(Index *index, IEntry *m); | 
|  | int		strscore(char *s, u8int *score); | 
|  | int		stru32int(char *s, u32int *r); | 
|  | int		stru64int(char *s, u64int *r); | 
|  | void		sumarena(Arena *arena); | 
|  | int		syncarena(Arena *arena, u32int n, int zok, int fix); | 
|  | int		syncindex(Index *ix); | 
|  | void		trace(char *type, char*, ...); | 
|  | void		traceinit(void); | 
|  | int		u64log2(u64int v); | 
|  | u64int		unittoull(char *s); | 
|  | int		unpackarena(Arena *arena, u8int *buf); | 
|  | int		unpackarenahead(ArenaHead *head, u8int *buf); | 
|  | int		unpackarenapart(ArenaPart *as, u8int *buf); | 
|  | int		unpackbloomhead(Bloom*, u8int*); | 
|  | int		unpackclump(Clump *c, u8int *buf, u32int); | 
|  | void		unpackclumpinfo(ClumpInfo *ci, u8int *buf); | 
|  | void		unpackibucket(IBucket *b, u8int *buf, u32int magic); | 
|  | void		unpackientry(IEntry *i, u8int *buf); | 
|  | int		unpackisect(ISect *is, u8int *buf); | 
|  | u32int		unpackmagic(u8int *buf); | 
|  | void		ventifmtinstall(void); | 
|  | void		vtloghdump(Hio*, VtLog*); | 
|  | void		vtloghlist(Hio*); | 
|  | int		vtproc(void(*)(void*), void*); | 
|  | int		vttypevalid(int type); | 
|  | void		waitforkick(Round*); | 
|  | int		wbarena(Arena *arena); | 
|  | int		wbarenahead(Arena *arena); | 
|  | int		wbarenamap(AMap *am, int n, Part *part, u64int base, u64int size); | 
|  | int		wbarenapart(ArenaPart *ap); | 
|  | void		wbbloomhead(Bloom*); | 
|  | int		wbisect(ISect *is); | 
|  | int		wbindex(Index *ix); | 
|  | int		whackblock(u8int *dst, u8int *src, int ssize); | 
|  | u64int		writeaclump(Arena *a, Clump *c, u8int *clbuf); | 
|  | u32int		writearena(Arena *arena, u64int aa, u8int *clbuf, u32int n); | 
|  | int		writebloom(Bloom*); | 
|  | int		writeclumpinfo(Arena *arean, int clump, ClumpInfo *ci); | 
|  | int		writepng(Hio*, Memimage*); | 
|  | u64int		writeiclump(Index *ix, Clump *c, u8int *clbuf); | 
|  | int		writelump(Packet *p, u8int *score, int type, u32int creator, uint ms); | 
|  | int		writepart(Part *part, u64int addr, u8int *buf, u32int n); | 
|  | int		writeqlump(Lump *u, Packet *p, int creator, uint ms); | 
|  | Packet		*zblock2packet(ZBlock *zb, u32int size); | 
|  | void		zeropart(Part *part, int blocksize); | 
|  |  | 
|  | /* | 
|  | #pragma	varargck	argpos	sysfatal		1 | 
|  | #pragma	varargck	argpos	logerr		2 | 
|  | #pragma	varargck	argpos	SetErr		2 | 
|  | */ | 
|  |  | 
|  | #define scorecmp(h1,h2)		memcmp((h1),(h2),VtScoreSize) | 
|  | #define scorecp(h1,h2)		memmove((h1),(h2),VtScoreSize) | 
|  |  | 
|  | #define MK(t)			((t*)emalloc(sizeof(t))) | 
|  | #define MKZ(t)			((t*)ezmalloc(sizeof(t))) | 
|  | #define MKN(t,n)		((t*)emalloc((n)*sizeof(t))) | 
|  | #define MKNZ(t,n)		((t*)ezmalloc((n)*sizeof(t))) | 
|  | #define MKNA(t,at,n)		((t*)emalloc(sizeof(t) + (n)*sizeof(at))) |