~kris/9p

9hist

d722fb5de0b9bed5184d6f62d2bdbec844eeaa45 — David du Colombier 28 years ago 73eb98d
Plan 9 from Bell Labs 1998-08-25
M ip/devip.c => ip/devip.c +1 -1
@@ 546,7 546,7 @@ ipread(Chan *ch, void *a, long n, vlong off)
		return netlogread(f, a, offset, n);
	case Qctl:
		buf = smalloc(16);
		sprint(buf, "%d", CONV(ch->qid));
		sprint(buf, "%lud", CONV(ch->qid));
		rv = readstr(offset, p, n, buf);
		free(buf);
		return rv;

M ip/dial.c => ip/dial.c +1 -1
@@ 70,7 70,7 @@ call(char *clone, char *dest, DS *ds)
	name[n] = 0;
	for(p = name; *p == ' '; p++)
		;
	sprint(name, "%d", strtoul(p, 0, 0));
	sprint(name, "%lud", strtoul(p, 0, 0));
	p = strrchr(clone, '/');
	*p = 0;
	if(ds->dir)

M ip/gre.c => ip/gre.c +1 -1
@@ 228,7 228,7 @@ grestats(Proto *gre, char *buf, int len)

	gpriv = gre->priv;

	return snprint(buf, len, "gre: len %d\n", gpriv->lenerr);
	return snprint(buf, len, "gre: len %lud\n", gpriv->lenerr);
}

void

