Browse Source

Venti.

Untested, use with caution.
For test with Rafa's fossil work.

Change-Id: I4bb9f7996767ad49191b763f70a9a2c2579ecec7
Elbing Miss 8 years ago
parent
commit
6b4a9b48aa
48 changed files with 450 additions and 520 deletions
  1. 2 1
      sys/src/cmd/cmd.json
  2. 3 1
      sys/src/cmd/cmds.json
  3. 2 3
      sys/src/cmd/venti/copy.c
  4. 0 28
      sys/src/cmd/venti/mkfile
  5. 2 2
      sys/src/cmd/venti/mkroot.c
  6. 1 1
      sys/src/cmd/venti/randtest.c
  7. 2 2
      sys/src/cmd/venti/read.c
  8. 2 2
      sys/src/cmd/venti/root.c
  9. 7 7
      sys/src/cmd/venti/srv/arenas.c
  10. 2 2
      sys/src/cmd/venti/srv/bloom.c
  11. 2 2
      sys/src/cmd/venti/srv/buildindex.c
  12. 2 2
      sys/src/cmd/venti/srv/checkindex.c
  13. 1 1
      sys/src/cmd/venti/srv/clumpstats.c
  14. 1 1
      sys/src/cmd/venti/srv/cmparenas.c
  15. 1 1
      sys/src/cmd/venti/srv/conv.c
  16. 100 100
      sys/src/cmd/venti/srv/dat.h
  17. 1 1
      sys/src/cmd/venti/srv/findscore.c
  18. 71 75
      sys/src/cmd/venti/srv/fixarenas.c
  19. 1 1
      sys/src/cmd/venti/srv/fmtarenas.c
  20. 3 3
      sys/src/cmd/venti/srv/fmtbloom.c
  21. 2 2
      sys/src/cmd/venti/srv/fmtindex.c
  22. 86 86
      sys/src/cmd/venti/srv/fns.h
  23. 1 1
      sys/src/cmd/venti/srv/graph.c
  24. 1 1
      sys/src/cmd/venti/srv/hdisk.c
  25. 1 1
      sys/src/cmd/venti/srv/hproc.c
  26. 2 2
      sys/src/cmd/venti/srv/icachewrite.c
  27. 2 2
      sys/src/cmd/venti/srv/ifile.c
  28. 3 3
      sys/src/cmd/venti/srv/index.c
  29. 49 0
      sys/src/cmd/venti/srv/libvs.json
  30. 0 101
      sys/src/cmd/venti/srv/mkfile
  31. 1 3
      sys/src/cmd/venti/srv/part.c
  32. 3 3
      sys/src/cmd/venti/srv/printarena.c
  33. 2 54
      sys/src/cmd/venti/srv/printarenapart.c
  34. 1 1
      sys/src/cmd/venti/srv/printarenas.c
  35. 1 1
      sys/src/cmd/venti/srv/printindex.c
  36. 1 1
      sys/src/cmd/venti/srv/printmap.c
  37. 1 1
      sys/src/cmd/venti/srv/reseal.c
  38. 44 0
      sys/src/cmd/venti/srv/srv.json
  39. 1 1
      sys/src/cmd/venti/srv/syncindex.c
  40. 2 2
      sys/src/cmd/venti/srv/utils.c
  41. 1 1
      sys/src/cmd/venti/srv/venti.c
  42. 2 2
      sys/src/cmd/venti/srv/verifyarena.c
  43. 1 1
      sys/src/cmd/venti/srv/whack.c
  44. 7 7
      sys/src/cmd/venti/srv/whack.h
  45. 3 3
      sys/src/cmd/venti/srv/wrarena.c
  46. 3 3
      sys/src/cmd/venti/srv/xml.h
  47. 22 0
      sys/src/cmd/venti/venti.json
  48. 1 1
      sys/src/cmd/venti/write.c

+ 2 - 1
sys/src/cmd/cmd.json

@@ -18,6 +18,7 @@
 		"-llex",
 		"-lmemdraw",
 		"-lmemlayer",
+		"-lmemdraw",
 		"-ldraw",
 		"-lplumb",
 		"-lregexp",
@@ -30,11 +31,11 @@
 		"-lauthsrv",
 		"-lndb",
 		"-lip",
+		"-lventi",
 		"-lsec",
 		"-lauth",
 		"-lmp",
 		"-lthread",
-		"-lventi",
 		"-lmach",
 		"-lbio",
 		"-lc"

+ 3 - 1
sys/src/cmd/cmds.json

@@ -25,7 +25,9 @@
 		"hoc/hoc.json",
 		"grep/grep.json",
 		"ndb/ndb.json",
-		"rio/rio.json"
+		"rio/rio.json",
+		"syscall/syscall.json",
+		"venti/venti.json"
 	],
 	"SourceFilesCmd": [
 		"aan.c",

+ 2 - 3
sys/src/cmd/venti/copy.c

@@ -175,7 +175,6 @@ walk(uint8_t score[VtScoreSize], uint type, int base)
 		abort();
 		sysfatal("not rewriting: wrote %V got %V", score, nscore);
 	}
-	
 	markvisited(score, type);
 	free(buf);
 }
