~kris/9p

9hist

18469b8180755f7e65ced3ce700478cfd49157c9 — David du Colombier 27 years ago 1587b45
Plan 9 from Bell Labs 1999-03-20
M ip/devip.c => ip/devip.c +3 -1
@@ 863,7 863,7 @@ ttlctlmsg(Conv *c, Cmdbuf *cb)
}

static long
ipwrite(Chan* ch, char* a, long n, vlong)
ipwrite(Chan* ch, void *v, long n, vlong)
{
	Conv *c;
	Proto *x;


@@ 871,7 871,9 @@ ipwrite(Chan* ch, char* a, long n, vlong)
	Cmdbuf *cb;
	uchar ia[IPaddrlen], ma[IPaddrlen];
	Fs *f;
	char *a;

	a = v;
	f = ipfs[ch->dev];

	switch(TYPE(ch->qid)){

M ip/ethermedium.c => ip/ethermedium.c +3 -2
@@ 25,7 25,7 @@ static void	etherremmulti(Ipifc *ifc, uchar *a, uchar *ia);
static Block*	multicastarp(Fs *f, Arpent *a, uchar *mac);
static void	sendarp(Ipifc *ifc, Arpent *a);
static int	multicastea(uchar *ea, uchar *ip);
static void	recvarpproc(Ipifc *ifc);
static void	recvarpproc(void*);

Medium ethermedium =
{


@@ 453,8 453,9 @@ recvarp(Ipifc *ifc)
}

static void
recvarpproc(Ipifc *ifc)
recvarpproc(void *v)
{
	Ipifc *ifc = v;
	Etherrock *er = ifc->arg;

	er->arpp = up;

M ip/rudp.c => ip/rudp.c +3 -1
@@ 308,8 308,10 @@ doipoput(Conv *c, Fs *f, Block *bp, int x, int ttl)
}

int
flow(Reliable *r)
flow(void *v)
{
	Reliable *r = v;

	return UNACKED(r) <= Maxunacked;
}


M ip/tcp.c => ip/tcp.c +8 -4
@@ 239,8 239,8 @@ void	tcpstart(Conv*, int, ushort);
void	tcptimeout(void*);
void	tcpsndsyn(Tcpctl*);
void	tcprcvwin(Conv*);
void	tcpacktimer(Conv*);
void	tcpkeepalive(Conv*);
void	tcpacktimer(void*);
void	tcpkeepalive(void*);

void
tcpsetstate(Conv *s, uchar newstate)


@@ 435,10 435,12 @@ tcprcvwin(Conv *s)				/* Call with tcb locked */
}

void
tcpacktimer(Conv *s)
tcpacktimer(void *v)
{
	Tcpctl *tcb;
	Conv *s;

	s = v;
	tcb = (Tcpctl*)s->ptcl;

	qlock(s);


@@ 1769,10 1771,12 @@ tcpsendka(Conv *s)
 *  otherwise, send a keepalive and restart the timer
 */
void
tcpkeepalive(Conv *s)
tcpkeepalive(void *v)
{
	Tcpctl *tcb;
	Conv *s;

	s = v;
	tcb = (Tcpctl*)s->ptcl;
	if(--(tcb->kacounter) <= 0)
		localclose(s, Etimedout);

M pc/mp.c => pc/mp.c +4 -2
@@ 348,6 348,8 @@ checkmtrr(void)
#define PDX(va)		((((ulong)(va))>>22) & 0x03FF)
#define PTX(va)		((((ulong)(va))>>12) & 0x03FF)

Lock clocksynclock;

static void
squidboy(Apic* apic)
{


@@ 369,12 371,12 @@ squidboy(Apic* apic)
	/*
	 * Restrain your octopus! Don't let it go out on the sea!
	 */
	lock(&active);
	ilock(&clocksynclock);
	x = MACHP(0)->ticks;
	while(MACHP(0)->ticks == x)
		;
	wrmsr(0x10, MACHP(0)->fastclock); /* synchronize fast counters */
	unlock(&active);
	iunlock(&clocksynclock);

	lapicinit(apic);
	lapiconline();

M pc/screen.h => pc/screen.h +2 -2
@@ 10,8 10,8 @@ extern void mousetrack(int, int, int);
extern Point mousexy(void);

extern void mouseaccelerate(int);
extern int m3mouseputc(void*, int);
extern int mouseputc(void*, int);
extern int m3mouseputc(Queue*, int);
extern int mouseputc(Queue*, int);

extern Cursorinfo cursor;
extern Cursor arrow;

M port/devaudio.c => port/devaudio.c +6 -2
@@ 908,7 908,7 @@ audioclose(Chan *c)
}

static long
audioread(Chan *c, char *a, long n, vlong off)
audioread(Chan *c, void *v, long n, vlong off)
{
	int liv, riv, lov, rov;
	long m, n0;


@@ 916,8 916,10 @@ audioread(Chan *c, char *a, long n, vlong off)
	Buf *b;
	int j;
	ulong offset = off;
	char *a;

	n0 = n;
	a = v;
	switch(c->qid.path & ~CHDIR) {
	default:
		error(Eperm);


@@ 1009,13 1011,15 @@ audioread(Chan *c, char *a, long n, vlong off)
}

static long
audiowrite(Chan *c, char *a, long n, vlong)
audiowrite(Chan *c, void *vp, long n, vlong)
{
	long m, n0;
	int i, nf, v, left, right, in, out;
	char buf[255], *field[Ncmd];
	Buf *b;
	char *a;

	a = vp;
	n0 = n;
	switch(c->qid.path & ~CHDIR) {
	default:

M port/devkprof.c => port/devkprof.c +1 -1
@@ 151,7 151,7 @@ kprofread(Chan *c, void *va, long n, vlong off)
}

static long
kprofwrite(Chan *c, char *a, long n, vlong)
kprofwrite(Chan *c, void *a, long n, vlong)
{
	switch((int)(c->qid.path&~CHDIR)){
	case Kprofctlqid:

M port/devmnt.c => port/devmnt.c +9 -3
@@ 54,7 54,7 @@ void	mntrpcread(Mnt*, Mntrpc*);
void	mountio(Mnt*, Mntrpc*);
void	mountmux(Mnt*, Mntrpc*);
void	mountrpc(Mnt*, Mntrpc*);
int	rpcattn(Mntrpc*);
int	rpcattn(void*);
void	mclose(Mnt*, Chan*);
void	mntrecover(Mnt*, Mntrpc*);
Chan*	mntchan(void);


@@ 993,14 993,20 @@ mntdirfix(uchar *dirbuf, Chan *c)
}

int
rpcattn(Mntrpc *r)
rpcattn(void *v)
{
	Mntrpc *r;

	r = v;
	return r->done || r->m->rip == 0;
}

int
recdone(Mnt *m)
recdone(void *v)
{
	Mnt *m;

	m = v;
	return m->recprog == 0;
}


M port/devmouse.c => port/devmouse.c +2 -2
@@ 459,7 459,7 @@ mousetrack(int b, int dx, int dy)
 *  shift & right button is the same as middle button (for 2 button mice)
 */
int
m3mouseputc(void*, int c)
m3mouseputc(Queue*, int c)
{
	static uchar msg[3];
	static int nb;


@@ 500,7 500,7 @@ m3mouseputc(void*, int c)
 *  shift & right button is the same as middle button (for 2 button mice)
 */
int
mouseputc(void*, int c)
mouseputc(Queue*, int c)
{
	static short msg[5];
	static int nb;

M port/devns16552.c => port/devns16552.c +12 -4
@@ 433,10 433,12 @@ stageoutput(Uart *p)
 *  (re)start output
 */
static void
ns16552kick0(Uart *p)
ns16552kick0(void *v)
{
	int i;
	Uart *p;

	p = v;
	if(p->cts == 0 || p->blocked)
		return;



@@ 456,8 458,11 @@ ns16552kick0(Uart *p)
}

static void
ns16552kick(Uart *p)
ns16552kick(void *v)
{
	Uart *p;

	p = v;
	ilock(&p->tlock);
	ns16552kick0(p);
	iunlock(&p->tlock);


@@ 467,8 472,11 @@ ns16552kick(Uart *p)
 *  restart input if it's off
 */
static void
ns16552flow(Uart *p)
ns16552flow(void *v)
{
	Uart *p;

	p = v;
	if(p->modem){
		ns16552rts(p, 1);
		ilock(&p->rlock);


@@ 889,7 897,7 @@ ns16552ctl(Uart *p, char *cmd)

	/* let output drain for a while */
	for(i = 0; i < 16 && qlen(p->oq); i++)
		tsleep(&p->r, qlen, p->oq, 125);
		tsleep(&p->r, (int(*)(void*))qlen, p->oq, 125);

	if(strncmp(cmd, "break", 5) == 0){
		ns16552break(p, 0);

M port/devsd.c => port/devsd.c +1 -1
@@ 257,7 257,7 @@ sdread(Chan *c, void *a, long n, vlong off)
}

static long
sdwrite(Chan *c, char *a, long n, vlong off)
sdwrite(Chan *c, void *a, long n, vlong off)
{
	Disk *d;


M port/devssl.c => port/devssl.c +1 -1
@@ 187,7 187,7 @@ sslgen(Chan *c, Dirtab *d, int nd, int s, Dir *dp)
}

static Chan*
sslattach(void *spec)
sslattach(char *spec)
{
	Chan *c;


M port/netif.c => port/netif.c +2 -2
@@ 30,11 30,11 @@ netifinit(Netif *nif, char *name, int nfile, ulong limit)
 *  generate a 3 level directory
 */
static int
netifgen(Chan *c, void *vp, int, int i, Dir *dp)
netifgen(Chan *c, Dirtab *vp, int, int i, Dir *dp)
{
	Qid q;
	char buf[32];
	Netif *nif = vp;
	Netif *nif = (Netif*)vp;
	Netfile *f;
	int t;
	int perm;