M ip/icmp.c => ip/icmp.c +1 -1
@@ 415,7 415,7 @@ icmpstats(Proto *icmp, char *buf, int len)

	ipriv = icmp->priv;

	return snprint(buf,len,"%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d",
	return snprint(buf,len,"%lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud",
			ipriv->istats.icmpInMsgs,
			ipriv->istats.icmpInErrors,
			ipriv->in[Unreachable],

M ip/il.c => ip/il.c +3 -3
@@ 201,7 201,7 @@ ilstate(Conv *c, char *state, int n)
	Ilcb *ic;

	ic = (Ilcb*)(c->ptcl);
	return snprint(state, n, "%s del %5.5d Br %5.5d md %5.5d una %5.5d rex %5.5d max %5.5d",
	return snprint(state, n, "%s del %5.5d Br %5.5d md %5.5d una %5.5lud rex %5.5d max %5.5d",
		ilstates[ic->state],
		ic->delay>>LogAGain, ic->rate>>LogAGain, ic->mdev>>LogDGain,
		ic->unackeduchars, ic->rexmit, ic->maxrtt);


@@ 355,9 355,9 @@ ilxstats(Proto *il, char *buf, int len)
	ipriv = il->priv;

	n = snprint(buf, len,
		"il: csum %d hlen %d len %d order %d rexmit %d",
		"il: csum %lud hlen %lud len %lud order %lud rexmit %lud",
		ipriv->csumerr, ipriv->hlenerr, ipriv->lenerr, ipriv->order, ipriv->rexmit);
	n += snprint(buf+n, len-n, " dupp %d dupb %d\n",
	n += snprint(buf+n, len-n, " dupp %lud dupb %lud\n",
		ipriv->dup, ipriv->dupb);
	return n;
}

M ip/ip.c => ip/ip.c +2 -2
@@ 421,8 421,8 @@ ipstats(Fs *f, char *buf, int len)

	ip = f->ip;
	ip->istats.ipDefaultTTL = MAXTTL;
	return snprint(buf, len, "%d %d %d %d %d %d %d %d %d %d "
				 "%d %d %d %d %d %d %d %d %d",
	return snprint(buf, len, "%lud %lud %lud %lud %lud %lud %lud %lud %lud %lud "
				 "%lud %lud %lud %lud %lud %lud %lud %lud %lud",
		ip->istats.ipForwarding, ip->istats.ipDefaultTTL,
		ip->istats.ipInReceives, ip->istats.ipInHdrErrors,
		ip->istats.ipInAddrErrors, ip->istats.ipForwDatagrams,

M ip/ipifc.c => ip/ipifc.c +1 -1
@@ 213,7 213,7 @@ ipifcstate(Conv *c, char *state, int n)
	rlock(ifc);
	for(lifc = ifc->lifc; lifc && n > m; lifc = lifc->next)
		m += snprint(state+m, n - m,
			" %-20.20I %-20.20M %-20.20I %-7d %-7d %-7d %-7d\n",
			" %-20.20I %-20.20M %-20.20I %-7lud %-7lud %-7lud %-7lud\n",
				lifc->local, lifc->mask, lifc->remote,
				ifc->in, ifc->out, ifc->inerr, ifc->outerr);
	runlock(ifc);

M ip/rudp.c => ip/rudp.c +11 -11
@@ 207,7 207,7 @@ rudpstate(Conv *c, char *state, int n)
	ucb = (Rudpcb*)c->ptcl;
	qlock(ucb);
	for(r = ucb->r; r; r = r->next)
		m += snprint(state+m, n-m, " %I/%d", r->addr, UNACKED(r));
		m += snprint(state+m, n-m, " %I/%ld", r->addr, UNACKED(r));
	qunlock(ucb);
	return m;
}


@@ 385,8 385,8 @@ rudpkick(Conv *c, int)

	upriv->ustats.rudpOutDatagrams++;

	DPRINT("sent: %d/%d, %d/%d, r->sndgen = %d\n", 
		r->sndseq, r->sndgen, r->rcvseq, r->rcvgen, r->sndgen);
	DPRINT("sent: %lud/%lud, %lud/%lud\n", 
		r->sndseq, r->sndgen, r->rcvseq, r->rcvgen);

	ipoput(f, bp, 0, c->ttl);



@@ 611,7 611,7 @@ rudpstats(Proto *rudp, char *buf, int len)
	Rudppriv *upriv;

	upriv = rudp->priv;
	return snprint(buf, len, "%d %d %d %d %d %d\n",
	return snprint(buf, len, "%lud %lud %lud %lud %lud %lud\n",
		upriv->ustats.rudpInDatagrams,
		upriv->ustats.rudpNoPorts,
		upriv->ustats.rudpInErrors,


@@ 730,7 730,7 @@ relstate(Rudpcb *ucb, uchar *addr, ushort port, char *from)
	if(r == nil){
		if(generation == 0)
			generation = rand();
		DPRINT("from %s new state %d for %I!%d\n", 
		DPRINT("from %s new state %lud for %I!%ud\n", 
		        from, generation, addr, port);
		r = smalloc(sizeof(Reliable));
		*l = r;


@@ 779,7 779,7 @@ reliput(Conv *c, Block *bp, uchar *addr, ushort port)
	r = relstate(ucb, addr, port, "input");
	

	DPRINT("rcvd %d/%d, %d/%d, r->sndgen = %d\n", 
	DPRINT("rcvd %lud/%lud, %lud/%lud, r->sndgen = %lud\n", 
		seq, sgen, ack, agen, r->sndgen);

	/* dequeue acked packets */


@@ 788,7 788,7 @@ reliput(Conv *c, Block *bp, uchar *addr, ushort port)
		while(r->unacked != nil && INSEQ(ack, r->ackrcvd, r->sndseq)){
			nbp = r->unacked;
			r->unacked = nbp->list;
			DPRINT("%d/%d acked, r->sndgen = %d\n", 
			DPRINT("%lud/%lud acked, r->sndgen = %lud\n", 
			       ack, agen, r->sndgen);
			freeb(nbp);
			r->ackrcvd = NEXTSEQ(r->ackrcvd);


@@ 820,7 820,7 @@ reliput(Conv *c, Block *bp, uchar *addr, ushort port)

		/* new connection */
		if(r->rcvgen != 0){
			DPRINT("new con r->rcvgen = %d, sgen = %d\n", r->rcvgen, sgen);
			DPRINT("new con r->rcvgen = %lud, sgen = %lud\n", r->rcvgen, sgen);
			relhangup(c, r);
		}
		r->rcvgen = sgen;


@@ 839,7 839,7 @@ reliput(Conv *c, Block *bp, uchar *addr, ushort port)
	/* refuse out of order delivery */
	if(seq != NEXTSEQ(r->rcvseq)){
		upriv->orders++;
		DPRINT("out of sequence %d not %d\n", seq, NEXTSEQ(r->rcvseq));
		DPRINT("out of sequence %lud not %lud\n", seq, NEXTSEQ(r->rcvseq));
		return -1;
	}
	r->rcvseq = seq;


@@ 891,7 891,7 @@ relsendack(Conv *c, Reliable *r)
	uh->udpcksum[1] = 0;
	hnputs(uh->udpcksum, ptclcsum(bp, UDP_IPHDR, UDP_RHDRSIZE));

	DPRINT("sendack: %d/%d, %d/%d\n", 0, r->sndgen, r->rcvseq, r->rcvgen);
	DPRINT("sendack: %lud/%lud, %lud/%lud\n", 0L, r->sndgen, r->rcvseq, r->rcvgen);
	ipoput(f, bp, 0, c->ttl);
}



@@ 943,6 943,6 @@ relrexmit(Conv *c, Reliable *r)

	upriv->rxmits++;
	np = copyblock(r->unacked, blocklen(r->unacked));
	DPRINT("rxmit r->ackrvcd+1 = %d\n", r->ackrcvd+1);
	DPRINT("rxmit r->ackrvcd+1 = %lud\n", r->ackrcvd+1);
	ipoput(f, np, 0, c->ttl);
}

M ip/tcp.c => ip/tcp.c +1 -1
@@ 1980,7 1980,7 @@ tcpstats(Proto *tcp, char *buf, int len)



	return snprint(buf, len, "%d %d %d %d %d %d %d %d %d %d %d %d %d %d",
	return snprint(buf, len, "%lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud %lud",
		tpriv->tstats.tcpRtoAlgorithm,
		tpriv->tstats.tcpRtoMin,
		tpriv->tstats.tcpRtoMax,

M ip/udp.c => ip/udp.c +1 -1
@@ 422,7 422,7 @@ udpstats(Proto *udp, char *buf, int len)
	Udppriv *upriv;

	upriv = udp->priv;
	return snprint(buf, len, "%d %d %d %d",
	return snprint(buf, len, "%lud %lud %lud %lud",
		upriv->ustats.udpInDatagrams,
		upriv->ustats.udpNoPorts,
		upriv->ustats.udpInErrors,

M pc/apic.c => pc/apic.c +1 -1
@@ 237,7 237,7 @@ lapicerror(Ureg*, void*)
	case 0x52C:				/* stepping cC0 */
		return;
	}
	print("cpu%d: lapicerror: 0x%8.8luX\n", m->machno, esr);
	print("cpu%d: lapicerror: 0x%8.8uX\n", m->machno, esr);
}

void

M pc/archgeneric.c => pc/archgeneric.c +1 -1
@@ 110,7 110,7 @@ cpuidprint(void)
	i = sprint(buf, "cpu%d: %dMHz ", m->machno, m->cpumhz);
	if(m->cpuidid[0])
		i += sprint(buf+i, "%s ", m->cpuidid);
	sprint(buf+i, "%s (cpuid: AX 0x%4.4luX DX 0x%4.4luX)\n",
	sprint(buf+i, "%s (cpuid: AX 0x%4.4uX DX 0x%4.4uX)\n",
		m->cpuidtype, m->cpuidax, m->cpuiddx);
	print(buf);
}

M pc/dat.h => pc/dat.h +1 -1
@@ 174,7 174,7 @@ struct Mach
	int	flushmmu;		/* make current proc flush it's mmu state */

	ulong	spuriousintr;
	ulong	lastintr;
	int	lastintr;

	int	loopconst;


M pc/devastar.c => pc/devastar.c +11 -11
@@ 318,7 318,7 @@ setpage(Astar *a, ulong offset)
	int i;

	if(a->pci){
		print("#G%d: setpage caller pc %uX\n", a->id, getcallerpc(a));
		print("#G%d: setpage caller pc %luX\n", a->id, getcallerpc(a));
		return;
	}



@@ 495,7 495,7 @@ astarreset(void)
				inb(a->port+ISAstat1), inb(a->port+ISAstat2));
		}

		print("#G%d: %s port 0x%luX addr 0x%luX irq %d\n",
		print("#G%d: %s port 0x%luX addr 0x%luX irq %lud\n",
			a->id, a->type, a->port, a->addr, a->irq);
		nastar++;
	}


@@ 545,7 545,7 @@ astarsetup(Astar *a)

	/* check interrupt level */
	if(isairqcode[a->irq] == -1){
		print("#G%d: bad irq %d\n", a->id, a->irq);
		print("#G%d: bad irq %lud\n", a->id, a->irq);
		return -1;
	}



@@ 739,7 739,7 @@ bctlread(Astar *a, void *buf, long n, ulong offset)
	char s[128];

	if(a->pci)
		sprint(s, "range %uX remap %uX region %uX mailbox %uX doorbell0 %uX doorbell1 %uX control %uX command %uX",
		sprint(s, "range %luX remap %luX region %luX mailbox %luX doorbell0 %luX doorbell1 %luX control %luX command %luX",
			inl(a->port+PCIrange),
			inl(a->port+PCIremap),
			inl(a->port+PCIregion),


@@ 1111,27 1111,27 @@ bctlwrite(Astar *a, char *cmsg)
#else
		p = a->addr;
		*p = 'A';
		print(" 0K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print(" 0K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		p = a->addr+(16*1024);
		*p = 'B';
		print("16K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print("16K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		p = a->addr;
		print(" 0K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print(" 0K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		*p = 'C';
		print(" 0K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print(" 0K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		p = a->addr+(64*1024);
		*p = 'D';
		print("64K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print("64K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		p = a->addr;
		print(" 0K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print(" 0K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);

		p = a->addr+(16*1024);
		print("16K: %8.8uX %2.2uX\n", inl(a->port+PCIremap), *p);
		print("16K: %8.8luX %2.2uX\n", inl(a->port+PCIremap), *p);
#endif /* notdef */

	} else

M pc/devata.c => pc/devata.c +12 -12
@@ 842,7 842,7 @@ atarepl(Drive *dp, long bblk)
		return;
	for(i = 0; i < dp->repl.nrepl; i++){
		if(dp->repl.blk[i] == bblk)
			DPRINT("%s: found bblk %ld at offset %ld\n",
			DPRINT("%s: found bblk %ld at offset %d\n",
			dp->vol, bblk, i);
	}
}


@@ 902,7 902,7 @@ ataxfer(Drive *dp, Partition *pp, int cmd, vlong off, long len, uchar *buf)
		head = ((lblk/dp->sectors) % dp->heads);
	}

	XPRINT("%s: ataxfer cyl %d sec %d head %d len %d\n",
	XPRINT("%s: ataxfer cyl %d sec %d head %d len %ld\n",
		dp->vol, cyl, sec, head, len);

	cp = dp->cp;


@@ 968,7 968,7 @@ ataxfer(Drive *dp, Partition *pp, int cmd, vlong off, long len, uchar *buf)
		nexterror();

	if(cp->status & Serr){
		DPRINT("%s err: lblk %ld status %lux, err %lux\n",
		DPRINT("%s err: lblk %ld status %ux, err %ux\n",
			dp->vol, lblk, cp->status, cp->error);
		DPRINT("\tcyl %d, sec %d, head %d\n", cyl, sec, head);
		DPRINT("\tnsecs %d, sofar %d\n", cp->nsecs, cp->sofar);


@@ 1017,7 1017,7 @@ atafeature(Drive *dp, uchar arg)
	atasleep(cp, Hardtimeout);

	if(cp->status & Serr)
		DPRINT("%s: setbuf err: status %lux, err %lux\n",
		DPRINT("%s: setbuf err: status %ux, err %ux\n",
			dp->vol, cp->status, cp->error);

	cp->dp = 0;


@@ 1159,7 1159,7 @@ retryatapi:
		dp->cyl = ip->ccyls;
		dp->heads = ip->cheads;
		dp->sectors = ip->cs2t;
		XPRINT("%s: changed to %d cyl %d head %d sec\n",
		XPRINT("%s: changed to %ld cyl %d head %d sec\n",
			dp->vol, dp->cyl, dp->heads, dp->sectors);
	}



@@ 1168,7 1168,7 @@ retryatapi:
		dp->lba = 1;
		dp->lbasecs = lbasecs;
		dp->cap = (vlong)dp->bytes * dp->lbasecs;
		XPRINT("%s: LBA: %s %d sectors %lld bytes\n",
		XPRINT("%s: LBA: %s %lud sectors %lld bytes\n",
			dp->vol, id, dp->lbasecs,
			dp->cap);
	} else {


@@ 1176,7 1176,7 @@ retryatapi:
		dp->lbasecs = 0;
		dp->cap = (vlong)dp->bytes * dp->cyl * dp->heads * dp->sectors;
	}
	XPRINT("%s: %s %d/%d/%d CHS %lld bytes\n",
	XPRINT("%s: %s %ld/%d/%d CHS %lld bytes\n",
		dp->vol, id, dp->cyl, dp->heads, dp->sectors,
		dp->cap);



@@ 1234,7 1234,7 @@ ataprobe(Drive *dp, int cyl, int sec, int head)
	atasleep(cp, Hardtimeout);

	if(cp->status & Serr){
		DPRINT("%s: probe err: status %lux, err %lux\n",
		DPRINT("%s: probe err: status %ux, err %ux\n",
			dp->vol, cp->status, cp->error);
		rv = -1;
	}


@@ 1301,7 1301,7 @@ ataparams(Drive *dp)
	}
	dp->cyl = lo + 1;
	dp->cap = (vlong)dp->bytes * dp->cyl * dp->heads * dp->sectors;
	DPRINT("%s: probed: %d/%d/%d CHS %lld bytes\n",
	DPRINT("%s: probed: %ld/%d/%d CHS %lld bytes\n",
		dp->vol, dp->cyl, dp->heads, dp->sectors,
		dp->cap);
	if(dp->cyl == 0 || dp->heads == 0 || dp->sectors == 0)


@@ 1500,7 1500,7 @@ ataintr(Ureg*, void* arg)
	loop = 0;
	while((cp->status = inb(cp->pbase+Pstatus)) & Sbusy){
		if(++loop > Maxloop){
			print("ata%d: cmd=%lux, lastcmd=%lux status=%lux\n",
			print("ata%d: cmd=%ux, lastcmd=%ux status=%ux\n",
				cp->ctlrno, cp->cmd, cp->lastcmd, inb(cp->pbase+Pstatus));
			panic("%s: wait busy\n", dp->vol);
		}


@@ 1539,7 1539,7 @@ ataintr(Ureg*, void* arg)
		loop = 0;
		while((cp->status & (Serr|Sdrq)) == 0){
			if(++loop > Maxloop){
				print("%s: read/ident cmd=%lux status=%lux\n",
				print("%s: read/ident cmd=%ux status=%ux\n",
					dp->vol, cp->cmd, inb(cp->pbase+Pstatus));
				cp->status |= Serr;
				break;


@@ 1916,7 1916,7 @@ retry:
	if(dp->bytes > 2048 && dp->bytes <= 2352)
		dp->bytes = 2048;
	dp->cap = dp->lbasecs*dp->bytes;
	DPRINT("%s: atapipart secs %ud, bytes %ud, cap %ud\n",
	DPRINT("%s: atapipart secs %lud, bytes %ud, cap %lld\n",
		dp->vol, dp->lbasecs, dp->bytes, dp->cap);
	cp->dp = 0;
	free(cp->buf);

M pc/devether.c => pc/devether.c +1 -1
@@ 356,7 356,7 @@ etherreset(void)
				ether->irq = 9;
			intrenable(VectorPIC+ether->irq, ether->interrupt, ether, ether->tbdf);

			i = sprint(buf, "#l%d: %s: %dMbps port 0x%luX irq %d",
			i = sprint(buf, "#l%d: %s: %dMbps port 0x%luX irq %lud",
				ctlrno, ether->type, ether->mbps, ether->port, ether->irq);
			if(ether->mem)
				i += sprint(buf+i, " addr 0x%luX", PADDR(ether->mem));

M pc/devfloppy.c => pc/devfloppy.c +3 -3
@@ 833,9 833,9 @@ floppyxfer(FDrive *dp, int cmd, void *a, long off, long n)
		error(Eio);
	}
	if((fl.stat[0] & Codemask)!=0 || fl.stat[1] || fl.stat[2]){
		DPRINT("xfer: failed %lux %lux %lux\n", fl.stat[0],
		DPRINT("xfer: failed %ux %ux %ux\n", fl.stat[0],
			fl.stat[1], fl.stat[2]);
		DPRINT("offset %lud len %d\n", off, dp->len);
		DPRINT("offset %lud len %ld\n", off, dp->len);
		if((fl.stat[0]&Codemask)==Cmdexec && fl.stat[1]==Overrun){
			DPRINT("DMA overrun: retry\n");
		} else


@@ 969,7 969,7 @@ floppyformat(FDrive *dp, char *params)
			error(Eio);
		}
		if((fl.stat[0]&Codemask)!=0 || fl.stat[1]|| fl.stat[2]){
			DPRINT("format: failed %lux %lux %lux\n",
			DPRINT("format: failed %ux %ux %ux\n",
				fl.stat[0], fl.stat[1], fl.stat[2]);
			dp->confused = 1;
			error(Eio);

M pc/devlpt.c => pc/devlpt.c +1 -1
@@ 65,7 65,7 @@ lptgen(Chan *c, Dirtab *tab, int ntab, int i, Dir *dp)
	if(qid.path < Qdata)
		qid.path += lptbase[c->dev];
	qid.vers = c->dev;
	sprint(name, "lpt%d%s", c->dev+1, tab->name);
	sprint(name, "lpt%lud%s", c->dev+1, tab->name);
	devdir(c, qid, name, tab->length, eve, tab->perm, dp);
	return 1;
}

M pc/ether82557.c => pc/ether82557.c +2 -2
@@ 429,9 429,9 @@ ifstat(Ether* ether, void* a, long n, ulong offset)
	len += snprint(p+len, READSTR-len, "receive short frame errors: %lud\n", dump[15]);
	if(ctlr->cbqmax > ctlr->cbqmaxhw)
		ctlr->cbqmaxhw = ctlr->cbqmax;
	len += snprint(p+len, READSTR-len, "cbqmax: %lud\n", ctlr->cbqmax);
	len += snprint(p+len, READSTR-len, "cbqmax: %d\n", ctlr->cbqmax);
	ctlr->cbqmax = 0;
	snprint(p+len, READSTR-len, "threshold: %lud\n", ctlr->threshold);
	snprint(p+len, READSTR-len, "threshold: %d\n", ctlr->threshold);

	n = readstr(offset, a, n, p);
	free(p);

M pc/ether8390.c => pc/ether8390.c +1 -1
@@ 393,7 393,7 @@ receive(Ether* ether)
		 */
		if(hdr.next < ctlr->pstart || hdr.next >= ctlr->pstop
		  || len < 60 || len > sizeof(Etherpkt)){
			print("dp8390: H#%2.2ux#%2.2ux#%2.2ux#%2.2ux,%d\n",
			print("dp8390: H#%2.2ux#%2.2ux#%2.2ux#%2.2ux,%lud\n",
				hdr.status, hdr.next, hdr.len0, hdr.len1, len);
			regw(ctlr, Cr, Page0|RdABORT|Stp);
			ringinit(ctlr);

M pc/etherelnk3.c => pc/etherelnk3.c +5 -5
@@ 426,13 426,13 @@ typedef struct {

	int	upqmax;
	int	upqmaxhw;
	long	upinterrupts;
	long	upqueued;
	int	upstalls;
	ulong	upinterrupts;
	ulong	upqueued;
	ulong	upstalls;
	int	dnqmax;
	int	dnqmaxhw;
	long	dninterrupts;
	long	dnqueued;
	ulong	dninterrupts;
	ulong	dnqueued;

	int	xcvr;				/* transceiver type */
	int	rxstatus9;			/* old-style RxStatus register */

M pc/main.c => pc/main.c +5 -5
@@ 306,19 306,19 @@ bootargs(ulong base)
	cp[BOOTLINELEN-1] = 0;
	buf[0] = 0;
	if(strncmp(cp, "fd!", 3) == 0){
		sprint(buf, "local!#f/fd%ddisk", strtol(cp+3, 0, 0));
		sprint(buf, "local!#f/fd%lddisk", strtol(cp+3, 0, 0));
		av[ac++] = pusharg(buf);
	} else if(strncmp(cp, "h!", 2) == 0){
		sprint(buf, "local!#H/hd%dfs", strtol(cp+2, 0, 0));
		sprint(buf, "local!#H/hd%ldfs", strtol(cp+2, 0, 0));
		av[ac++] = pusharg(buf);
	} else if(strncmp(cp, "hd!", 3) == 0){
		sprint(buf, "local!#H/hd%ddisk", strtol(cp+3, 0, 0));
		sprint(buf, "local!#H/hd%lddisk", strtol(cp+3, 0, 0));
		av[ac++] = pusharg(buf);
	} else if(strncmp(cp, "s!", 2) == 0){
		sprint(buf, "local!#w/sd%dfs", strtol(cp+2, 0, 0));
		sprint(buf, "local!#w/sd%ldfs", strtol(cp+2, 0, 0));
		av[ac++] = pusharg(buf);
	} else if(strncmp(cp, "sd!", 3) == 0){
		sprint(buf, "local!#w/sd%ddisk", strtol(cp+3, 0, 0));
		sprint(buf, "local!#w/sd%lddisk", strtol(cp+3, 0, 0));
		av[ac++] = pusharg(buf);
	} else if(strncmp(cp, "e!", 2) == 0)
		av[ac++] = pusharg("-n");

M pc/memory.c => pc/memory.c +7 -7
@@ 88,17 88,17 @@ memdebug(void)
	maxpa = (nvramread(0x18)<<8)|nvramread(0x17);
	maxpa1 = (nvramread(0x31)<<8)|nvramread(0x30);
	maxpa2 = (nvramread(0x16)<<8)|nvramread(0x15);
	print("maxpa = %uX -> %uX, maxpa1 = %uX maxpa2 = %uX\n",
	print("maxpa = %luX -> %luX, maxpa1 = %luX maxpa2 = %luX\n",
		maxpa, MB+maxpa*KB, maxpa1, maxpa2);

	for(mp = rmapram.map; mp->size; mp++)
		print("%8.8uX %8.8uX %8.8uX\n", mp->addr, mp->size, mp->addr+mp->size);
		print("%8.8luX %8.8uX %8.8luX\n", mp->addr, mp->size, mp->addr+mp->size);
	for(mp = rmapumb.map; mp->size; mp++)
		print("%8.8uX %8.8uX %8.8uX\n", mp->addr, mp->size, mp->addr+mp->size);
		print("%8.8luX %8.8uX %8.8luX\n", mp->addr, mp->size, mp->addr+mp->size);
	for(mp = rmapumbrw.map; mp->size; mp++)
		print("%8.8uX %8.8uX %8.8uX\n", mp->addr, mp->size, mp->addr+mp->size);
		print("%8.8luX %8.8uX %8.8luX\n", mp->addr, mp->size, mp->addr+mp->size);
	for(mp = rmapupa.map; mp->size; mp++)
		print("%8.8uX %8.8uX %8.8uX\n", mp->addr, mp->size, mp->addr+mp->size);
		print("%8.8luX %8.8uX %8.8luX\n", mp->addr, mp->size, mp->addr+mp->size);
}

void


@@ 132,7 132,7 @@ mapfree(RMap* rmap, ulong addr, ulong size)
		}
		else do{
			if(mp >= rmap->mapend){
				print("mapfree: %s: losing 0x%uX, %d\n",
				print("mapfree: %s: losing 0x%luX, %ld\n",
					rmap->name, addr, size);
				break;
			}


@@ 402,7 402,7 @@ ramscan(ulong maxmem)
	if(maxmem < 0xFFE00000)
		mapfree(&rmapupa, maxmem, 0xFFE00000-maxmem);
	if(MEMDEBUG)
		print("maxmem %uX %uX\n", maxmem, 0xFFE00000-maxmem);
		print("maxmem %luX %luX\n", maxmem, 0xFFE00000-maxmem);
	*k0 = kzero;
}


M pc/mp.c => pc/mp.c +1 -1
@@ 484,7 484,7 @@ mpinit(void)
	while(p < e) switch(*p){

	default:
		print("mpinit: unknown PCMP type 0x%uX (e-p 0x%uX)\n", *p, e-p);
		print("mpinit: unknown PCMP type 0x%uX (e-p 0x%luX)\n", *p, e-p);
		while(p < e){
			print("%uX ", *p);
			p++;

M pc/scsi.c => pc/scsi.c +1 -1
@@ 78,7 78,7 @@ scsireset(void)
			if((ctlr->io = lp->reset(ctlrno, ctlr)) == 0)
				break;

			print("scsi#%d: %s: port 0x%luX irq %d",
			print("scsi#%d: %s: port 0x%luX irq %lud",
				ctlrno, ctlr->type, ctlr->port,
				ctlr->irq);
			if(ctlr->mem)

M pc/trap.c => pc/trap.c +7 -7
@@ 209,7 209,7 @@ trap(Ureg* ureg)
		if(v == VectorNMI){
			nmienable();
			if(m->machno != 0){
				print("cpu%d: PC %8.8uX\n", m->machno, ureg->pc);
				print("cpu%d: PC %8.8luX\n", m->machno, ureg->pc);
				for(;;);
			}
		}


@@ 232,17 232,17 @@ void
dumpregs2(Ureg* ureg)
{
	if(up)
		print("cpu%d: registers for %s %d\n", m->machno, up->text, up->pid);
		print("cpu%d: registers for %s %lud\n", m->machno, up->text, up->pid);
	else
		print("cpu%d: registers for kernel\n", m->machno);
	print("FLAGS=%lux TRAP=%lux ECODE=%lux PC=%lux", ureg->flags, ureg->trap,
	print("FLAGS=%luX TRAP=%luX ECODE=%luX PC=%luX", ureg->flags, ureg->trap,
		ureg->ecode, ureg->pc);
	print(" SS=%4.4lux USP=%lux\n", ureg->ss & 0xFFFF, ureg->usp);
	print("  AX %8.8lux  BX %8.8lux  CX %8.8lux  DX %8.8lux\n",
	print(" SS=%4.4luX USP=%luX\n", ureg->ss & 0xFFFF, ureg->usp);
	print("  AX %8.8luX  BX %8.8luX  CX %8.8luX  DX %8.8luX\n",
		ureg->ax, ureg->bx, ureg->cx, ureg->dx);
	print("  SI %8.8lux  DI %8.8lux  BP %8.8lux\n",
	print("  SI %8.8luX  DI %8.8luX  BP %8.8luX\n",
		ureg->si, ureg->di, ureg->bp);
	print("  CS %4.4uX  DS %4.4uX  ES %4.4uX  FS %4.4uX  GS %4.4uX\n",
	print("  CS %4.4luX  DS %4.4luX  ES %4.4luX  FS %4.4luX  GS %4.4luX\n",
		ureg->cs & 0xFFFF, ureg->ds & 0xFFFF, ureg->es & 0xFFFF,
		ureg->fs & 0xFFFF, ureg->gs & 0xFFFF);
}

M port/alloc.c => port/alloc.c +6 -3
@@ 254,7 254,7 @@ poolalloc(Pool *p, int size)
		}

		iunlock(&p->l);
		print("%s arena too large: size %d cursize %d arenasize %d maxsize %d\n",
		print("%s arena too large: size %d cursize %lud arenasize %lud maxsize %lud\n",
			 p->name, size, p->cursize, p->arenasize, p->maxsize);
		return nil;
	}


@@ 337,7 337,7 @@ poolread(char *va, int count, ulong offset)
	signed_off = offset;
	for(i = 0; i < table.n; i++) {
		p = &table.pool[i];
		n += snprint(va+n, count-n, "%11d %11d %11d %11d %11d %11d %s\n",
		n += snprint(va+n, count-n, "%11lud %11lud %11lud %11d %11d %11d %s\n",
			p->cursize,
			p->maxsize,
			p->hw,


@@ 484,7 484,10 @@ poolsummary(void)
	int i;

	for(i = 0; i < table.n; i++)
		print("Arena: %s cursize=%d; maxsize=%d\n", table.pool[i].name, table.pool[i].cursize, table.pool[i].maxsize);
		print("Arena: %s cursize=%lud; maxsize=%lud\n",
			table.pool[i].name,
			table.pool[i].cursize,
			table.pool[i].maxsize);
}

/*

M port/devaudio.c => port/devaudio.c +4 -4
@@ 674,7 674,7 @@ ess1688(ISAConf* sbconf)
		i = 0x50|(3<<2);
		break;
	default:
		print("#A: bad ESS1688 irq %d\n", sbconf->irq);
		print("#A: bad ESS1688 irq %lud\n", sbconf->irq);
		return 1;
	}
	ess1688w(0xB1, i);


@@ 690,7 690,7 @@ ess1688(ISAConf* sbconf)
		i = 0x50|(3<<2);
		break;
	default:
		print("#A: bad ESS1688 dma %d\n", sbconf->dma);
		print("#A: bad ESS1688 dma %lud\n", sbconf->dma);
		return 1;
	}
	ess1688w(0xB2, i);


@@ 723,7 723,7 @@ audioinit(void)
	case 0x280:
		break;
	default:
		print("#A: bad port 0x%x\n", sbconf.port);
		print("#A: bad port 0x%lux\n", sbconf.port);
		return;
	}
	switch(sbconf.irq){


@@ 733,7 733,7 @@ audioinit(void)
	case 10:
		break;
	default:
		print("#A: bad irq %d\n", sbconf.irq);
		print("#A: bad irq %lud\n", sbconf.irq);
		return;
	}


M port/devcons.c => port/devcons.c +4 -4
@@ 186,7 186,7 @@ pprint(char *fmt, ...)
	c = up->fgrp->fd[2];
	if(c==0 || (c->mode!=OWRITE && c->mode!=ORDWR))
		return 0;
	n = sprint(buf, "%s %d: ", up->text, up->pid);
	n = sprint(buf, "%s %lud: ", up->text, up->pid);
	va_start(arg, fmt);
	n = doprint(buf+n, buf+sizeof(buf), fmt, arg) - buf;
	va_end(arg);


@@ 419,7 419,7 @@ readnum(ulong off, char *buf, ulong n, ulong val, int size)
{
	char tmp[64];

	snprint(tmp, sizeof(tmp), "%*.0ud", size-1, val);
	snprint(tmp, sizeof(tmp), "%*.0lud", size-1, val);
	tmp[size-1] = ' ';
	if(off >= size)
		return 0;


@@ 690,7 690,7 @@ consread(Chan *c, void *buf, long n, vlong off)
		return n;

	case Qswap:
		sprint(tmp, "%d/%d memory %d/%d swap\n",
		sprint(tmp, "%lud/%lud memory %lud/%lud swap\n",
			palloc.user-palloc.freecount,
			palloc.user, conf.nswap-swapalloc.free, conf.nswap);



@@ 864,7 864,7 @@ conswrite(Chan *c, void *va, long n, vlong off)
		break;

	default:
		print("conswrite: %d\n", c->qid.path);
		print("conswrite: %lud\n", c->qid.path);
		error(Egreg);
	}
	return n;

M port/devdraw.c => port/devdraw.c +1 -1
@@ 987,7 987,7 @@ drawread(Chan *c, void *a, long n, vlong off)
		m = 0;
		for(index = 0; index < 256; index++){
			getcolor(index, &red, &green, &blue);
			m += sprint((char*)p+m, "%11d %11d %11d %11d\n", index, red>>24, green>>24, blue>>24);
			m += sprint((char*)p+m, "%11d %11lud %11lud %11lud\n", index, red>>24, green>>24, blue>>24);
		}
		n = readstr(offset, a, n, (char*)p);
		free(p);

M port/devdup.c => port/devdup.c +1 -1
@@ 17,7 17,7 @@ dupgen(Chan *c, Dirtab*, int, int s, Dir *dp)
		return -1;
	if((f=fgrp->fd[s]) == 0)
		return 0;
	sprint(buf, "%ld", s);
	sprint(buf, "%d", s);
	devdir(c, (Qid){s, 0}, buf, 0, eve, perm[f->mode&3], dp);
	return 1;
}

M port/devmnt.c => port/devmnt.c +2 -2
@@ 146,7 146,7 @@ mntattach(char *muxattach)

	incref(m->c);

	sprint(buf, "#M%d", m->id);
	sprint(buf, "#M%lud", m->id);
	m->tree.root = ptenter(&m->tree, 0, buf);

	unlock(m);


@@ 639,7 639,7 @@ mountrpc(Mnt *m, Mntrpc *r)
	default:
		if(t == r->request.type+1)
			break;
		print("mnt: proc %s %d: mismatch rep 0x%lux T%d R%d rq %d fls %d rp %d\n",
		print("mnt: proc %s %lud: mismatch rep 0x%lux T%d R%d rq %d fls %d rp %d\n",
			up->text, up->pid,
			r, r->request.type, r->reply.type, r->request.tag,
			r->flushtag, r->reply.tag);

M port/devmouse.c => port/devmouse.c +1 -1
@@ 196,7 196,7 @@ mouseread(Chan *c, void *va, long n, vlong off)
		while(!canlock(&cursor))
			tsleep(&up->sleep, return0, 0, TK2MS(1));

		sprint(buf, "m%11d %11d %11d %11d",
		sprint(buf, "m%11d %11d %11d %11lud",
			mouse.xy.x, mouse.xy.y,
			buttonmap[mouse.buttons&7],
			TK2MS(MACHP(0)->ticks));

M port/devproc.c => port/devproc.c +3 -3
@@ 89,7 89,7 @@ procgen(Chan *c, Dirtab *tab, int, int s, Dir *dp)
		pid = p->pid;
		if(pid == 0)
			return 0;
		sprint(buf, "%d", pid);
		sprint(buf, "%lud", pid);
		qid = (Qid){CHDIR|((s+1)<<QSHIFT), pid};
		devdir(c, qid, buf, 0, p->user, CHDIR|0555, dp);
		return 1;


@@ 268,7 268,7 @@ procfds(Proc *p, char *va, int count, long offset)
		c = f->fd[i];
		if(c == nil)
			continue;
		n += snprint(va+n, count-n, "%3d %.2s %.8lux.%.8d %8d ",
		n += snprint(va+n, count-n, "%3d %.2s %.8lux.%.8lud %8lld ",
			i,
			&"r w rw"[(c->mode&3)<<1],
			c->qid.path, c->qid.vers,


@@ 462,7 462,7 @@ procread(Chan *c, void *va, long n, vlong off)
			sg = p->seg[i];
			if(sg == 0)
				continue;
			j += sprint(statbuf+j, "%-6s %c%c %.8lux %.8lux %4d\n",
			j += sprint(statbuf+j, "%-6s %c%c %.8lux %.8lux %4ld\n",
				sname[sg->type&SG_TYPE],
				sg->type&SG_RONLY ? 'R' : ' ',
				sg->profile ? 'P' : ' ',

M port/devssl.c => port/devssl.c +1 -1
@@ 550,7 550,7 @@ sslread(Chan *c, void *a, long n, vlong off)
	default:
		error(Ebadusefd);
	case Qctl:
		sprint(buf, "%d", CONV(c->qid));
		sprint(buf, "%lud", CONV(c->qid));
		return readstr(offset, a, n, buf);
	case Qdata:
		b.b = sslbread(c, n, offset);

M port/page.c => port/page.c +2 -2
@@ 58,8 58,8 @@ pageinit(void)
	swapalloc.headroom = swapalloc.highwater + (swapalloc.highwater/4);

	print("%lud free pages\n", palloc.user);
	print("%dK bytes\n", pm);
	print("%dK swap\n", vm);
	print("%ludK bytes\n", pm);
	print("%ludK swap\n", vm);
}

static void

M port/proc.c => port/proc.c +9 -9
@@ 263,7 263,7 @@ found:
	rq->n--;
	nrdy--;
	if(p->state != Ready)
		print("runproc %s %d %s\n", p->text, p->pid, statename[p->state]);
		print("runproc %s %lud %s\n", p->text, p->pid, statename[p->state]);
	unlock(runq);

	p->state = Scheding;


@@ 442,7 442,7 @@ sleep(Rendez *r, int (*f)(void*), void *arg)

	lock(&up->rlock);
	if(r->p){
		print("double sleep %d %d\n", r->p->pid, up->pid);
		print("double sleep %lud %lud\n", r->p->pid, up->pid);
		dumpstack();
	}



@@ 591,7 591,7 @@ postnote(Proc *p, int dolock, char *n, int flag)
		qlock(&p->debug);

	if(p->kp)
		print("sending %s to kproc %d %s\n", n, p->pid, p->text);
		print("sending %s to kproc %lud %s\n", n, p->pid, p->text);

	if(flag != NUser && (p->notify == 0 || p->notified))
		p->nnote = 0;


@@ 756,7 756,7 @@ pexit(char *exitstr, int freemem)
		readnum(0, &wq->w.time[TReal*12], NUMSIZE,
			TK2MS(MACHP(0)->ticks - up->time[TReal]), NUMSIZE);
		if(exitstr && exitstr[0]){
			n = sprint(wq->w.msg, "%s %d:", up->text, up->pid);
			n = sprint(wq->w.msg, "%s %lud:", up->text, up->pid);
			strncpy(wq->w.msg+n, exitstr, ERRLEN-n);
			wq->w.msg[ERRLEN-1] = 0;
		}


@@ 897,7 897,7 @@ dumpaproc(Proc *p)
	s = p->psstate;
	if(s == 0)
		s = "kproc";
	print("%3d:%10s pc %8lux dbgpc %8lux  %8s (%s) ut %ld st %ld bss %lux pri %d\n",
	print("%3lud:%10s pc %8lux dbgpc %8lux  %8s (%s) ut %ld st %ld bss %lux pri %lud\n",
		p->pid, p->text, p->pc, dbgpc(p),  s, statename[p->state],
		p->time[0], p->time[1], bss, p->priority);
}


@@ 909,7 909,7 @@ procdump(void)
	Proc *p;

	if(up)
		print("up %d\n", up->pid);
		print("up %lud\n", up->pid);
	else
		print("no current process\n");
	for(i=0; i<conf.nproc; i++) {


@@ 976,9 976,9 @@ scheddump(void)
	for(rq = &runq[Nrq-1]; rq >= runq; rq--){
		if(rq->head == 0)
			continue;
		print("rq%d:", rq-runq);
		print("rq%ld:", rq-runq);
		for(p = rq->head; p; p = p->rnext)
			print(" %d(%d, %d)", p->pid, m->ticks - p->readytime,
			print(" %lud(%lud, %lud)", p->pid, m->ticks - p->readytime,
				m->ticks - p->movetime);
		print("\n");
		delay(150);


@@ 1143,7 1143,7 @@ killbig(void)
			qunlock(&s->lk);
		}
	}
	print("%d: %s killed because no swap configured\n", kp->pid, kp->text);
	print("%lud: %s killed because no swap configured\n", kp->pid, kp->text);
}

/*

M port/qio.c => port/qio.c +1 -1
@@ 98,7 98,7 @@ void
ixsummary(void)
{
	debugging ^= 1;
	print("ialloc %d/%d %d\n", ialloc.bytes, conf.ialloc, debugging);
	print("ialloc %lud/%lud %d\n", ialloc.bytes, conf.ialloc, debugging);
	print("pad %lud, concat %lud, pullup %lud, copy %lud\n",
		padblockcnt, concatblockcnt, pullupblockcnt, copyblockcnt);
	print("consume %lud, produce %lud, qcopy %lud\n",

M port/sysproc.c => port/sysproc.c +1 -1
@@ 12,7 12,7 @@ int	shargs(char*, int, char**);
long
sysr1(ulong *arg)
{
	print("[%s %s %d] r1 = %d\n", up->user, up->text, up->pid, arg[0]);
	print("[%s %s %lud] r1 = %lud\n", up->user, up->text, up->pid, arg[0]);
	return 0;
}


M port/taslock.c => port/taslock.c +3 -3
@@ 17,7 17,7 @@ lockloop(Lock *l, ulong pc)
	Proc *p;

	p = l->p;
	print("lock loop key 0x%lux pc 0x%lux held by pc 0x%lux proc %d\n",
	print("lock loop key 0x%lux pc 0x%lux held by pc 0x%lux proc %lud\n",
		l->key, pc, l->pc, p ? p->pid : 0);
	dumpaproc(up);
	if(p != nil)


@@ 149,7 149,7 @@ unlock(Lock *l)
{

	if(l->key == 0)
		print("unlock: not locked: pc %uX\n", getcallerpc(l));
		print("unlock: not locked: pc %luX\n", getcallerpc(l));
	if(l->isilock)
		print("iunlock of lock: pc %lux, held by %lux\n", getcallerpc(l), l->pc);
	l->pc = 0;


@@ 163,7 163,7 @@ iunlock(Lock *l)
	ulong sr;

	if(l->key == 0)
		print("iunlock: not locked: pc %uX\n", getcallerpc(l));
		print("iunlock: not locked: pc %luX\n", getcallerpc(l));
	if(!l->isilock)
		print("unlock of ilock: pc %lux, held by %lux\n", getcallerpc(l), l->pc);


M port/xalloc.c => port/xalloc.c +2 -2
@@ 198,7 198,7 @@ xhole(ulong addr, ulong size)

	if(xlists.flist == nil) {
		iunlock(&xlists);
		print("xfree: no free holes, leaked %d bytes\n", size);
		print("xfree: no free holes, leaked %lud bytes\n", size);
		return;
	}



@@ 225,7 225,7 @@ xsummary(void)
	print("%d holes free\n", i);
	i = 0;
	for(h = xlists.table; h; h = h->link) {
		print("%.8lux %.8lux %d\n", h->addr, h->top, h->size);
		print("%.8lux %.8lux %lud\n", h->addr, h->top, h->size);
		i += h->size;
	}
	print("%d bytes free\n", i);