@@ -184,8 +183,8 @@ void
 main(int argc, char *argv[])
 {
 	int type, n;
-	uchar score[VtScoreSize];
-	uchar *buf;
+	unsigned char score[VtScoreSize];
+	unsigned char *buf;
 	char *prefix;
 
 	fmtinstall('F', vtfcallfmt);

+ 0 - 28
sys/src/cmd/venti/mkfile

@@ -1,28 +0,0 @@
-</$objtype/mkfile
-
-TARG=\
-	copy\
-	read\
-	ro\
-	sync\
-	write\
-
-
-BIN=/$objtype/bin/venti
-
-</sys/src/cmd/mkmany
-
-CFLAGS=$CFLAGS -I.
-
-extra:V: $O.devnull $O.mkroot $O.randtest $O.readlist $O.root
-
-all:V:		srv.all.dir
-install:V:	srv.install.dir
-installall:V:	srv.installall.dir
-safeinstall:V:	srv.safeinstall.dir
-safeinstallall:V: srv.safeinstallall.dir
-clean:V:	srv.clean.dir
-nuke:V:		srv.nuke.dir
-
-srv.%.dir:V:
-	@{ cd srv && mk $stem }

+ 2 - 2
sys/src/cmd/venti/mkroot.c

@@ -24,8 +24,8 @@ usage(void)
 void
 threadmain(int argc, char *argv[])
 {
-	uchar score[VtScoreSize];
-	uchar buf[VtRootSize];
+	unsigned char score[VtScoreSize];
+	unsigned char buf[VtRootSize];
 	VtConn *z;
 	VtRoot root;
 

+ 1 - 1
sys/src/cmd/venti/randtest.c

@@ -164,7 +164,7 @@ void
 threadmain(int argc, char *argv[])
 {
 	int i, max;
-	vlong t0;
+	int64_t t0;
 	double t;
 
 	blocksize = 8192;

+ 2 - 2
sys/src/cmd/venti/read.c

@@ -24,8 +24,8 @@ void
 threadmain(int argc, char *argv[])
 {
 	int type, n;
-	uchar score[VtScoreSize];
-	uchar *buf;
+	unsigned char score[VtScoreSize];
+	unsigned char *buf;
 	VtConn *z;
 	char *host;
 

+ 2 - 2
sys/src/cmd/venti/root.c

@@ -24,8 +24,8 @@ void
 threadmain(int argc, char *argv[])
 {
 	int i, n;
-	uchar score[VtScoreSize];
-	uchar *buf;
+	unsigned char score[VtScoreSize];
+	unsigned char *buf;
 	VtConn *z;
 	char *host;
 	VtRoot root;

+ 7 - 7
sys/src/cmd/venti/srv/arenas.c

@@ -143,7 +143,7 @@ initarenapart(Part *part)
 	}
 	ap->tabsize = ap->arenabase - ap->tabbase;
 	partblocksize(part, ap->blocksize);
-	ap->size = ap->part->size & ~(u64int)(ap->blocksize - 1);
+	ap->size = ap->part->size & ~(uint64_t)(ap->blocksize - 1);
 
 	if(readarenamap(&amn, part, ap->tabbase, ap->tabsize) < 0){
 		freearenapart(ap, 0);
@@ -214,7 +214,7 @@ newarenapart(Part *part, uint32_t blocksize, uint32_t tabsize)
 	ap->part = part;
 	ap->blocksize = blocksize;
 	partblocksize(part, blocksize);
-	ap->size = part->size & ~(u64int)(blocksize - 1);
+	ap->size = part->size & ~(uint64_t)(blocksize - 1);
 	ap->tabbase = (PartBlank + HeadSize + blocksize - 1) & ~(blocksize - 1);
 	ap->arenabase = (ap->tabbase + tabsize + blocksize - 1) & ~(blocksize - 1);
 	ap->tabsize = ap->arenabase - ap->tabbase;
@@ -360,9 +360,9 @@ wbarenamap(AMap *am, int n, Part *part, uint64_t base, uint64_t size)
 
 /*
  * amap: n '\n' amapelem * n
- * n: u32int
+ * n: uint32_t
  * amapelem: name '\t' astart '\t' astop '\n'
- * astart, astop: u64int
+ * astart, astop: uint64_t
  */
 int
 parseamap(IFile *f, AMapN *amn)
@@ -376,7 +376,7 @@ parseamap(IFile *f, AMapN *amn)
 	/*
 	 * arenas
 	 */
-	if(ifileu32int(f, &v) < 0){
+	if(ifileuint32_t(f, &v) < 0){
 		seterr(ECorrupt, "syntax error: bad number of elements in %s", f->name);
 		return -1;
 	}
@@ -406,13 +406,13 @@ parseamap(IFile *f, AMapN *amn)
 		if(nameok(flds[0]) < 0)
 			return -1;
 		namecp(am[i].name, flds[0]);
-		if(stru64int(flds[1], &v64) < 0){
+		if(struint64_t(flds[1], &v64) < 0){
 			seterr(ECorrupt, "syntax error: bad arena base address in %s", f->name);
 			free(am);
 			return -1;
 		}
 		am[i].start = v64;
-		if(stru64int(flds[2], &v64) < 0){
+		if(struint64_t(flds[2], &v64) < 0){
 			seterr(ECorrupt, "syntax error: bad arena size in %s", f->name);
 			free(am);
 			return -1;

+ 2 - 2
sys/src/cmd/venti/srv/bloom.c

@@ -87,7 +87,7 @@ resetbloom(Bloom *b)
 	
 	data = vtmallocz(b->size);
 	b->data = data;
-	if(b->size == MaxBloomSize)	/* 2^32 overflows ulong */
+	if(b->size == MaxBloomSize)	/* 2^32 overflows uint32_t */
 		addstat(StatBloomBits, b->size*8-1);
 	else
 		addstat(StatBloomBits, b->size*8);
@@ -117,7 +117,7 @@ loadbloom(Bloom *b)
 		ones += countbits(a[i]); 
 	addstat(StatBloomOnes, ones);
 
-	if(b->size == MaxBloomSize)	/* 2^32 overflows ulong */
+	if(b->size == MaxBloomSize)	/* 2^32 overflows uint32_t */
 		addstat(StatBloomBits, b->size*8-1);
 	else
 		addstat(StatBloomBits, b->size*8);

+ 2 - 2
sys/src/cmd/venti/srv/buildindex.c

@@ -53,7 +53,7 @@ void
 threadmain(int argc, char *argv[])
 {
 	int fd, i, napart, nfinish, maxdisks;
-	u32int bcmem, imem;
+	uint32_t bcmem, imem;
 	Config conf;
 	Part *p;
 	
@@ -429,7 +429,7 @@ static int
 countsokay(IPool *p)
 {
 	int i;
-	u64int n;
+	uint64_t n;
 	
 	n = 0;
 	for(i=0; i<p->nmbuf; i++)

+ 2 - 2
sys/src/cmd/venti/srv/checkindex.c

@@ -236,8 +236,8 @@ threadmain(int argc, char *argv[])
 {
 	Bloom *oldbloom, *newbloom;
 	Part *part;
-	u64int clumps, base;
-	u32int bcmem;
+	uint64_t clumps, base;
+	uint32_t bcmem;
 	int fix, skipz, ok;
 
 	fix = 0;

+ 1 - 1
sys/src/cmd/venti/srv/clumpstats.c

@@ -104,7 +104,7 @@ usage(void)
 void
 threadmain(int argc, char *argv[])
 {
-	u32int bcmem;
+	uint32_t bcmem;
 
 	bcmem = 0;
 

+ 1 - 1
sys/src/cmd/venti/srv/cmparenas.c

@@ -243,7 +243,7 @@ threadmain(int argc, char *argv[])
 {
 	int i, nline;
 	char *p, *q, *table, *table1, *f[10], line[256];
-	vlong start, stop;
+	int64_t start, stop;
 	ArenaPart ap;
 	ArenaPart ap1;
 	

+ 1 - 1
sys/src/cmd/venti/srv/conv.c

@@ -16,7 +16,7 @@
  */
 #define	U8GET(p)	((p)[0])
 #define	U16GET(p)	(((p)[0]<<8)|(p)[1])
-#define	U32GET(p)	((u32int)(((p)[0]<<24)|((p)[1]<<16)|((p)[2]<<8)|(p)[3]))
+#define	U32GET(p)	((uint32_t)(((p)[0]<<24)|((p)[1]<<16)|((p)[2]<<8)|(p)[3]))
 #define	U64GET(p)	(((uint64_t)U32GET(p)<<32)|(uint64_t)U32GET((p)+4))
 
 #define	U8PUT(p,v)	(p)[0]=(v)&0xFF

+ 100 - 100
sys/src/cmd/venti/srv/dat.h

@@ -40,9 +40,9 @@ typedef struct Bloom	Bloom;
 
 #pragma incomplete IEStream
 
-#define	TWID32	((u32int)~(u32int)0)
-#define	TWID64	((u64int)~(u64int)0)
-#define	TWID8	((u8int)~(u8int)0)
+#define	TWID32	((uint32_t)~(uint32_t)0)
+#define	TWID64	((uint64_t)~(uint64_t)0)
+#define	TWID8	((uint8_t)~(uint8_t)0)
 
 enum
 {
@@ -184,9 +184,9 @@ struct Config
 	int		nsects;			/* index sections initialized */
 	ISect		**sects;
 	Bloom	*bloom;		/* bloom filter */
-	u32int	bcmem;
-	u32int	mem;
-	u32int	icmem;
+	uint32_t	bcmem;
+	uint32_t	mem;
+	uint32_t	icmem;
 	int		queuewrites;
 	char*	haddr;
 	char*	vaddr;
@@ -203,10 +203,10 @@ struct Part
 {
 	int		fd;			/* rock for accessing the disk */
 	int		mode;
-	u64int		offset;
-	u64int		size;			/* size of the partiton */
-	u32int		blocksize;		/* block size for reads and writes */
-	u32int		fsblocksize;	/* minimum file system block size */
+	uint64_t		offset;
+	uint64_t		size;			/* size of the partiton */
+	uint32_t		blocksize;		/* block size for reads and writes */
+	uint32_t		fsblocksize;	/* minimum file system block size */
 	char		*name;
 	char		*filename;
 	Channel		*writechan;		/* chan[dcache.nblock](DBlock*) */
@@ -219,20 +219,20 @@ struct Part
  */
 struct DBlock
 {
-	u8int	*data;
+	uint8_t	*data;
 
 	Part	*part;			/* partition in which cached */
-	u64int	addr;			/* base address on the partition */
-	u32int	size;			/* amount of data available, not amount allocated; should go away */
-	u32int	mode;
-	u32int	dirty;
-	u32int	dirtying;
+	uint64_t	addr;			/* base address on the partition */
+	uint32_t	size;			/* amount of data available, not amount allocated; should go away */
+	uint32_t	mode;
+	uint32_t	dirty;
+	uint32_t	dirtying;
 	DBlock	*next;			/* doubly linked hash chains */
 	DBlock	*prev;
-	u32int	heap;			/* index in heap table */
-	u32int	used;			/* last reference times */
-	u32int	used2;
-	u32int	ref;			/* reference count */
+	uint32_t	heap;			/* index in heap table */
+	uint32_t	used;			/* last reference times */
+	uint32_t	used2;
+	uint32_t	ref;			/* reference count */
 	RWLock	lock;			/* for access to data only */
 	Channel	*writedonechan;	
 	void*	chanbuf[1];		/* buffer for the chan! */
@@ -249,15 +249,15 @@ struct Lump
 	Packet	*data;
 
 	Part	*part;			/* partition in which cached */
-	u8int	score[VtScoreSize];	/* score of packet */
-	u8int	type;			/* type of packet */
-	u32int	size;			/* amount of data allocated to hold packet */
+	uint8_t	score[VtScoreSize];	/* score of packet */
+	uint8_t	type;			/* type of packet */
+	uint32_t	size;			/* amount of data allocated to hold packet */
 	Lump	*next;			/* doubly linked hash chains */
 	Lump	*prev;
-	u32int	heap;			/* index in heap table */
-	u32int	used;			/* last reference times */
-	u32int	used2;
-	u32int	ref;			/* reference count */
+	uint32_t	heap;			/* index in heap table */
+	uint32_t	used;			/* last reference times */
+	uint32_t	used2;
+	uint32_t	ref;			/* reference count */
 	QLock	lock;			/* for access to data only */
 };
 
@@ -266,8 +266,8 @@ struct Lump
  */
 struct AMap
 {
-	u64int		start;
-	u64int		stop;
+	uint64_t		start;
+	uint64_t		stop;
 	char		name[ANameSize];
 };
 
@@ -288,17 +288,17 @@ struct AMapN
 struct ArenaPart
 {
 	Part		*part;
-	u64int		size;			/* size of underlying partition, rounded down to blocks */
+	uint64_t		size;			/* size of underlying partition, rounded down to blocks */
 	Arena		**arenas;
-	u32int		tabbase;		/* base address of arena table on disk */
-	u32int		tabsize;		/* max. bytes in arena table */
+	uint32_t		tabbase;		/* base address of arena table on disk */
+	uint32_t		tabsize;		/* max. bytes in arena table */
 
 	/*
 	 * fields stored on disk
 	 */
-	u32int		version;
-	u32int		blocksize;		/* "optimal" block size for reads and writes */
-	u32int		arenabase;		/* base address of first arena */
+	uint32_t		version;
+	uint32_t		blocksize;		/* "optimal" block size for reads and writes */
+	uint32_t		arenabase;		/* base address of first arena */
 
 	/*
 	 * stored in the arena mapping table on disk
@@ -312,7 +312,7 @@ struct ArenaPart
  */
 struct CIBlock
 {
-	u32int		block;			/* blocks in the directory */
+	uint32_t		block;			/* blocks in the directory */
 	int		offset;			/* offsets of one clump in the data */
 	DBlock		*data;
 };
@@ -322,11 +322,11 @@ struct CIBlock
  */
 struct ATailStats
 {
-	u32int		clumps;		/* number of clumps */
-	u32int		cclumps;		/* number of compressed clumps */
-	u64int		used;
-	u64int		uncsize;
-	u8int		sealed;
+	uint32_t		clumps;		/* number of clumps */
+	uint32_t		cclumps;		/* number of compressed clumps */
+	uint64_t		used;
+	uint64_t		uncsize;
+	uint8_t		sealed;
 };
 
 /*
@@ -335,7 +335,7 @@ struct ATailStats
 struct AState
 {
 	Arena		*arena;
-	u64int		aa;			/* index address */
+	uint64_t		aa;			/* index address */
 	ATailStats		stats;
 };
 
@@ -367,9 +367,9 @@ struct Arena
 	QLock		lock;			/* lock for arena fields, writing to disk */
 	Part		*part;			/* partition in which arena lives */
 	int		blocksize;		/* size of block to read or write */
-	u64int		base;			/* base address on disk */
-	u64int		size;			/* total space in the arena */
-	u8int		score[VtScoreSize];	/* score of the entire sealed & summed arena */
+	uint64_t		base;			/* base address on disk */
+	uint64_t		size;			/* total space in the arena */
+	uint8_t		score[VtScoreSize];	/* score of the entire sealed & summed arena */
 
 	int		clumpmax;		/* ClumpInfos per block */
 	AState		mem;
@@ -378,13 +378,13 @@ struct Arena
 	/*
 	 * fields stored on disk
 	 */
-	u32int		version;
+	uint32_t		version;
 	char		name[ANameSize];	/* text label */
 	ATailStats		memstats;
 	ATailStats		diskstats;
-	u32int		ctime;			/* first time a block was written */
-	u32int		wtime;			/* last time a block was written */
-	u32int		clumpmagic;
+	uint32_t		ctime;			/* first time a block was written */
+	uint32_t		wtime;			/* last time a block was written */
+	uint32_t		clumpmagic;
 	
 	ArenaCIG	*cig;
 	int	ncig;
@@ -392,7 +392,7 @@ struct Arena
 
 struct ArenaCIG
 {
-	u64int	offset;  // from arena base
+	uint64_t	offset;  // from arena base
 };
 
 /*
@@ -400,11 +400,11 @@ struct ArenaCIG
  */
 struct ArenaHead
 {
-	u32int		version;
+	uint32_t		version;
 	char		name[ANameSize];
-	u32int		blocksize;
-	u64int		size;
-	u32int		clumpmagic;
+	uint32_t		blocksize;
+	uint64_t		size;
+	uint32_t		clumpmagic;
 };
 
 /*
@@ -414,10 +414,10 @@ struct ArenaHead
  */
 struct ClumpInfo
 {
-	u8int		type;
-	u16int		size;			/* size of disk data, not including header */
-	u16int		uncsize;		/* size of uncompressed data */
-	u8int		score[VtScoreSize];	/* score of the uncompressed data only */
+	uint8_t		type;
+	uint16_t		size;			/* size of disk data, not including header */
+	uint16_t		uncsize;		/* size of uncompressed data */
+	uint8_t		score[VtScoreSize];	/* score of the uncompressed data only */
 };
 
 /*
@@ -426,9 +426,9 @@ struct ClumpInfo
 struct Clump
 {
 	ClumpInfo	info;
-	u8int		encoding;
-	u32int		creator;		/* initial client which wrote the block */
-	u32int		time;			/* creation at gmt seconds since 1/1/1970 */
+	uint8_t		encoding;
+	uint32_t		creator;		/* initial client which wrote the block */
+	uint32_t		time;			/* creation at gmt seconds since 1/1/1970 */
 };
 
 /*
@@ -457,10 +457,10 @@ struct Clump
  */
 struct Index
 {
-	u32int		div;			/* divisor for mapping score to bucket */
-	u32int		buckets;		/* last bucket used in disk hash table */
-	u32int		blocksize;
-	u32int		tabsize;		/* max. bytes in index config */
+	uint32_t		div;			/* divisor for mapping score to bucket */
+	uint32_t		buckets;		/* last bucket used in disk hash table */
+	uint32_t		blocksize;
+	uint32_t		tabsize;		/* max. bytes in index config */
 
 	int		mapalloc;		/* first arena to check when adding a lump */
 	Arena		**arenas;		/* arenas in the mapping */
@@ -470,7 +470,7 @@ struct Index
 	/*
 	 * fields stored in config file 
 	 */
-	u32int		version;
+	uint32_t		version;
 	char		name[ANameSize];	/* text label */
 	int		nsects;
 	AMap		*smap;			/* mapping of buckets to index sections */
@@ -490,8 +490,8 @@ struct ISect
 	Part		*part;
 	int		blocklog;		/* log2(blocksize) */
 	int		buckmax;		/* max. entries in a index bucket */
-	u32int		tabbase;		/* base address of index config table on disk */
-	u32int		tabsize;		/* max. bytes in index config */
+	uint32_t		tabbase;		/* base address of index config table on disk */
+	uint32_t		tabsize;		/* max. bytes in index config */
 	Channel	*writechan;
 	Channel	*writedonechan;
 	void		*ig;		/* used by buildindex only */
@@ -500,15 +500,15 @@ struct ISect
 	/*
 	 * fields stored on disk
 	 */
-	u32int		version;
-	u32int		bucketmagic;
+	uint32_t		version;
+	uint32_t		bucketmagic;
 	char		name[ANameSize];	/* text label */
 	char		index[ANameSize];	/* index owning the section */
-	u32int		blocksize;		/* size of hash buckets in index */
-	u32int		blockbase;		/* address of start of on disk index table */
-	u32int		blocks;			/* total blocks on disk; some may be unused */
-	u32int		start;			/* first bucket in this section */
-	u32int		stop;			/* limit of buckets in this section */
+	uint32_t		blocksize;		/* size of hash buckets in index */
+	uint32_t		blockbase;		/* address of start of on disk index table */
+	uint32_t		blocks;			/* total blocks on disk; some may be unused */
+	uint32_t		start;			/* first bucket in this section */
+	uint32_t		stop;			/* limit of buckets in this section */
 };
 
 /*
@@ -516,10 +516,10 @@ struct ISect
  */
 struct IAddr
 {
-	u64int		addr;
-	u16int		size;			/* uncompressed size */
-	u8int		type;			/* type of block */
-	u8int		blocks;			/* arena io quanta for Clump + data */
+	uint64_t		addr;
+	uint16_t		size;			/* uncompressed size */
+	uint8_t		type;			/* type of block */
+	uint8_t		blocks;			/* arena io quanta for Clump + data */
 };
 
 /*
@@ -530,14 +530,14 @@ struct IAddr
 struct IEntry
 {
 	/* on disk data - 32 bytes*/
-	u8int	score[VtScoreSize];
+	uint8_t	score[VtScoreSize];
 	IAddr	ia;
 	
 	IEntry	*nexthash;
 	IEntry	*nextdirty;
 	IEntry	*next;
 	IEntry	*prev;
-	u8int	state;
+	uint8_t	state;
 };
 enum {
 	IEClean = 0,
@@ -550,9 +550,9 @@ enum {
  */
 struct IBucket
 {
-	u16int		n;			/* number of active indices */
-	u32int		buck;		/* used by buildindex/checkindex only */
-	u8int		*data;
+	uint16_t		n;			/* number of active indices */
+	uint32_t		buck;		/* used by buildindex/checkindex only */
+	uint8_t		*data;
 };
 
 /*
@@ -560,10 +560,10 @@ struct IBucket
  */
 struct ZBlock
 {
-	u32int		len;
-	u32int		_size;
-	u8int		*data;
-	u8int		*free;
+	uint32_t		len;
+	uint32_t		_size;
+	uint8_t		*data;
+	uint8_t		*free;
 };
 
 /*
@@ -573,7 +573,7 @@ struct IFile
 {
 	char		*name;				/* name of the file */
 	ZBlock		*b;				/* entire contents of file */
-	u32int		pos;				/* current position in the file */
+	uint32_t		pos;				/* current position in the file */
 };
 
 struct Statdesc
@@ -689,14 +689,14 @@ struct Statbin
 
 struct Graph
 {
-	long (*fn)(Stats*, Stats*, void*);
+	int32_t (*fn)(Stats*, Stats*, void*);
 	void *arg;
-	long t0;
-	long t1;
-	long min;
-	long max;
-	long wid;
-	long ht;
+	int32_t t0;
+	int32_t t1;
+	int32_t min;
+	int32_t max;
+	int32_t wid;
+	int32_t ht;
 	int fill;
 };
 
@@ -728,19 +728,19 @@ struct Bloom
 	int nhash;
 	uint32_t size;		/* bytes in tab */
 	uint32_t bitmask;		/* to produce bit index */
-	u8int *data;
+	uint8_t *data;
 	Part *part;
 	Channel *writechan;
 	Channel *writedonechan;
 };
 
 extern	Index		*mainindex;
-extern	u32int		maxblocksize;		/* max. block size used by any partition */
+extern	uint32_t		maxblocksize;		/* max. block size used by any partition */
 extern	int		paranoid;		/* should verify hashes on disk read */
 extern	int		queuewrites;		/* put all lump writes on a queue and finish later */
 extern	int		readonly;		/* only allowed to read the disk data */
 extern	Stats		stats;
-extern	u8int		zeroscore[VtScoreSize];
+extern	uint8_t		zeroscore[VtScoreSize];
 extern	int		compressblocks;
 extern	int		writestodevnull;	/* dangerous - for performance debugging */
 extern	int		collectstats;
@@ -761,7 +761,7 @@ extern	int	nstathist;
 extern	uint32_t	stattime;
 
 #ifndef PLAN9PORT
-#pragma varargck type "V" uchar*
+#pragma varargck type "V" unsigned char*
 #define ODIRECT 0
 #endif
 

+ 1 - 1
sys/src/cmd/venti/srv/findscore.c

@@ -81,7 +81,7 @@ threadmain(int argc, char *argv[])
 	ArenaPart *ap;
 	Part *part;
 	char *file;
-	u8int score[VtScoreSize];
+	uint8_t score[VtScoreSize];
 	int i, found;
 
 	ventifmtinstall();

+ 71 - 75
sys/src/cmd/venti/srv/fixarenas.c

@@ -26,16 +26,12 @@
 
 #define ROUNDUP(x,n)		(((x)+(n)-1)&~((n)-1))
 
-#pragma varargck type "z" uvlong
-#pragma varargck type "z" vlong
-#pragma varargck type "t" uint
-
 enum
 {
 	K = 1024,
 	M = 1024*1024,
 	G = 1024*1024*1024,
-	
+
 	Block = 4096,
 };
 
@@ -73,7 +69,7 @@ static int
 zfmt(Fmt *fmt)
 {
 	int64_t x;
-	
+
 	x = va_arg(fmt->args, int64_t);
 	if(x == 0)
 		return fmtstrcpy(fmt, "0");
@@ -94,7 +90,7 @@ tfmt(Fmt *fmt)
 {
 	uint t;
 	char buf[30];
-	
+
 	t = va_arg(fmt->args, uint);
 	strcpy(buf, ctime(t));
 	buf[28] = 0;
@@ -142,7 +138,7 @@ readdisk(uint8_t *buf, int64_t offset, int len)
 		memset(buf, 0xFB, len);
 		return buf;
 	}
-	
+
 	if(offset+len > partend){
 		memset(buf, 0xFB, len);
 		len = partend - offset;
@@ -150,7 +146,7 @@ readdisk(uint8_t *buf, int64_t offset, int len)
 
 	if(readpart(part, offset, buf, len) >= 0)
 		return buf;
-	
+
 	/*
 	 * The read failed.  Clear the buffer to nonsense, and
 	 * then try reading in smaller pieces.  If that fails,
@@ -200,7 +196,7 @@ void
 sbdebug(Shabuf *sb, char *file)
 {
 	int fd;
-	
+
 	if(sb->fd > 0){
 		close(sb->fd);
 		sb->fd = 0;
@@ -243,7 +239,7 @@ sbupdate(Shabuf *sb, uint8_t *p, int64_t offset, int len)
 		len -= x;
 	}
 	assert(sb->offset == offset);
-	
+
 	if(sb->fd > 0)
 		pwrite(sb->fd, p, len, offset - sb->r0);
 
@@ -252,7 +248,7 @@ sbupdate(Shabuf *sb, uint8_t *p, int64_t offset, int len)
 		sb->offset += len;
 		return;
 	}
-	
+
 	/* save state every 4M so we can roll back quickly */
 	o = offset - sb->r0;
 	while(len > 0){
@@ -274,7 +270,7 @@ sbupdate(Shabuf *sb, uint8_t *p, int64_t offset, int len)
 			}
 			sb->hist[x] = sb->state;
 		}
-	}		
+	}
 }
 
 void
@@ -282,7 +278,7 @@ sbdiskhash(Shabuf *sb, int64_t eoffset)
 {
 	static uint8_t dbuf[4*M];
 	int n;
-	
+
 	while(sb->offset < eoffset){
 		n = sizeof dbuf;
 		if(sb->offset+n > eoffset)
@@ -298,7 +294,7 @@ sbrollback(Shabuf *sb, int64_t offset)
 	int x;
 	int64_t o;
 	Dir d;
-	
+
 	if(!sb->rollback || !sb->r0){
 		print("cannot rollback sha\n");
 		return;
@@ -314,7 +310,7 @@ sbrollback(Shabuf *sb, int64_t offset)
 	sb->state = sb->hist[x];
 	sb->offset = sb->r0 + x*4*M;
 	assert(sb->offset <= offset);
-	
+
 	if(sb->fd > 0){
 		nulldir(&d);
 		d.length = sb->offset - sb->r0;
@@ -334,7 +330,7 @@ sbscore(Shabuf *sb, uint8_t *score)
 
 /*
  * If we're fixing arenas, then editing this memory edits the disk!
- * It will be written back out as new data is paged in. 
+ * It will be written back out as new data is paged in.
  */
 uint8_t buf[4*M];
 uint8_t sbuf[4*M];
@@ -350,7 +346,7 @@ pagein(int64_t offset, int len)
 		memset(buf, 0xFB, sizeof buf);
 		return buf;
 	}
-	
+
 	if(offset+len > partend){
 		memset(buf, 0xFB, sizeof buf);
 		len = partend - offset;
@@ -382,16 +378,16 @@ zerorange(int64_t offset, int len)
 	int64_t ooff;
 	int olen;
 	enum { MinBlock = 4*K, MaxBlock = 8*K };
-	
+
 	if(0)
 	if(bufoffset <= offset && offset+len <= bufoffset+buflen){
 		memset(buf+(offset-bufoffset), 0, len);
 		return;
 	}
-	
+
 	ooff = bufoffset;
 	olen = buflen;
-	
+
 	i = offset%MinBlock;
 	if(i+len < MaxBlock){
 		pagein(offset-i, (len+MinBlock-1)&~(MinBlock-1));
@@ -417,7 +413,7 @@ zerorange(int64_t offset, int len)
  * read/write integers
  *
 static void
-p16(uchar *p, u16int u)
+p16(unsigned char *p, uint16_t u)
 {
 	p[0] = (u>>8) & 0xFF;
 	p[1] = u & 0xFF;
@@ -447,7 +443,7 @@ u32(uint8_t *p)
 
 /*
 static void
-p64(uchar *p, u64int u)
+p64(unsigned char *p, uint64_t u)
 {
 	p32(p, u>>32);
 	p32(p, u);
@@ -464,7 +460,7 @@ static int
 vlongcmp(const void *va, const void *vb)
 {
 	int64_t a, b;
-	
+
 	a = *(int64_t*)va;
 	b = *(int64_t*)vb;
 	if(a < b)
@@ -533,7 +529,7 @@ Info tailinfo4[] = {
 	1,	"sealed",
 	0
 };
-	
+
 Info tailinfo4a[] = {
 	/* tailinfo 4 */
 	4,	"magic",
@@ -556,7 +552,7 @@ Info tailinfo4a[] = {
 	1,	"mem.sealed",
 	0
 };
-	
+
 Info tailinfo5[] = {
 	4,	"magic",
 	D|4,	"version",
@@ -595,12 +591,12 @@ Info tailinfo5a[] = {
 	1,	"mem.sealed",
 	0
 };
-	
+
 void
 showdiffs(uint8_t *want, uint8_t *have, int len, Info *info)
 {
 	int n;
-	
+
 	while(len > 0 && (n=info->len&N) > 0){
 		if(memcmp(have, want, n) != 0){
 			switch(info->len){
@@ -682,7 +678,7 @@ guessgeometry(void)
 	uint8_t *p, *ep, *sp;
 	uint64_t diff[100], head[20], tail[20];
 	uint64_t offset, bestdiff;
-	
+
 	ap.version = ArenaPartVersion;
 
 	if(arenasize == 0 || ap.blocksize == 0){
@@ -715,8 +711,8 @@ guessgeometry(void)
 		}
 		if(nhead < 3 && ntail < 3)
 			sysfatal("too few intact arenas: %d heads, %d tails", nhead, ntail);
-	
-		/* 
+
+		/*
 		 * Arena size is likely the most common
 		 * inter-head or inter-tail spacing.
 		 */
@@ -905,7 +901,7 @@ isclump(uint8_t *p, Clump *cl, uint32_t *pmagic)
 	uint8_t score[VtScoreSize], *bp;
 	Unwhack uw;
 	uint8_t ubuf[70*1024];
-	
+
 	bp = p;
 	magic = u32(p);
 	if(magic == 0)
@@ -954,7 +950,7 @@ isclump(uint8_t *p, Clump *cl, uint32_t *pmagic)
 		return 0;
 	}
 	p += cl->info.size;
-	
+
 	/* it all worked out in the end */
 	*pmagic = magic;
 	return p - bp;
@@ -987,7 +983,7 @@ int*
 ltreewalk(int *p, uint8_t *score)
 {
 	int i;
-	
+
 	for(;;){
 		if(*p == -1)
 			return p;
@@ -1005,7 +1001,7 @@ void
 addcibuf(ClumpInfo *ci, int64_t corrupt)
 {
 	Cit *cit;
-	
+
 	if(ncibuf == mcibuf){
 		mcibuf += 131072;
 		cibuf = vtrealloc(cibuf, mcibuf*sizeof cibuf[0]);
@@ -1024,7 +1020,7 @@ void
 addcicorrupt(int64_t len)
 {
 	static ClumpInfo zci;
-	
+
 	addcibuf(&zci, len);
 }
 
@@ -1066,7 +1062,7 @@ int
 sealedarena(uint8_t *p, int blocksize)
 {
 	int v, n;
-	
+
 	v = u32(p+4);
 	switch(v){
 	default:
@@ -1097,7 +1093,7 @@ int
 okayname(char *name, int n)
 {
 	char buf[20];
-	
+
 	if(nameok(name) < 0)
 		return 0;
 	sprint(buf, "%d", n);
@@ -1127,7 +1123,7 @@ loadci(int64_t offset, Arena *arena, int nci)
 	int i, j, per;
 	uint8_t *p, *sp;
 	ClumpInfo *bci, *ci;
-	
+
 	per = arena->blocksize/ClumpInfoSize;
 	bci = vtmalloc(nci*sizeof bci[0]);
 	ci = bci;
@@ -1151,7 +1147,7 @@ writeci(int64_t offset, Arena *arena, ClumpInfo *ci, int nci)
 {
 	int i, j, per;
 	uint8_t *p, *sp;
-	
+
 	per = arena->blocksize/ClumpInfoSize;
 	offset += arena->size - arena->blocksize;
 	p = sp = nil;
@@ -1192,8 +1188,8 @@ loadarenabasics(int64_t offset0, int anum, ArenaHead *head, Arena *arena)
 	
 	arena->blocksize = ap.blocksize;
 	head->blocksize = arena->blocksize;
-	
-	/* 
+
+	/*
 	 * Look for clump magic and name in head/tail blocks.
 	 * All the other info we will reconstruct just in case.
 	 */
@@ -1206,7 +1202,7 @@ loadarenabasics(int64_t offset0, int anum, ArenaHead *head, Arena *arena)
 			strcpy(head->name, ohead.name);
 	}
 
-	p = pagein(offset0+arena->size-arena->blocksize, 
+	p = pagein(offset0+arena->size-arena->blocksize,
 		arena->blocksize);
 	memset(&oarena, 0, sizeof oarena);
 	if(unpackarena(&oarena, p) >= 0){
@@ -1240,7 +1236,7 @@ print("old arena: sealed=%d\n", oarena.diskstats.sealed);
 	strcpy(lastbase, arena->name);
 	sprint(dname, "%d", anum);
 	lastbase[strlen(lastbase)-strlen(dname)] = 0;
-	
+
 	/* Was working in arena, now copy to head. */
 	head->version = arena->version;
 	memmove(head->name, arena->name, sizeof head->name);
@@ -1252,7 +1248,7 @@ void
 shahead(Shabuf *sb, int64_t offset0, ArenaHead *head)
 {
 	uint8_t headbuf[MaxDiskBlock];
-	
+
 	sb->offset = offset0;
 	memset(headbuf, 0, sizeof headbuf);
 	packarenahead(head, headbuf);
@@ -1263,7 +1259,7 @@ uint32_t
 newclumpmagic(int version)
 {
 	uint32_t m;
-	
+
 	if(version == ArenaVersion4)
 		return _ClumpMagic;
 	do{
@@ -1291,7 +1287,7 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 	ClumpInfo *bci, *ci, *eci, *xci;
 	Cit *bcit, *cit, *ecit;
 	Shabuf oldsha, newsha;
-	
+
 	/*
 	 * We expect to find an arena, with data, between offset
 	 * and offset+arenasize.  With any luck, the data starts at
@@ -1326,7 +1322,7 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 	loadarenabasics(offset0, anum, head, arena);
 
 	/* start the clump hunt */
-	
+
 	clumps = 0;
 	totalcorrupt = 0;
 	sealing = 1;
@@ -1447,7 +1443,7 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 				arena->diskstats.cclumps++;
 			arena->diskstats.uncsize += cl.info.uncsize;
 			arena->wtime = cl.time;
-			
+
 			/*
 			 * Move to next clump.
 			 */
@@ -1500,10 +1496,10 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 		sbupdate(&oldsha, dbuf, toffset, arena->blocksize);
 		sbscore(&oldsha, oldscore);
 	}
-	
+
 	/*
 	 * If we still don't know the clump magic, the arena
-	 * must be empty.  It still needs a value, so make 
+	 * must be empty.  It still needs a value, so make
 	 * something up.
 	 */
 	if(arena->version == 0)
@@ -1549,7 +1545,7 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 		v = offset0 + arena->size - arena->blocksize;
 		clumps = (v-lastclumpend)/arena->blocksize * ncib;
 	}
-	
+
 	if(clumps < minclumps)
 		print("cannot happen?\n");
 
@@ -1566,7 +1562,7 @@ guessarena(int64_t offset0, int anum, ArenaHead *head, Arena *arena,
 	eci = bci+clumps+1;
 	bcit = cibuf;
 	ecit = cibuf+ncibuf;
-	
+
 	smart = 0;	/* Somehow the smart code doesn't do corrupt clumps right. */
 Again:
 	nbad = 0;
@@ -1626,11 +1622,11 @@ Again:
 		if(clumpinfocmp(&cit->ci, ci) != 0){
 			if(verbose && (smart || verbose>1)){
 				print("clumpinfo %d\n", (int)(ci-bci));
-				print("\twant: %d %d %d %V\n", 
+				print("\twant: %d %d %d %V\n",
 					cit->ci.type, cit->ci.size,
 					cit->ci.uncsize, cit->ci.score);
-				print("\thave: %d %d %d %V\n", 
-					ci->type, ci->size, 
+				print("\thave: %d %d %d %V\n",
+					ci->type, ci->size,
 					ci->uncsize, ci->score);
 			}
 			*ci = cit->ci;
@@ -1645,7 +1641,7 @@ Again:
 		smart = 0;
 		goto Again;
 	}
-	
+
 	assert(ci <= eci);
 	arena->diskstats.clumps = ci-bci;
 	eoffset = writeci(offset0, arena, bci, ci-bci);
@@ -1673,7 +1669,7 @@ Nocib:
 	arena->memstats = arena->diskstats;
 	if(sealing && fix){
 		uint8_t tbuf[MaxDiskBlock];
-		
+
 		sbdiskhash(&newsha, toffset);
 		memset(tbuf, 0, sizeof tbuf);
 		packarena(arena, tbuf);
@@ -1688,7 +1684,7 @@ dumparena(int64_t offset, int anum, Arena *arena)
 	char buf[1000];
 	int64_t o, e;
 	int fd, n;
-	
+
 	snprint(buf, sizeof buf, "%s.%d", dumpbase, anum);
 	if((fd = create(buf, OWRITE, 0666)) < 0){
 		fprint(2, "create %s: %r\n", buf);
@@ -1715,7 +1711,7 @@ checkarena(int64_t offset, int anum)
 	ArenaHead head;
 	Info *fmt, *fmta;
 	int sz;
-	
+
 	print("# arena %d: offset %#llux\n", anum, offset);
 
 	if(offset >= partend){
@@ -1749,11 +1745,11 @@ checkarena(int64_t offset, int anum)
 	p = pagein(offset, arena.blocksize);
 	if(memcmp(dbuf, p, arena.blocksize) != 0){
 		print("on-disk arena header incorrect\n");
-		showdiffs(dbuf, p, arena.blocksize, 
+		showdiffs(dbuf, p, arena.blocksize,
 			arena.version==ArenaVersion4 ? headinfo4 : headinfo5);
 	}
 	memmove(p, dbuf, arena.blocksize);
-	
+
 	memset(dbuf, 0, sizeof dbuf);
 	packarena(&arena, dbuf);
 	if(arena.diskstats.sealed)
@@ -1793,14 +1789,14 @@ checkarena(int64_t offset, int anum)
 			print("\t   disk=%V\n", p+arena.blocksize-VtScoreSize);
 		}
 		if(fix && scorecmp(p+arena.blocksize-VtScoreSize, score) != 0){
-			print("%ssealing arena%s: %V\n", 
+			print("%ssealing arena%s: %V\n",
 				oarena.diskstats.sealed ? "re" : "",
-				scorecmp(oldscore, score) == 0 ? 
+				scorecmp(oldscore, score) == 0 ?
 					"" : " after changes", score);
 		}
 	}
 	memmove(p, dbuf, arena.blocksize);
-	
+
 	pageout();
 }
 
@@ -1812,7 +1808,7 @@ buildamap(void)
 	ArenaHead h;
 	AMapN *an;
 	AMap *m;
-	
+
 	an = vtmallocz(sizeof *an);
 	for(o=ap.arenabase; o<partend; o+=arenasize){
 		p = pagein(o, Block);
@@ -1824,7 +1820,7 @@ buildamap(void)
 			strcpy(m->name, h.name);
 		}
 	}
-	return an;	
+	return an;
 }
 
 void
@@ -1835,7 +1831,7 @@ checkmap(void)
 	int i, len;
 	AMapN *an;
 	Fmt fmt;
-	
+
 	an = buildamap();
 	fmtstrinit(&fmt);
 	fmtprint(&fmt, "%ud\n", an->n);
@@ -1849,7 +1845,7 @@ checkmap(void)
 			(int64_t)len, (int64_t)ap.tabsize);
 		len = ap.tabsize;
 	}
-	
+
 	if(ap.tabsize >= 4*M){	/* can't happen - max arenas is 2000 */
 		print("arena partition map *way* too long\n");
 		return;
@@ -1869,9 +1865,9 @@ void
 threadmain(int argc, char **argv)
 {
 	int mode;
-	
+
 	mode = OREAD;
-	readonly = 1;	
+	readonly = 1;
 	ARGBEGIN{
 	case 'U':
 		unseal = 1;
@@ -1899,22 +1895,22 @@ threadmain(int argc, char **argv)
 	default:
 		usage();
 	}ARGEND
-	
+
 	if(argc != 1 && argc != 2)
 		usage();
 
 	file = argv[0];
-	
+
 	ventifmtinstall();
 	fmtinstall('z', zfmt);
 	fmtinstall('t', tfmt);
 	quotefmtinstall();
-	
+
 	part = initpart(file, mode|ODIRECT);
 	if(part == nil)
 		sysfatal("can't open %s: %r", file);
 	partend = part->size;
-	
+
 	if(isonearena()){
 		checkarena(0, -1);
 		threadexitsall(nil);

+ 1 - 1
sys/src/cmd/venti/srv/fmtarenas.c

@@ -25,7 +25,7 @@ threadmain(int argc, char *argv[])
 	ArenaPart *ap;
 	Part *part;
 	Arena *arena;
-	u64int addr, limit, asize, apsize;
+	uint64_t addr, limit, asize, apsize;
 	char *file, *name, aname[ANameSize];
 	int i, n, blocksize, tabsize, zero;
 

+ 3 - 3
sys/src/cmd/venti/srv/fmtbloom.c

@@ -25,9 +25,9 @@ threadmain(int argc, char *argv[])
 {
 	Part *part;
 	char *file;
-	vlong bits, size, size2;
+	int64_t bits, size, size2;
 	int nhash;
-	vlong nblocks;
+	int64_t nblocks;
 	
 	ventifmtinstall();
 	statsinit();
@@ -77,7 +77,7 @@ threadmain(int argc, char *argv[])
 
 	if(size > MaxBloomSize){
 		fprint(2, "warning: not using entire %,lld bytes; using only %,lld bytes\n",
-			size, (vlong)MaxBloomSize);
+			size, (int64_t)MaxBloomSize);
 		size = MaxBloomSize;
 	}
 	if(size&(size-1)){

+ 2 - 2
sys/src/cmd/venti/srv/fmtindex.c

@@ -26,9 +26,9 @@ threadmain(int argc, char *argv[])
 	ArenaPart *ap;
 	Arena **arenas;
 	AMap *amap;
-	u64int addr;
+	uint64_t addr;
 	char *file;
-	u32int i, j, n, narenas;
+	uint32_t i, j, n, narenas;
 	int add;
 
 	ventifmtinstall();

+ 86 - 86
sys/src/cmd/venti/srv/fns.h

@@ -13,23 +13,23 @@
 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);
+ZBlock		*alloczblock(uint32_t size, int zeroed, uint alignment);
+Arena		*amapitoa(Index *index, uint64_t a, uint64_t *aa);
+Arena		*amapitoag(Index *index, uint64_t a, uint64_t *gstart, uint64_t *glimit, int *g);
+uint64_t		arenadirsize(Arena *arena, uint32_t clumps);
+int		arenatog(Arena *arena, uint64_t aa, uint64_t *gstart, uint64_t *glimit, int *g);
+void		arenaupdate(Arena *arena, uint32_t size, uint8_t *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	binstats(int32_t (*fn)(Stats *s0, Stats *s1, void*), void *arg, int32_t t0, int32_t t1, Statbin *bin, int nbin);
+int		bloominit(Bloom*, int64_t, unsigned char*);
+int		bucklook(uint8_t*, int, uint8_t*, int);
+uint32_t		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);
+uint32_t		clumpmagic(Arena *arena, uint64_t aa);
 uint		countbits(uint n);
 int		delarena(Arena *arena);
 void		delaykickicache(void);
@@ -38,7 +38,7 @@ void		delaykickroundproc(void*);
 void		dirtydblock(DBlock*, int);
 void		diskaccess(int);
 void		disksched(void);
-void		*emalloc(ulong);
+void		*emalloc(uint32_t);
 void		emptydcache(void);
 void		emptyicache(void);
 void		emptylumpcache(void);
@@ -60,11 +60,11 @@ 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);
+DBlock		*_getdblock(Part *part, uint64_t addr, int mode, int load);
+DBlock		*getdblock(Part *part, uint64_t addr, int mode);
+uint32_t		hashbits(uint8_t *score, int nbits);
 char		*hargstr(HConnect*, char*, char*);
-vlong	hargint(HConnect*, char*, vlong);
+int64_t	hargint(HConnect*, char*, int64_t);
 int		hdebug(HConnect*);
 int		hdisk(HConnect*);
 int		hnotfound(HConnect*);
@@ -73,78 +73,78 @@ int		hsethtml(HConnect*);
 int		hsettext(HConnect*);
 int		httpdinit(char *address, char *webroot);
 int		iaddrcmp(IAddr *ia1, IAddr *ia2);
-IEntry*	icachedirty(u32int, u32int, u64int);
+IEntry*	icachedirty(uint32_t, uint32_t, uint64_t);
 uint32_t	icachedirtyfrac(void);
 void		icacheclean(IEntry*);
-int		icachelookup(u8int *score, int type, IAddr *ia);
+int		icachelookup(uint8_t *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);
+int		ifileuint32_t(IFile *f, uint32_t *r);
+int		inbloomfilter(Bloom*, uint8_t*);
+int		indexsect(Index *ix, uint8_t *score);
+int		indexsect0(Index *ix, uint32_t buck);
+Arena		*initarena(Part *part, uint64_t base, uint64_t size, uint32_t blocksize);
 ArenaPart	*initarenapart(Part *part);
 int		initarenasum(void);
 void		initbloomfilter(Index*);
-void		initdcache(u32int mem);
-void		initicache(u32int mem);
+void		initdcache(uint32_t mem);
+void		initicache(uint32_t mem);
 void		initicachewrite(void);
-IEStream	*initiestream(Part *part, u64int off, u64int clumps, u32int size);
+IEStream	*initiestream(Part *part, uint64_t off, uint64_t clumps, uint32_t size);
 ISect		*initisect(Part *part);
 Index		*initindex(char *name, ISect **sects, int n);
-void		initlumpcache(u32int size, u32int nblocks);
+void		initlumpcache(uint32_t size, uint32_t 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);
+int		insertscore(uint8_t *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);
+ZBlock		*loadclump(Arena *arena, uint64_t aa, int blocks, Clump *cl, uint8_t *score, int verify);
+DBlock	*loadibucket(Index *index, uint8_t *score, ISect **is, uint32_t *buck, IBucket *ib);
+int		loadientry(Index *index, uint8_t *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);
+Lump		*lookuplump(uint8_t *score, int type);
+int		lookupscore(uint8_t *score, int type, IAddr *ia);
 int		maparenas(AMap *am, Arena **arenas, int n, char *what);
-void		markbloomfilter(Bloom*, u8int*);
+void		markbloomfilter(Bloom*, uint8_t*);
 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);
+Arena		*newarena(Part *part, uint32_t, char *name, uint64_t base, uint64_t size, uint32_t blocksize);
+ArenaPart	*newarenapart(Part *part, uint32_t blocksize, uint32_t tabsize);
+ISect		*newisect(Part *part, uint32_t vers, char *name, uint32_t blocksize, uint32_t tabsize);
 Index		*newindex(char *name, ISect **sects, int n);
-u32int		now(void);
-int		okamap(AMap *am, int n, u64int start, u64int stop, char *what);
+uint32_t		now(void);
+int		okamap(AMap *am, int n, uint64_t start, uint64_t 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		_packarena(Arena *arena, uint8_t *buf, int);
+int		packarena(Arena *arena, uint8_t *buf);
+int		packarenahead(ArenaHead *head, uint8_t *buf);
+int		packarenapart(ArenaPart *as, uint8_t *buf);
+void		packbloomhead(Bloom*, uint8_t*);
+int		packclump(Clump *c, uint8_t *buf, uint32_t);
+void		packclumpinfo(ClumpInfo *ci, uint8_t *buf);
+void		packibucket(IBucket *b, uint8_t *buf, uint32_t magic);
+void		packientry(IEntry *i, uint8_t *buf);
+int		packisect(ISect *is, uint8_t *buf);
+void		packmagic(uint32_t magic, uint8_t *buf);
+ZBlock		*packet2zblock(Packet *p, uint32_t 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		partblocksize(Part *part, uint32_t blocksize);
+int		partifile(IFile *f, Part *part, uint64_t start, uint32_t size);
 void		printarenapart(int fd, ArenaPart *ap);
 void		printarena(int fd, Arena *arena);
 void		printindex(int fd, Index *ix);
@@ -152,49 +152,49 @@ 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);
+uint32_t		readarena(Arena *arena, uint64_t aa, uint8_t *buf, int32_t n);
+int		readarenamap(AMapN *amn, Part *part, uint64_t base, uint32_t 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);
+Packet		*readlump(uint8_t *score, int type, uint32_t size, int *cached);
+int		readpart(Part *part, uint64_t addr, uint8_t *buf, uint32_t n);
 int		resetbloom(Bloom*);
 int		runconfig(char *config, Config*);
-int		scorecmp(u8int *, u8int *);
-void		scoremem(u8int *score, u8int *buf, int size);
+int		scorecmp(uint8_t *, uint8_t *);
+void		scoremem(uint8_t *score, uint8_t *buf, int size);
 void		setatailstate(AState*);
 void		seterr(int severity, char *fmt, ...);
-void		setstat(int, long);
+void		setstat(int, int32_t);
 void		settrace(char *type);
-u64int		sortrawientries(Index *ix, Part *tmp, u64int *tmpoff, Bloom *bloom);
+uint64_t		sortrawientries(Index *ix, Part *tmp, uint64_t *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		storeclump(Index *index, ZBlock *b, uint8_t *score, int type, uint32_t 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);
+int		strscore(char *s, uint8_t *score);
+int		struint32_t(char *s, uint32_t *r);
+int		struint64_t(char *s, uint64_t *r);
 void		sumarena(Arena *arena);
-int		syncarena(Arena *arena, u32int n, int zok, int fix);
+int		syncarena(Arena *arena, uint32_t 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);
+int		u64log2(uint64_t v);
+uint64_t		unittoull(char *s);
+int		unpackarena(Arena *arena, uint8_t *buf);
+int		unpackarenahead(ArenaHead *head, uint8_t *buf);
+int		unpackarenapart(ArenaPart *as, uint8_t *buf);
+int		unpackbloomhead(Bloom*, uint8_t*);
+int		unpackclump(Clump *c, uint8_t *buf, uint32_t);
+void		unpackclumpinfo(ClumpInfo *ci, uint8_t *buf);
+void		unpackibucket(IBucket *b, uint8_t *buf, uint32_t magic);
+void		unpackientry(IEntry *i, uint8_t *buf);
+int		unpackisect(ISect *is, uint8_t *buf);
+uint32_t		unpackmagic(uint8_t *buf);
 void		ventifmtinstall(void);
 void		vtloghdump(Hio*, VtLog*);
 void		vtloghlist(Hio*);
@@ -203,22 +203,22 @@ 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		wbarenamap(AMap *am, int n, Part *part, uint64_t base, uint64_t 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		whackblock(uint8_t *dst, uint8_t *src, int ssize);
+uint64_t		writeaclump(Arena *a, Clump *c, uint8_t *clbuf);
+uint32_t		writearena(Arena *arena, uint64_t aa, uint8_t *clbuf, uint32_t 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);
+uint64_t		writeiclump(Index *ix, Clump *c, uint8_t *clbuf);
+int		writelump(Packet *p, uint8_t *score, int type, uint32_t creator, uint ms);
+int		writepart(Part *part, uint64_t addr, uint8_t *buf, uint32_t n);
 int		writeqlump(Lump *u, Packet *p, int creator, uint ms);
-Packet		*zblock2packet(ZBlock *zb, u32int size);
+Packet		*zblock2packet(ZBlock *zb, uint32_t size);
 void		zeropart(Part *part, int blocksize);
 
 /*

+ 1 - 1
sys/src/cmd/venti/srv/graph.c

@@ -114,7 +114,7 @@ scalept(int val, int valmin, int valmax, int ptmin, int ptmax)
 		val = valmax;
 	if(valmax == valmin)
 		valmax++;
-	return ptmin + (vlong)(val-valmin)*(ptmax-ptmin)/(valmax-valmin);
+	return ptmin + (int64_t)(val-valmin)*(ptmax-ptmin)/(valmax-valmin);
 }
 
 Memimage*

+ 1 - 1
sys/src/cmd/venti/srv/hdisk.c

@@ -414,7 +414,7 @@ diskarenatoc(HConnect *c, Arena *arena)
 	return 0;
 }
 
-#define	U32GET(p)	((u32int)(((p)[0]<<24)|((p)[1]<<16)|((p)[2]<<8)|(p)[3]))
+#define	U32GET(p)	((uint32_t)(((p)[0]<<24)|((p)[1]<<16)|((p)[2]<<8)|(p)[3]))
 static int
 diskarenaclump(HConnect *c, Arena *arena, int64_t off, char *scorestr)
 {

+ 1 - 1
sys/src/cmd/venti/srv/hproc.c

@@ -11,7 +11,7 @@
 #include <bio.h>
 #include <mach.h>
 #include <ureg.h>
-#include "/sys/src/libthread/threadimpl.h"
+#include "../../../libthread/threadimpl.h"
 #include "dat.h"
 #include "fns.h"
 

+ 2 - 2
sys/src/cmd/venti/srv/icachewrite.c

@@ -46,8 +46,8 @@ initicachewrite(void)
 	initround(&iwrite.round, "icache", 120*60*1000);
 	ix = mainindex;
 	for(i=0; i<ix->nsects; i++){
-		ix->sects[i]->writechan = chancreate(sizeof(ulong), 1);
-		ix->sects[i]->writedonechan = chancreate(sizeof(ulong), 1);
+		ix->sects[i]->writechan = chancreate(sizeof(uint32_t), 1);
+		ix->sects[i]->writedonechan = chancreate(sizeof(uint32_t), 1);
 		vtproc(icachewriteproc, ix->sects[i]);
 	}
 	vtproc(icachewritecoord, nil);

+ 2 - 2
sys/src/cmd/venti/srv/ifile.c

@@ -147,12 +147,12 @@ ifilename(IFile *f, char *dst)
 }
 
 int
-ifileu32int(IFile *f, uint32_t *r)
+ifileuint32_t(IFile *f, uint32_t *r)
 {
 	char *s;
 
 	s = ifileline(f);
 	if(s == nil)
 		return -1;
-	return stru32int(s, r);
+	return struint32_t(s, r);
 }

+ 3 - 3
sys/src/cmd/venti/srv/index.c

@@ -171,7 +171,7 @@ wbindex(Index *ix)
 
 /*
  * index: IndexMagic '\n' version '\n' name '\n' blocksize '\n' [V2: bitblocks '\n'] sections arenas
- * version, blocksize: u32int
+ * version, blocksize: uint32_t
  * name: max. ANameSize string
  * sections, arenas: AMap
  */
@@ -204,7 +204,7 @@ parseindex(IFile *f, Index *ix)
 	/*
 	 * version
 	 */
-	if(ifileu32int(f, &v) < 0){
+	if(ifileuint32_t(f, &v) < 0){
 		seterr(ECorrupt, "syntax error: bad version number in %s", f->name);
 		return -1;
 	}
@@ -225,7 +225,7 @@ parseindex(IFile *f, Index *ix)
 	/*
 	 * block size
 	 */
-	if(ifileu32int(f, &v) < 0){
+	if(ifileuint32_t(f, &v) < 0){
 		seterr(ECorrupt, "syntax error: bad block size number in %s", f->name);
 		return -1;
 	}

+ 49 - 0
sys/src/cmd/venti/srv/libvs.json

@@ -0,0 +1,49 @@
+{
+	"Cflags": [
+	],
+	"Include": [
+		"/sys/src/lib.json"
+	],
+	"Install": "/sys/src/cmd/venti/srv/",
+	"Library": "libvs.a",
+	"Name": "libvs",
+	"SourceFiles": [
+		"arena.c",
+		"arenas.c",
+		"bloom.c",
+		"buildbuck.c",
+		"clump.c",
+		"config.c",
+		"conv.c",
+		"dcache.c",
+		"disksched.c",
+		"dump.c",
+		"graph.c",
+		"hdisk.c",
+		"hproc.c",
+		"httpd.c",
+		"icache.c",
+		"icachewrite.c",
+		"ifile.c",
+		"index.c",
+		"lump.c",
+		"lumpcache.c",
+		"lumpqueue.c",
+		"part.c",
+		"png.c",
+		"round.c",
+		"score.c",
+		"sortientry.c",
+		"stats.c",
+		"syncarena.c",
+		"syncindex0.c",
+		"trace.c",
+		"unwhack.c",
+		"utils.c",
+		"unittoull.c",
+		"whack.c",
+		"xml.c",
+		"zblock.c",
+		"zeropart.c"
+	]
+}

+ 0 - 101
sys/src/cmd/venti/srv/mkfile

@@ -1,101 +0,0 @@
-</$objtype/mkfile
-
-LIBOFILES=\
-	arena.$O\
-	arenas.$O\
-	bloom.$O\
-	buildbuck.$O\
-	clump.$O\
-	config.$O\
-	conv.$O\
-	dcache.$O\
-	disksched.$O\
-	dump.$O\
-	graph.$O\
-	hdisk.$O\
-	hproc.$O\
-	httpd.$O\
-	icache.$O\
-	icachewrite.$O\
-	ifile.$O\
-	index.$O\
-	lump.$O\
-	lumpcache.$O\
-	lumpqueue.$O\
-	part.$O\
-	png.$O\
-	round.$O\
-	score.$O\
-	sortientry.$O\
-	stats.$O\
-	syncarena.$O\
-	syncindex0.$O\
-	trace.$O\
-	unwhack.$O\
-	utils.$O\
-	unittoull.$O\
-	whack.$O\
-	xml.$O\
-	zblock.$O\
-	zeropart.$O\
-
-SLIB=libvs.a$O
-
-LIB=$SLIB # /$objtype/lib/libventi.a
-
-HFILES=	dat.h\
-	fns.h\
-	stdinc.h\
-	/sys/include/venti.h\
-	/sys/include/httpd.h\
-
-TARG=\
-	venti\
-	buildindex\
-	checkarenas\
-	checkindex\
-	clumpstats\
-	conf\
-	findscore\
-	fixarenas\
-	fmtarenas\
-	fmtbloom\
-	fmtindex\
-	fmtisect\
-	mirrorarenas\
-	printarena\
-	printarenapart\
-	rdarena\
-	syncindex\
-	verifyarena\
-	wrarena\
-
-OFILES=
-
-BIN=/$objtype/bin/venti
-
-it:V: $O.venti
-
-CLEANFILES=$CLEANFILES $SLIB
-
-</sys/src/cmd/mkmany
-
-CFLAGS=$CFLAGS -I.
-
-$SLIB: $LIBOFILES
-	ar rvc $SLIB $LIBOFILES
-
-# xml.c:D:	mkxml dat.h
-# 	./mkxml dat.h > xml.c
-
-acid:D: lumpcache.acid
-	cat $prereq >$target
-
-$O.conf:D: conf.rc
-	{
-		echo '#!/bin/rc'
-		echo '# THIS FILE IS AUTOMATICALLY GENERATED'
-		echo '# FROM /sys/src/cmd/venti/conf.rc.  DO NOT EDIT.'
-		echo 
-		sed 1d conf.rc
-	} >$target && chmod +x $target

+ 1 - 3
sys/src/cmd/venti/srv/part.c

@@ -20,7 +20,7 @@ strtoullsuf(char *p, char **pp, int rad, uint64_t *u)
 {
 	uint64_t v;
 
-	if(!isdigit((uchar)*p))
+	if(!isdigit((unsigned char)*p))
 		return -1;
 	v = strtoull(p, &p, rad);
 	switch(*p){
@@ -177,8 +177,6 @@ enum {
 	Maxxfer = 64*1024,	/* for NCR SCSI controllers; was 128K */
 };
 
-static int reopen(Part*);
-
 int
 rwpart(Part *part, int isread, uint64_t offset0, uint8_t *buf0,
        uint32_t count0)

+ 3 - 3
sys/src/cmd/venti/srv/printarena.c

@@ -75,9 +75,9 @@ threadmain(int argc, char *argv[])
 {
 	char *file;
 	Arena *arena;
-	u64int offset, aoffset;
+	uint64_t offset, aoffset;
 	Part *part;
-	static uchar buf[8192];
+	static unsigned char buf[8192];
 	ArenaHead head;
 
 	readonly = 1;	/* for part.c */
@@ -91,7 +91,7 @@ threadmain(int argc, char *argv[])
 		break;
 	}ARGEND
 
-	offset = ~(u64int)0;
+	offset = ~(uint64_t)0;
 	switch(argc) {
 	default:
 		usage();

+ 2 - 54
sys/src/cmd/venti/srv/printarenapart.c

@@ -20,64 +20,12 @@ usage(void)
 	threadexitsall("usage");
 }
 
-static void
-rdarena(Arena *arena, uint64_t offset)
-{
-	uint64_t a, aa, e;
-	uint32_t magic;
-	Clump cl;
-	uint8_t score[VtScoreSize];
-	ZBlock *lump;
-
-	printarena(2, arena);
-
-	a = arena->base;
-	e = arena->base + arena->size;
-	if(offset != ~(uint64_t)0) {
-		if(offset >= e-a)
-			sysfatal("bad offset %llud >= %llud",
-				offset, e-a);
-		aa = offset;
-	} else
-		aa = 0;
-
-	for(; aa < e; aa += ClumpSize+cl.info.size) {
-		magic = clumpmagic(arena, aa);
-		if(magic == ClumpFreeMagic)
-			break;
-		if(magic != arena->clumpmagic) {
-			fprint(2, "illegal clump magic number %#8.8ux offset %llud\n",
-				magic, aa);
-			break;
-		}
-		lump = loadclump(arena, aa, 0, &cl, score, 0);
-		if(lump == nil) {
-			fprint(2, "clump %llud failed to read: %r\n", aa);
-			break;
-		}
-		if(cl.info.type != VtCorruptType) {
-			scoremem(score, lump->data, cl.info.uncsize);
-			if(scorecmp(cl.info.score, score) != 0) {
-				fprint(2, "clump %llud has mismatched score\n", aa);
-				break;
-			}
-			if(vttypevalid(cl.info.type) < 0) {
-				fprint(2, "clump %llud has bad type %d\n", aa, cl.info.type);
-				break;
-			}
-		}
-		print("%22llud %V %3d %5d\n", aa, score, cl.info.type, cl.info.uncsize);
-		freezblock(lump);
-	}
-	print("end offset %llud\n", aa);
-}
-
 void
 threadmain(int argc, char *argv[])
 {
 	char *file, *p, *name;
 	char *table;
-	u64int offset;
+	uint64_t offset;
 	Part *part;
 	ArenaPart ap;
 	ArenaHead head;
@@ -116,7 +64,7 @@ threadmain(int argc, char *argv[])
 	ap.tabsize = ap.arenabase - ap.tabbase;
 
 	table = malloc(ap.tabsize+1);
-	if(readpart(part, ap.tabbase, (uchar*)table, ap.tabsize) < 0)
+	if(readpart(part, ap.tabbase, (unsigned char*)table, ap.tabsize) < 0)
 		sysfatal("read %s: %r", file);
 	table[ap.tabsize] = 0;
 

+ 1 - 1
sys/src/cmd/venti/srv/printarenas.c

@@ -87,7 +87,7 @@ threadmain(int argc, char *argv[])
 {
 	int i;
 	Index *ix;
-	u32int bcmem;
+	uint32_t bcmem;
 
 	bcmem = 0;
 	ARGBEGIN{

+ 1 - 1
sys/src/cmd/venti/srv/printindex.c

@@ -73,7 +73,7 @@ threadmain(int argc, char *argv[])
 {
 	int i;
 	Index *ix;
-	u32int bcmem;
+	uint32_t bcmem;
 
 	bcmem = 0;
 	ARGBEGIN{

+ 1 - 1
sys/src/cmd/venti/srv/printmap.c

@@ -23,7 +23,7 @@ Config conf;
 void
 threadmain(int argc, char *argv[])
 {
-	u32int bcmem;
+	uint32_t bcmem;
 	int fix;
 
 	fix = 0;

+ 1 - 1
sys/src/cmd/venti/srv/reseal.c

@@ -235,7 +235,7 @@ threadmain(int argc, char *argv[])
 {
 	int i, nline;
 	char *p, *q, *table, *f[10], line[256];
-	vlong start, stop;
+	int64_t start, stop;
 	ArenaPart ap;
 	Part *part;
 	

+ 44 - 0
sys/src/cmd/venti/srv/srv.json

@@ -0,0 +1,44 @@
+{
+	"Include": [
+		"/sys/src/cmd/cmd.json"
+	],
+	"Install": "/$ARCH/bin/venti/",
+	"Name": "Srv",
+	"Oflags": [
+		"libvs.a"
+	],
+	"Post": [
+		"chmod +x conf",
+		"mv conf $HARVEY/amd64/bin/venti/"
+	],
+	"Pre": [
+		"echo '#!/bin/rc' \u003e\u003e conf",
+		"echo '# THIS FILE IS AUTOMATICALLY GENERATED' \u003e\u003e conf",
+		"echo '# FROM /sys/src/cmd/venti/conf.rc.  DO NOT EDIT.' \u003e\u003e conf",
+		"echo \u003e\u003e conf",
+		"sed 1d conf.rc \u003e\u003e conf"
+	],
+	"Projects": [
+		"libvs.json"
+	],
+	"SourceFilesCmd": [
+		"venti.c",
+		"buildindex.c",
+		"checkarenas.c",
+		"checkindex.c",
+		"clumpstats.c",
+		"findscore.c",
+		"fixarenas.c",
+		"fmtarenas.c",
+		"fmtbloom.c",
+		"fmtindex.c",
+		"fmtisect.c",
+		"mirrorarenas.c",
+		"printarena.c",
+		"printarenapart.c",
+		"rdarena.c",
+		"syncindex.c",
+		"verifyarena.c",
+		"wrarena.c"
+	]
+}

+ 1 - 1
sys/src/cmd/venti/srv/syncindex.c

@@ -24,7 +24,7 @@ Config conf;
 void
 threadmain(int argc, char *argv[])
 {
-	u32int bcmem, icmem;
+	uint32_t bcmem, icmem;
 
 	bcmem = 0;
 	icmem = 0;

+ 2 - 2
sys/src/cmd/venti/srv/utils.c

@@ -40,7 +40,7 @@ nameok(char *name)
 }
 
 int
-stru32int(char *s, uint32_t *r)
+struint32_t(char *s, uint32_t *r)
 {
 	char *t;
 	uint32_t n, nn, m;
@@ -64,7 +64,7 @@ stru32int(char *s, uint32_t *r)
 }
 
 int
-stru64int(char *s, uint64_t *r)
+struint64_t(char *s, uint64_t *r)
 {
 	char *t;
 	uint64_t n, nn, m;

+ 1 - 1
sys/src/cmd/venti/srv/venti.c

@@ -168,7 +168,7 @@ void
 threadmain(int argc, char *argv[])
 {
 	char *configfile, *haddr, *vaddr, *webroot;
-	u32int mem, icmem, bcmem, minbcmem, mempcnt, stfree;
+	uint32_t mem, icmem, bcmem, minbcmem, mempcnt, stfree;
 	Allocs allocs;
 	Config config;
 

+ 2 - 2
sys/src/cmd/venti/srv/verifyarena.c

@@ -183,7 +183,7 @@ threadmain(int argc, char *argv[])
 {
 	int i, nline;
 	char *p, *q, *table, *f[10], line[256];
-	vlong start, stop;
+	int64_t start, stop;
 	ArenaPart ap;
 	Part *part;
 
@@ -226,7 +226,7 @@ threadmain(int argc, char *argv[])
 	ap.tabbase = (PartBlank+HeadSize+ap.blocksize-1)&~(ap.blocksize-1);
 	ap.tabsize = ap.arenabase - ap.tabbase;
 	table = malloc(ap.tabsize+1);
-	if(preadblock((uchar*)table, ap.tabsize, ap.tabbase) < 0)
+	if(preadblock((unsigned char*)table, ap.tabsize, ap.tabbase) < 0)
 		sysfatal("reading arena part directory: %r");
 	table[ap.tabsize] = 0;
 	

+ 1 - 1
sys/src/cmd/venti/srv/whack.c

@@ -136,7 +136,7 @@ whackmatch(Whack *b, uint8_t **ss, uint8_t *esrc, uint32_t h, uint32_t now)
  * and might be faster on some machines
  */
 /*
-#define hashit(c)	((((ulong)(c) * 0x6b43a9) >> (24 - HashLog)) & HashMask)
+#define hashit(c)	((((uint32_t)(c) * 0x6b43a9) >> (24 - HashLog)) & HashMask)
 */
 #define hashit(c)	(((((uint32_t)(c) & 0xffffff) * 0x6b43a9b5) >> (32 - HashLog)) & HashMask)
 

+ 7 - 7
sys/src/cmd/venti/srv/whack.h

@@ -30,10 +30,10 @@ enum
 
 struct Whack
 {
-	ushort		begin;			/* time of first byte in hash */
-	ushort		hash[HashSize];
-	ushort		next[WhackMaxOff];
-	uchar		*data;
+	uint16_t		begin;			/* time of first byte in hash */
+	uint16_t		hash[HashSize];
+	uint16_t		next[WhackMaxOff];
+	unsigned char		*data;
 };
 
 struct Unwhack
@@ -43,8 +43,8 @@ struct Unwhack
 
 void	whackinit(Whack*, int level);
 void	unwhackinit(Unwhack*);
-int	whack(Whack*, uchar *dst, uchar *src, int nsrc,
+int	whack(Whack*, unsigned char *dst, unsigned char *src, int nsrc,
 		 uint32_t stats[WhackStats]);
-int	unwhack(Unwhack*, uchar *dst, int ndst, uchar *src, int nsrc);
+int	unwhack(Unwhack*, unsigned char *dst, int ndst, unsigned char *src, int nsrc);
 
-int	whackblock(uchar *dst, uchar *src, int ssize);
+int	whackblock(unsigned char *dst, unsigned char *src, int ssize);

+ 3 - 3
sys/src/cmd/venti/srv/wrarena.c

@@ -140,9 +140,9 @@ threadmain(int argc, char *argv[])
 	int i;
 	char *file;
 	Arena *arena;
-	u64int offset, aoffset;
+	uint64_t offset, aoffset;
 	Part *part;
-	uchar buf[8192];
+	unsigned char buf[8192];
 	ArenaHead head;
 	ZClump zerocl;
 
@@ -172,7 +172,7 @@ threadmain(int argc, char *argv[])
 		break;
 	}ARGEND
 
-	offset = ~(u64int)0;
+	offset = ~(uint64_t)0;
 	switch(argc) {
 	default:
 		usage();

+ 3 - 3
sys/src/cmd/venti/srv/xml.h

@@ -12,9 +12,9 @@ void	xmlarena(Hio *hout, Arena *v, char *tag, int indent);
 void	xmlindex(Hio *hout, Index *v, char *tag, int indent);
 
 void	xmlaname(Hio *hout, char *v, char *tag);
-void	xmlscore(Hio *hout, u8int *v, char *tag);
+void	xmlscore(Hio *hout, uint8_t *v, char *tag);
 void	xmlsealed(Hio *hout, int v, char *tag);
-void	xmlu32int(Hio *hout, u32int v, char *tag);
-void	xmlu64int(Hio *hout, u64int v, char *tag);
+void	xmlu32int(Hio *hout, uint32_t v, char *tag);
+void	xmlu64int(Hio *hout, uint64_t v, char *tag);
 
 void	xmlindent(Hio *hout, int indent);

+ 22 - 0
sys/src/cmd/venti/venti.json

@@ -0,0 +1,22 @@
+{
+	"Include": [
+		"../cmd.json"
+	],
+	"Install": "/$ARCH/bin/venti",
+	"Name": "Venti",
+	"Projects": [
+		"srv/srv.json"
+	],
+	"SourceFilesCmd": [
+		"copy.c",
+		"read.c",
+		"ro.c",
+		"sync.c",
+		"write.c",
+		"devnull.c",
+		"mkroot.c",
+		"randtest.c",
+		"readlist.c",
+		"root.c"
+	]
+}

+ 1 - 1
sys/src/cmd/venti/write.c

@@ -25,7 +25,7 @@ threadmain(int argc, char *argv[])
 {
 	char *host;
 	int dotrunc, n, type;
-	uchar *p, score[VtScoreSize];
+	unsigned char *p, score[VtScoreSize];
 	VtConn *z;
 
 	fmtinstall('F', vtfcallfmt);