~kris/9p

9hist

ce33b79eb1c196b89143d1c0c827672e0177efce — David du Colombier 30 years ago 05cf241
Plan 9 from Bell Labs 1995-11-21
6 files changed, 36 insertions(+), 18 deletions(-)

M pc/devfloppy.c
M pc/devi82365.c
M pc/main.c
M port/devcons.c
M port/portfns.h
M port/qio.c
M pc/devfloppy.c => pc/devfloppy.c +1 -1
@@ 863,7 863,7 @@ floppyrecal(Drive *dp)
 *  if the controller or a specific drive is in a confused state,
 *  reset it and get back to a kown state
 */
void
static void
floppyrevive(void)
{
	Drive *dp;

M pc/devi82365.c => pc/devi82365.c +2 -2
@@ 1265,7 1265,7 @@ memspace(Slot *pp, int asize, int lsize, int host)
	}
}

void
static void
tentry(Slot *pp, int ttype)
{
	uchar c, i, feature;


@@ 1338,7 1338,7 @@ tentry(Slot *pp, int ttype)
	pp->configed++;
}

void
static void
tvers1(Slot *pp, int ttype)
{
	uchar c, major, minor;

M pc/main.c => pc/main.c +4 -0
@@ 128,6 128,10 @@ init0(void)
		strcat(tstr, " %s");
		ksetterm(tstr);
		ksetenv("cputype", "386");
		if(cpuserver)
			ksetenv("service", "cpu");
		else
			ksetenv("service", "terminal");
		for(i = 0; i < nconf; i++)
			if(confname[i])
				ksetenv(confname[i], confval[i]);

M port/devcons.c => port/devcons.c +1 -1
@@ 931,7 931,7 @@ genrandom(void*)
	}
}

void
static void
randominit(void)
{
	rb.ep = rb.buf + sizeof(rb.buf);

M port/portfns.h => port/portfns.h +1 -1
@@ 14,7 14,6 @@ void		authreply(Session*, ulong, Fcall*);
ulong		authrequest(Session*, Fcall*);
long		authwrite(Chan*, char*, int);
Page*		auxpage(void);
Block*		bpad(Block*, int);
void		buzz(int, int);
void		cachedel(Image*, ulong);
void		cachepage(Page*, Image*);


@@ 163,6 162,7 @@ int		notify(Ureg*);
int		nrand(int);
int		okaddr(ulong, ulong, int);
int		openmode(ulong);
Block*		padblock(Block*, int);
void		pageinit(void);
void		panic(char*, ...);
void		pexit(char*, int);

M port/qio.c => port/qio.c +27 -13
@@ 170,25 170,39 @@ allocb(int size)
ulong bpadoverhead;

/*
 *  pad a block to the front
 *  pad a block to the front (or the back if size is negative)
 */
Block*
bpad(Block *bp, int size)
padblock(Block *bp, int size)
{
	int n;
	Block *nbp;

	if(bp->rp - bp->base > size)
		return bp;

	n = bp->wp - bp->rp;
	bpadoverhead += n;
	nbp = allocb(size+n);
	nbp->rp += size;
	nbp->wp = nbp->rp;
	memmove(nbp->wp, bp->rp, n);
	nbp->wp += n;
	freeb(bp);
	if(size >= 0){
		if(bp->rp - bp->base >= size)
			return bp;

		n = bp->wp - bp->rp;
		bpadoverhead += n;
		nbp = allocb(size+n);
		nbp->rp += size;
		nbp->wp = nbp->rp;
		memmove(nbp->wp, bp->rp, n);
		nbp->wp += n;
		freeb(bp);
	} else {
		size = -size;

		if(bp->lim - bp->wp >= size)
			return bp;

		n = bp->wp - bp->rp;
		bpadoverhead += n;
		nbp = allocb(size+n);
		memmove(nbp->wp, bp->rp, n);
		nbp->wp += n;
		freeb(bp);
	}
	return nbp;
}