## diffname power/dat.h 1990/0227
## diff -e /dev/null /n/bootesdump/1990/0227/sys/src/9/mips/dat.h
0a
typedef struct Alarm Alarm;
typedef struct Blist Blist;
typedef struct Block Block;
typedef struct Chan Chan;
typedef struct Conf Conf;
typedef struct Dev Dev;
typedef struct Dirtab Dirtab;
typedef struct Env Env;
typedef struct Envp Envp;
typedef struct Envval Envval;
typedef struct Error Error;
typedef struct FPsave FPsave;
typedef struct Label Label;
typedef struct List List;
typedef struct Lock Lock;
typedef struct Mach Mach;
typedef struct Mount Mount;
typedef struct Mtab Mtab;
typedef struct Note Note;
typedef struct Orig Orig;
typedef struct PTE PTE;
typedef struct Page Page;
typedef struct Pgrp Pgrp;
typedef struct Proc Proc;
typedef struct QLock QLock;
typedef struct Qinfo Qinfo;
typedef struct Queue Queue;
typedef struct Stream Stream;
typedef struct Ref Ref;
typedef struct Rendez Rendez;
typedef struct Seg Seg;
typedef struct Ureg Ureg;
typedef struct User User;
typedef int Devgen(Chan*, Dirtab*, int, int, Dir*);
struct List
{
void *next;
};
struct Lock
{
ulong *sbsem; /* addr of sync bus semaphore */
ulong pc;
};
struct Ref
{
Lock;
int ref;
};
struct QLock
{
Proc *head; /* next process waiting for object */
Proc *tail; /* last process waiting for object */
Lock use; /* to use object */
Lock queue; /* to access list */
};
struct Label
{
ulong pc;
ulong sp;
};
struct Alarm
{
List;
Lock;
int busy;
long dt; /* may underflow in clock(); must be signed */
void (*f)(void*);
void *arg;
};
#define CHDIR 0x80000000L
#define QPATH 0x0000FFFFL
struct Chan
{
QLock; /* general access */
Ref;
union{
Chan *next; /* allocation */
ulong offset; /* in file */
};
ushort type;
ushort dev;
ushort mode; /* read/write */
ushort flag;
ulong qid;
Mount *mnt; /* mount point that derived Chan */
ulong mountid;
int fid; /* for devmnt */
Stream *stream; /* for stream channels */
};
struct FPsave
{
long fpreg[32];
long fpstatus;
};
struct Conf
{
int nmach; /* processors */
int nproc; /* processes */
int npgrp; /* process groups */
ulong npage; /* total physical pages of memory */
ulong norig; /* origins */
ulong npte; /* contiguous page table entries */
ulong nmod; /* single (modifying) page table entries */
int nalarm; /* alarms */
int nchan; /* channels */
int nenv; /* distinct environment values */
int nenvchar; /* environment text storage */
int npgenv; /* environment files per process group */
int nmtab; /* mounted-upon channels per process group */
int nmount; /* mounts */
int nmntdev; /* mounted devices (devmnt.c) */
int nmntbuf; /* buffers for devmnt.c messages */
int nmnthdr; /* headers for devmnt.c messages */
int nstream; /* streams */
int nqueue; /* stream queues */
int nblock; /* stream blocks */
int nsrv; /* public servers (devsrv.c) */
};
struct Dev
{
void (*reset)(void);
void (*init)(void);
Chan *(*attach)(char*);
Chan *(*clone)(Chan*, Chan*);
int (*walk)(Chan*, char*);
void (*stat)(Chan*, char*);
Chan *(*open)(Chan*, int);
void (*create)(Chan*, char*, int, ulong);
void (*close)(Chan*);
long (*read)(Chan*, void*, long);
long (*write)(Chan*, void*, long);
void (*remove)(Chan*);
void (*wstat)(Chan*, char*);
void (*errstr)(Error*, char*);
void (*userstr)(Error*, char*);
};
struct Dirtab
{
char name[NAMELEN];
long qid;
long length;
long perm;
};
struct Env
{
Lock;
Envval *val;
char name[NAMELEN];
Env *next; /* in chain of Envs for a pgrp */
int pgref; /* # pgrps pointing here */
};
struct Envp
{
Env *env;
int chref; /* # chans from pgrp pointing here */
};
struct Mach
{
int machno; /* physical id of processor */
int mmask; /* 1<<m->machno */
ulong ticks; /* of the clock since boot time */
Proc *proc; /* current process on this processor */
Label sched; /* scheduler wakeup */
Lock alarmlock; /* access to alarm list */
void *alarm; /* alarms bound to this clock */
void (*intr)(ulong); /* pending interrupt */
Proc *intrp; /* process that was interrupted */
ulong cause; /* arg to intr */
char pidhere[NTLBPID]; /* is this pid possibly in this mmu? */
int lastpid; /* last pid allocated on this machine */
Proc *pidproc[NTLBPID]; /* process that owns this tlbpid on this mach */
int stack[1];
};
struct Mount
{
Ref; /* also used as a lock when playing lists */
short term; /* terminates list */
ulong mountid;
Mount *next;
Chan *c; /* channel replacing underlying channel */
};
struct Mtab
{
Chan *c; /* channel mounted upon */
Mount *mnt; /* what's mounted upon it */
};
enum{
NUser, /* note provided externally */
NExit, /* process should exit */
NDebug, /* process should hang */
};
struct Note
{
char msg[ERRLEN];
int flag; /* whether system posted it */
};
struct Orig
{
Lock;
Orig *next; /* for allocation */
ushort nproc; /* processes using it */
ushort npage; /* sum of refs of pages in it */
ushort flag;
ulong va; /* va of 0th pte */
ulong npte; /* #pte's in list */
PTE *pte;
Chan *chan; /* channel deriving segment (if open) */
ushort type; /* of channel (which could be non-open) */
ushort dev;
ulong qid;
ulong minca; /* base of region in chan */
ulong maxca; /* end of region in chan */
};
struct Page
{
Orig *o; /* origin of segment owning page */
ulong va; /* virtual address */
ulong pa; /* physical address */
ushort ref;
Page *next;
Page *prev;
};
struct Pgrp
{
Ref; /* also used as a lock when mounting */
Pgrp *next;
ulong pgrpid;
char user[NAMELEN];
int nmtab; /* highest active mount table entry, +1 */
int nenv; /* highest active env table entry, +1 */
Mtab *mtab;
Envp *etab;
};
struct PTE
{
Proc *proc; /* process owning this PTE (0 in Orig) */
PTE *nextmod; /* next at this va */
PTE *nextva; /* next in this proc at higher va */
Page *page;
};
struct Rendez
{
Lock;
Proc *p;
};
struct Seg
{
Proc *proc; /* process owning this segment */
Orig *o; /* root list of pte's */
ulong minva; /* va of 0th pte (not necessarily Seg->o->va) */
ulong maxva; /* va of last pte */
PTE *mod; /* list of modified pte's */
ulong pad[3]; /**/
};
struct Proc
{
Label sched;
Mach *mach; /* machine running this proc */
char text[NAMELEN];
Proc *rnext; /* next process in run queue */
Proc *qnext; /* next process on queue for a QLock */
int state;
short pidonmach[MAXMACH]; /* TLB pid on each mmu */
Page *upage; /* BUG: should be unlinked from page list */
Seg seg[NSEG];
ulong pid;
int nchild;
QLock wait; /* exiting children to be waited for */
Waitmsg *waitmsg;
Proc *child;
Proc *parent;
Pgrp *pgrp;
ulong parentpid;
ulong time[6]; /* User, Sys, Real; child U, S, R */
short exiting;
short insyscall;
int fpstate;
Lock debug; /* to access debugging elements of User */
Rendez *r; /* rendezvous point slept on */
Rendez sleep; /* place for tsleep and syssleep */
int wokeup; /* whether sleep was interrupted */
ulong pc; /* DEBUG only */
};
#define NERR 15
#define NFD 100
#define NNOTE 5
struct User
{
Proc *p;
Label errlab[NERR];
int nerrlab;
Error error;
FPsave fpsave; /* address of this is known by vdb */
char elem[NAMELEN]; /* last name element from namec */
Chan *slash;
Chan *dot;
Chan *fd[NFD];
int maxfd; /* highest fd in use */
/*
* Rest of structure controlled by devproc.c and friends.
* lock(&p->debug) to modify.
*/
Note note[NNOTE];
short nnote;
short notified; /* sysnoted is due */
int (*notify)(void*, char*);
void *ureg;
};
/*
* operations available to a queue
*/
struct Qinfo
{
void (*iput)(Queue*, Block*); /* input routine */
void (*oput)(Queue*, Block*); /* output routine */
void (*open)(Queue*, Stream*);
void (*close)(Queue*);
char *name;
};
/*
* We reference lance buffers via descriptors kept in host memory
*/
struct Block
{
Block *next;
uchar *rptr; /* first unconsumed byte */
uchar *wptr; /* first empty byte */
uchar *lim; /* 1 past the end of the buffer */
uchar *base; /* start of the buffer */
uchar flags;
uchar type;
};
/* flag bits */
#define S_DELIM 0x80
#define S_CLASS 0x07
/* type values */
#define M_DATA 0
#define M_CTL 1
#define M_HANGUP 2
/*
* a list of blocks
*/
struct Blist {
Lock;
Block *first; /* first data block */
Block *last; /* last data block */
long len; /* length of list in bytes */
};
/*
* a queue of blocks
*/
struct Queue {
Blist;
int flag;
Qinfo *info; /* line discipline definition */
Queue *other; /* opposite direction, same line discipline */
Queue *next; /* next queue in the stream */
void (*put)(Queue*, Block*);
Rendez r;
void *ptr; /* private info for the queue */
};
#define QHUNGUP 0x1 /* flag bit meaning the stream has been hung up */
#define QINUSE 0x2
#define QHIWAT 0x4 /* queue has gone past the high water mark */
/*
* a stream head
*/
struct Stream {
Lock; /* structure lock */
int inuse; /* use count */
int type; /* correclation with Chan */
int dev; /* ... */
int id; /* ... */
QLock rdlock; /* read lock */
QLock wrlock; /* write lock */
Queue *procq; /* write queue at process end */
Queue *devq; /* read queue at device end */
char tag[32]; /* when reading the tag qid */
};
#define RD(q) ((q)->other < (q) ? (q->other) : q)
#define WR(q) ((q)->other > (q) ? (q->other) : q)
#define GLOBAL(a) (((ulong)(a)) & 0x80000000)
#define STREAMTYPE(x) ((x)&0x1f)
#define STREAMID(x) (((x)&~CHDIR)>>5)
#define STREAMQID(i,t) (((i)<<5)|(t))
#define PUTNEXT(q,b) (*(q)->next->put)((q)->next, bp)
/*
* stream file qid's & high water mark
*/
enum {
Shighqid = STREAMQID(1,0) - 1,
Sdataqid = Shighqid,
Sctlqid = Sdataqid-1,
Slowqid = Sctlqid,
Streamhi= (32*1024), /* stream high water mark */
};
#define PRINTSIZE 256
struct
{
Lock;
short machs;
short exiting;
}active;
extern register Mach *m;
extern register User *u;
/*
* Process states
*/
enum
{
Dead = 0,
Moribund,
Zombie,
Ready,
Scheding,
Running,
Queueing,
MMUing,
Exiting,
Inwait,
Wakeme,
Broken,
};
extern char *statename[];
/*
* Chan flags
*/
#define COPEN 1 /* for i/o */
#define CMOUNT 2 /* is result of a mount/bind */
#define CCREATE 4 /* permits creation if CMOUNT */
/*
* Proc.time
*/
enum
{
TUser,
TSys,
TReal,
TCUser,
TCSys,
TCReal,
};
/*
* floating point registers
*/
enum
{
FPinit,
FPactive,
FPinactive,
};
/*
* Memory management
*/
#define SSEG 0
#define TSEG 1
#define DSEG 2
#define BSEG 3
#define ESEG 4 /* used by exec to build new stack */
#define OWRPERM 0x01 /* write permission */
#define OPURE 0x02 /* original data mustn't be written */
#define OCACHED 0x04 /* cached; don't discard on exit */
/*
* Access types in namec
*/
enum
{
Aaccess, /* as in access, stat */
Atodir, /* as in chdir */
Aopen, /* for i/o */
Amount, /* to be mounted upon */
Acreate, /* file is to be created */
};
#define NUMSIZE 12 /* size of formatted number */
#define MACHP(n) ((Mach *)(MACHADDR+n*BY2PG))
extern Conf conf;
extern ulong initcode[];
extern Dev devtab[];
extern char devchar[];
extern FPsave initfp;
.
## diffname power/dat.h 1990/0303
## diff -e /n/bootesdump/1990/0227/sys/src/9/mips/dat.h /n/bootesdump/1990/0303/sys/src/9/mips/dat.h
230a
Chan *mchan;
ulong mqid;
.
229d
96a
Chan *mchan; /* channel to mounted server */
ulong mqid; /* qid of root of mount point */
.
## diffname power/dat.h 1990/0306
## diff -e /n/bootesdump/1990/0303/sys/src/9/mips/dat.h /n/bootesdump/1990/0306/sys/src/9/mips/dat.h
329a
/*
* I/O point for bit interface. This is the easiest way to allocate
* them, but not the prettiest or most general.
*/
Bitmsg bit;
.
77a
struct Bitmsg
{
ulong cmd;
ulong addr;
ulong count;
};
.
1a
typedef struct Bitmsg Bitmsg;
.
## diffname power/dat.h 1990/03081
## diff -e /n/bootesdump/1990/0306/sys/src/9/mips/dat.h /n/bootesdump/1990/03081/sys/src/9/mips/dat.h
303a
Lock kidlock; /* access to kid and sib */
Proc *pop; /* some ascendant */
Proc *kid; /* some descendant */
Proc *sib; /* non-ascendant relatives (circular list) */
.
83a
ulong rcount;
.
## diffname power/dat.h 1990/03091
## diff -e /n/bootesdump/1990/03081/sys/src/9/mips/dat.h /n/bootesdump/1990/03091/sys/src/9/mips/dat.h
32a
typedef struct Stream Stream;
.
29d
## diffname power/dat.h 1990/0312
## diff -e /n/bootesdump/1990/03091/sys/src/9/mips/dat.h /n/bootesdump/1990/0312/sys/src/9/mips/dat.h
442c
#define PUTNEXT(q,b) (*(q)->next->put)((q)->next, b)
#define BLEN(b) ((b)->wptr - (b)->rptr)
.
244a
int nmod;
.
## diffname power/dat.h 1990/0322
## diff -e /n/bootesdump/1990/0312/sys/src/9/mips/dat.h /n/bootesdump/1990/0322/sys/src/9/mips/dat.h
454c
Streamhi= (9*1024), /* stream high water mark */
.
310,311c
Rendez exit; /* child sleeps; parent wakes up */
.
59,60c
int locked; /* flag; is locked */
.
56a
Lock; /* to use object */
.
## diffname power/dat.h 1990/0324
## diff -e /n/bootesdump/1990/0322/sys/src/9/mips/dat.h /n/bootesdump/1990/0324/sys/src/9/mips/dat.h
347c
Bit3msg bit3;
.
344c
* I/O point for bit3 interface. This is the easiest way to allocate
.
310c
int nchild;
QLock wait; /* exiting children to be waited for */
.
79c
struct Bit3msg
.
60c
Lock use; /* to use object */
Lock queue; /* to access list */
.
57d
2c
typedef struct Bit3msg Bit3msg;
.
## diffname power/dat.h 1990/0331
## diff -e /n/bootesdump/1990/0324/sys/src/9/mips/dat.h /n/bootesdump/1990/0331/sys/src/9/mips/dat.h
427a
int hread; /* number of reads after hangup */
.
## diffname power/dat.h 1990/0403
## diff -e /n/bootesdump/1990/0331/sys/src/9/mips/dat.h /n/bootesdump/1990/0403/sys/src/9/mips/dat.h
455c
Streamhi= (9*1024), /* byte count high water mark */
Streambhi= 16, /* block count high water mark */
.
445a
#define QFULL(q) ((q)->flag & QHIWAT)
#define FLOWCTL(q) { if(QFULL(q)) flowctl(q); }
.
409a
int nb; /* number of blocks in queue */
.
## diffname power/dat.h 1990/0406
## diff -e /n/bootesdump/1990/0403/sys/src/9/mips/dat.h /n/bootesdump/1990/0406/sys/src/9/mips/dat.h
458c
Streamhi= (17*1024), /* byte count high water mark */
.
448c
#define FLOWCTL(q) { if(QFULL(q->next)) flowctl(q); }
.
410d
402a
int nb; /* number of blocks in list */
.
## diffname power/dat.h 1990/0504
## diff -e /n/bootesdump/1990/0406/sys/src/9/mips/dat.h /n/bootesdump/1990/0504/sys/src/9/mips/dat.h
125,138c
ulong nalarm; /* alarms */
ulong nchan; /* channels */
ulong nenv; /* distinct environment values */
ulong nenvchar; /* environment text storage */
ulong npgenv; /* environment files per process group */
ulong nmtab; /* mounted-upon channels per process group */
ulong nmount; /* mounts */
ulong nmntdev; /* mounted devices (devmnt.c) */
ulong nmntbuf; /* buffers for devmnt.c messages */
ulong nmnthdr; /* headers for devmnt.c messages */
ulong nstream; /* streams */
ulong nqueue; /* stream queues */
ulong nblock; /* stream blocks */
ulong nsrv; /* public servers (devsrv.c) */
.
118,120c
ulong nmach; /* processors */
ulong nproc; /* processes */
ulong npgrp; /* process groups */
.
## diffname power/dat.h 1990/0608
## diff -e /n/bootesdump/1990/0504/sys/src/9/mips/dat.h /n/bootesdump/1990/0608/sys/src/9/mips/dat.h
348c
Bit3msg kbit3;
Bit3msg ubit3;
.
## diffname power/dat.h 1990/0614
## diff -e /n/bootesdump/1990/0608/sys/src/9/mips/dat.h /n/bootesdump/1990/0614/sys/src/9/mips/dat.h
359a
/*
* Fake kmap
*/
typedef void KMap;
#define VA(k) ((ulong)(k))
#define kmap(p) (KMap*)(p->pa|KZERO)
#define kunmap(k)
.
120a
ulong npage0; /* total physical pages of memory */
.
## diffname power/dat.h 1990/0617
## diff -e /n/bootesdump/1990/0614/sys/src/9/mips/dat.h /n/bootesdump/1990/0617/sys/src/9/mips/dat.h
313c
ulong waitmsg;
.
## diffname power/dat.h 1990/0629
## diff -e /n/bootesdump/1990/0617/sys/src/9/mips/dat.h /n/bootesdump/1990/0629/sys/src/9/mips/dat.h
469a
};
/*
* nonet constants
*/
enum {
Nnomsg = 128, /* max number of outstanding messages */
Nnocalls = 5, /* maximum queued incoming calls */
};
/*
* generic nonet header
*/
struct Nohdr {
uchar circuit[3]; /* circuit number */
uchar flag;
uchar mid; /* message id */
uchar ack; /* piggy back ack */
uchar remain[2]; /* count of remaing bytes of data */
uchar sum[2]; /* checksum (0 means none) */
};
#define HDRSIZE 10
#define NEWCALL 0x1 /* flag bit marking a new circuit */
#define HANGUP 0x2 /* flag bit requesting hangup */
#define ACKME 0x4 /* acknowledge this message */
/*
* a buffer describing a nonet message
*/
struct Nomsg {
QLock;
Blist;
int mid; /* sequence number */
int rem; /* remaining */
long time;
int acked;
};
/*
* one exists for each Nonet conversation.
*/
struct Noconv {
QLock;
Queue *rq; /* input queue */
int version; /* incremented each time struct is changed */
int state; /* true if listening */
Nomsg in[Nnomsg]; /* messages being received */
int rcvcircuit; /* circuit number of incoming packets */
uchar ack[Nnomsg]; /* acknowledgements waiting to be sent */
long atime[Nnomsg];
int afirst;
int anext;
QLock xlock; /* one trasmitter at a time */
Rendez r; /* process waiting for an output mid */
Nomsg ctl; /* for control messages */
Nomsg out[Nnomsg]; /* messages being sent */
int first; /* first unacknowledged message */
int next; /* next message buffer to use */
int lastacked; /* last message acked */
Block *media; /* prototype media output header */
Nohdr *hdr; /* nonet header inside of media header */
Noifc *ifc;
int kstarted;
char raddr[64]; /* remote address */
int rexmit; /* statistics */
int retry;
int bad;
int sent;
int rcvd;
};
/*
* an incoming call
*/
struct Nocall {
Block *msg;
char raddr[64];
long circuit;
};
/*
* a nonet interface. one exists for every stream that a
* nonet multiplexor is pushed onto.
*/
struct Noifc {
Lock;
int ref;
char name[64]; /* interface name */
Queue *wq; /* interface output queue */
Noconv *conv;
/*
* media dependent
*/
int maxtu; /* maximum transfer unit */
int mintu; /* minimum transfer unit */
int hsize; /* media header size */
void (*connect)(Noconv *, char *);
/*
* calls and listeners
*/
QLock listenl;
Rendez listenr;
Lock lock;
Nocall call[Nnocalls];
int rptr;
int wptr;
.
447d
438c
int inuse; /* number of processes in stream */
int opens; /* number of processes with stream open */
.
139a
ulong nnoifc; /* number of nonet interfaces */
ulong nnoconv; /* number of nonet conversations/ifc */
.
20a
typedef struct Nomsg Nomsg;
typedef struct Nocall Nocall;
.
19a
typedef struct Noconv Noconv;
typedef struct Nohdr Nohdr;
typedef struct Noifc Noifc;
.
## diffname power/dat.h 1990/0704
## diff -e /n/bootesdump/1990/0629/sys/src/9/mips/dat.h /n/bootesdump/1990/0704/sys/src/9/mips/dat.h
569c
char name[NAMELEN]; /* interface name */
.
558c
char raddr[NAMELEN];
.
545c
char raddr[NAMELEN]; /* remote address */
char ruser[NAMELEN]; /* remote user */
char addr[NAMELEN]; /* local address */
.
498,501c
#define NO_HDRSIZE 10
#define NO_NEWCALL 0x1 /* flag bit marking a new circuit */
#define NO_HANGUP 0x2 /* flag bit requesting hangup */
#define NO_ACKME 0x4 /* acknowledge this message */
#define NO_SERVICE 0x8 /* message includes a service name */
.
## diffname power/dat.h 1990/0705
## diff -e /n/bootesdump/1990/0704/sys/src/9/mips/dat.h /n/bootesdump/1990/0705/sys/src/9/mips/dat.h
521a
Stream *s;
.
## diffname power/dat.h 1990/0717
## diff -e /n/bootesdump/1990/0705/sys/src/9/mips/dat.h /n/bootesdump/1990/0717/sys/src/9/mips/dat.h
146a
ulong nurp; /* max urp conversations */
.
## diffname power/dat.h 1990/0718
## diff -e /n/bootesdump/1990/0717/sys/src/9/mips/dat.h /n/bootesdump/1990/0718/sys/src/9/mips/dat.h
691a
/*
* kernel based system log, passed between crashes
*/
#define SYSLOG ((Syslog *)(0x80001B00))
#define SYSLOGMAGIC 0x12345678
struct Syslog
{
ulong magic;
char *next;
char buf[16*1024];
};
.
39a
typedef struct Syslog Syslog;
.
## diffname power/dat.h 1990/0720
## diff -e /n/bootesdump/1990/0718/sys/src/9/mips/dat.h /n/bootesdump/1990/0720/sys/src/9/mips/dat.h
703c
char buf[8*1024];
.
697,698c
#define SYSLOG ((Syslog *)(0xa0001B00))
#define SYSLOGMAGIC 0x87654321
.
## diffname power/dat.h 1990/0721
## diff -e /n/bootesdump/1990/0720/sys/src/9/mips/dat.h /n/bootesdump/1990/0721/sys/src/9/mips/dat.h
440a
#define QDEBUG 0x8
.
## diffname power/dat.h 1990/0731
## diff -e /n/bootesdump/1990/0721/sys/src/9/mips/dat.h /n/bootesdump/1990/0731/sys/src/9/mips/dat.h
204a
ulong pc; /* pc that was interrupted */
.
202c
void (*intr)(ulong, ulong); /* pending interrupt */
.
## diffname power/dat.h 1990/0801
## diff -e /n/bootesdump/1990/0731/sys/src/9/mips/dat.h /n/bootesdump/1990/0801/sys/src/9/mips/dat.h
550d
541a
QLock mlock; /* lock for out */
.
535d
517a
int inuse;
.
513a
Rendez r;
.
512d
## diffname power/dat.h 1990/08141
## diff -e /n/bootesdump/1990/0801/sys/src/9/mips/dat.h /n/bootesdump/1990/08141/sys/src/9/mips/dat.h
636a
#define CCEXEC 8 /* close on exec */
.
## diffname power/dat.h 1990/08163
## diff -e /n/bootesdump/1990/08141/sys/src/9/mips/dat.h /n/bootesdump/1990/08163/sys/src/9/mips/dat.h
659c
FPdirty,
.
## diffname power/dat.h 1990/0820
## diff -e /n/bootesdump/1990/08163/sys/src/9/mips/dat.h /n/bootesdump/1990/0820/sys/src/9/mips/dat.h
659c
FPinactive,
.
## diffname power/dat.h 1990/0905
## diff -e /n/bootesdump/1990/0820/sys/src/9/mips/dat.h /n/bootesdump/1990/0905/sys/src/9/mips/dat.h
480c
Streambhi= 32, /* block count high water mark */
.
## diffname power/dat.h 1990/0907
## diff -e /n/bootesdump/1990/0905/sys/src/9/mips/dat.h /n/bootesdump/1990/0907/sys/src/9/mips/dat.h
637a
#define CFREE 16 /* not in use */
.
## diffname power/dat.h 1990/0911
## diff -e /n/bootesdump/1990/0907/sys/src/9/mips/dat.h /n/bootesdump/1990/0911/sys/src/9/mips/dat.h
389a
void (*reset)(void);
Qinfo *next;
.
## diffname power/dat.h 1990/0912
## diff -e /n/bootesdump/1990/0911/sys/src/9/mips/dat.h /n/bootesdump/1990/0912/sys/src/9/mips/dat.h
700,710d
40d
## diffname power/dat.h 1990/1002
## diff -e /n/bootesdump/1990/0912/sys/src/9/mips/dat.h /n/bootesdump/1990/1002/sys/src/9/mips/dat.h
110c
union{
Stream *stream; /* for stream channels */
void *aux;
};
.
## diffname power/dat.h 1990/1009
## diff -e /n/bootesdump/1990/1002/sys/src/9/mips/dat.h /n/bootesdump/1990/1009/sys/src/9/mips/dat.h
460d
453,458c
short inuse; /* number of processes in stream */
short opens; /* number of processes with stream open */
ushort hread; /* number of reads after hangup */
ushort type; /* correlation with Chan */
ushort dev; /* ... */
ushort id; /* ... */
.
150a
ulong nasync; /* number of async protocol modules */
ulong npipe; /* number of pipes */
.
## diffname power/dat.h 1990/1018
## diff -e /n/bootesdump/1990/1009/sys/src/9/mips/dat.h /n/bootesdump/1990/1018/sys/src/9/mips/dat.h
441a
QLock rlock; /* mutex for r */
.
177c
ulong qid;
.
12d
## diffname power/dat.h 1990/1110
## diff -e /n/bootesdump/1990/1018/sys/src/9/mips/dat.h /n/bootesdump/1990/1110/sys/src/9/mips/dat.h
279a
Lock debug; /* single access via devproc.c */
.
275a
int index; /* index in pgrp table */
.
111a
ulong pgrpid; /* for #p/notepg */
.
## diffname power/dat.h 1990/11161
## diff -e /n/bootesdump/1990/1110/sys/src/9/mips/dat.h /n/bootesdump/1990/11161/sys/src/9/mips/dat.h
457c
QLock; /* structure lock */
.
## diffname power/dat.h 1990/11211
## diff -e /n/bootesdump/1990/11161/sys/src/9/mips/dat.h /n/bootesdump/1990/11211/sys/src/9/mips/dat.h
637a
extern char user[NAMELEN];
extern char *errstrtab[];
.
354c
char error[ERRLEN];
.
260d
257c
Qid mqid;
.
255c
Qid qid;
.
177c
Qid qid;
.
170,171d
115c
Qid mqid; /* qid of root of mount point */
.
112c
Qid pgrpid; /* for #p/notepg */
.
105c
Qid qid;
.
## diffname power/dat.h 1990/1122
## diff -e /n/bootesdump/1990/11211/sys/src/9/mips/dat.h /n/bootesdump/1990/1122/sys/src/9/mips/dat.h
92d
## diffname power/dat.h 1990/1124
## diff -e /n/bootesdump/1990/1122/sys/src/9/mips/dat.h /n/bootesdump/1990/1124/sys/src/9/mips/dat.h
342c
#define NERR 20
.
319,322d
## diffname power/dat.h 1990/1211
## diff -e /n/bootesdump/1990/1124/sys/src/9/mips/dat.h /n/bootesdump/1990/1211/sys/src/9/mips/dat.h
700a
/*
* parameters for sysproc.c
*/
#define AOUT_MAGIC V_MAGIC
#define ENTRYOFFSET (-4)
.
317a
ulong bssend; /* initial top of bss seg */
.
151a
ulong maxialloc; /* maximum bytes used by ialloc */
ulong base0; /* base of bank 0 */
ulong base1; /* base of bank 1 */
.
## diffname power/dat.h 1990/1212
## diff -e /n/bootesdump/1990/1211/sys/src/9/mips/dat.h /n/bootesdump/1990/1212/sys/src/9/mips/dat.h
441c
Rendez r; /* standard place to wait for flow control */
Rendez *rp; /* where flow control wakeups go to */
.
380a
#define PPN(x) x
.
338a
int kp; /* true if kernel process */
.
154a
ulong copymode; /* 0 is copy on write, 1 is copy on reference */
.
## diffname power/dat.h 1990/1226
## diff -e /n/bootesdump/1990/1212/sys/src/9/mips/dat.h /n/bootesdump/1990/1226/sys/src/9/mips/dat.h
713d
## diffname power/dat.h 1990/1228
## diff -e /n/bootesdump/1990/1226/sys/src/9/mips/dat.h /n/bootesdump/1990/1228/sys/src/9/mips/dat.h
488a
};
/*
* Ethernet packet buffers.
*/
struct Etherpkt {
uchar d[6];
uchar s[6];
uchar type[2];
uchar data[1500];
uchar crc[4];
.
410a
ulong va; /* virtual address if mapped for a dev */
.
11a
typedef struct Etherpkt Etherpkt;
.
## diffname power/dat.h 1990/1231
## diff -e /n/bootesdump/1990/1228/sys/src/9/mips/dat.h /n/bootesdump/1990/1231/sys/src/9/mips/dat.h
618a
};
/*
* system dependent lance stuff
* filled by lancesetup()
*/
struct Lance
{
ushort lognrrb; /* log2 number of receive ring buffers */
ushort logntrb; /* log2 number of xmit ring buffers */
ushort nrrb; /* number of receive ring buffers */
ushort ntrb; /* number of xmit ring buffers */
ushort *rap; /* lance address register */
ushort *rdp; /* lance data register */
uchar ea[6]; /* our ether addr */
int sep; /* separation between shorts in lance ram
as seen by host */
ushort *lanceram; /* start of lance ram as seen by host */
Lancemem *lm; /* start of lance ram as seen by lance */
Etherpkt *rp; /* receive buffers (host address) */
Etherpkt *tp; /* transmit buffers (host address) */
Etherpkt *lrp; /* receive buffers (lance address) */
Etherpkt *ltp; /* transmit buffers (lance address) */
.
562a
Nomsg ackmsg; /* for acknowledge messages */
.
13a
typedef struct Lance Lance;
typedef struct Lancemem Lancemem;
.
## diffname power/dat.h 1991/0102
## diff -e /n/bootesdump/1990/1231/sys/src/9/mips/dat.h /n/bootesdump/1991/0102/sys/src/9/mips/dat.h
564,565d
## diffname power/dat.h 1991/0109
## diff -e /n/bootesdump/1991/0102/sys/src/9/mips/dat.h /n/bootesdump/1991/0109/sys/src/9/mips/dat.h
633a
ushort busctl; /* bus control bits */
.
622a
* LANCE CSR3 (bus control bits)
*/
#define BSWP 0x4
#define ACON 0x2
#define BCON 0x1
/*
.
329c
Waitmsg waitmsg; /* this is large but must be addressable */
.
## diffname power/dat.h 1991/0118
## diff -e /n/bootesdump/1991/0109/sys/src/9/mips/dat.h /n/bootesdump/1991/0118/sys/src/9/mips/dat.h
539c
ulong time;
.
## diffname power/dat.h 1991/0119
## diff -e /n/bootesdump/1991/0118/sys/src/9/mips/dat.h /n/bootesdump/1991/0119/sys/src/9/mips/dat.h
530c
#define NO_RESET 0x10 /* reset the connection */
.
## diffname power/dat.h 1991/0206
## diff -e /n/bootesdump/1991/0201/sys/src/9/mips/dat.h /n/bootesdump/1991/0206/sys/src/9/power/dat.h
564c
QLock mlock; /* lock for allocating out messages */
.
536d
## diffname power/dat.h 1991/0209
## diff -e /n/bootesdump/1991/0206/sys/src/9/power/dat.h /n/bootesdump/1991/0209/sys/src/9/power/dat.h
366,367c
union{
Bit3msg kbit3;
Hotmsg khot;
};
union{
Bit3msg ubit3;
Hotmsg uhot;
};
.
363c
* I/O point for bit3 and hotrod interfaces.
* This is the easiest way to allocate
.
210,213d
93a
struct Hotmsg
{
ulong cmd;
ulong param[5];
};
.
13a
typedef struct Hotmsg Hotmsg;
.
## diffname power/dat.h 1991/0212
## diff -e /n/bootesdump/1991/0209/sys/src/9/power/dat.h /n/bootesdump/1991/0212/sys/src/9/power/dat.h
288c
QLock debug; /* single access via devproc.c */
.
## diffname power/dat.h 1991/0306
## diff -e /n/bootesdump/1991/0212/sys/src/9/power/dat.h /n/bootesdump/1991/0306/sys/src/9/power/dat.h
376a
};
union{ /* special location for Tflush */
Bit3msg fbit3;
Hotmsg fhot;
.
374c
union{ /* for i/o from user */
.
370c
union{ /* for i/o from kernel */
.
301,306d
98a
Rendez r;
short intr; /* flag: interrupt has occurred */
short abort; /* flag: don't interrupt */
.
70a
struct Rendez
{
Lock;
Proc *p;
};
.
## diffname power/dat.h 1991/0318
## diff -e /n/bootesdump/1991/0306/sys/src/9/power/dat.h /n/bootesdump/1991/0318/sys/src/9/power/dat.h
521a
#define ETHERMINMTU 60 /* minimum transmit size */
.
## diffname power/dat.h 1991/0328
## diff -e /n/bootesdump/1991/0318/sys/src/9/power/dat.h /n/bootesdump/1991/0328/sys/src/9/power/dat.h
523,637d
27,28d
23,25d
## diffname power/dat.h 1991/0402
## diff -e /n/bootesdump/1991/0328/sys/src/9/power/dat.h /n/bootesdump/1991/0402/sys/src/9/power/dat.h
101,102c
uchar intr; /* flag: interrupt has occurred */
uchar abort; /* flag: don't interrupt */
uchar wtype; /* type of last message written */
.
## diffname power/dat.h 1991/0403
## diff -e /n/bootesdump/1991/0402/sys/src/9/power/dat.h /n/bootesdump/1991/0403/sys/src/9/power/dat.h
103c
ushort wlen; /* length of last message written */
.
## diffname power/dat.h 1991/0407
## diff -e /n/bootesdump/1991/0403/sys/src/9/power/dat.h /n/bootesdump/1991/0407/sys/src/9/power/dat.h
518c
#define ETHERMINTU 60 /* minimum transmit size */
#define ETHERMAXTU 1514 /* maximum transmit size */
#define ETHERHDRSIZE 14 /* size of an ethernet header */
.
## diffname power/dat.h 1991/0411
## diff -e /n/bootesdump/1991/0407/sys/src/9/power/dat.h /n/bootesdump/1991/0411/sys/src/9/power/dat.h
483a
Block *err; /* error message from down stream */
.
184,185c
long (*read)(Chan*, void*, long, ulong);
long (*write)(Chan*, void*, long, ulong);
.
109c
QLock rdl; /* read access */
QLock wrl; /* write access */
.
## diffname power/dat.h 1991/0419
## diff -e /n/bootesdump/1991/0411/sys/src/9/power/dat.h /n/bootesdump/1991/0419/sys/src/9/power/dat.h
188a
Chan *(*clwalk)(Chan*, char*);
.
## diffname power/dat.h 1991/0421
## diff -e /n/bootesdump/1991/0419/sys/src/9/power/dat.h /n/bootesdump/1991/0421/sys/src/9/power/dat.h
127a
int mntindex; /* for devmnt */
.
## diffname power/dat.h 1991/0424
## diff -e /n/bootesdump/1991/0421/sys/src/9/power/dat.h /n/bootesdump/1991/0424/sys/src/9/power/dat.h
172a
ulong ipif; /* Ip protocol interfaces */
ulong ip; /* Ip conversations per interface */
ulong arp; /* Arp table size */
ulong frag; /* Ip fragment assemble queue size */
.
## diffname power/dat.h 1991/0425
## diff -e /n/bootesdump/1991/0424/sys/src/9/power/dat.h /n/bootesdump/1991/0425/sys/src/9/power/dat.h
232a
int tlbfault;
int tlbpurge;
int pfault;
int cs;
int syscall;
int spinlock;
int intr;
.
223,224c
int machno; /* physical id of processor NB. MUST BE FIRST */
Softtlb *stb; /* Software tlb simulation NB. MUST BE SECOND */
.
220a
struct Softtlb
{
ulong virt;
ulong phys;
};
.
20a
typedef struct Softtlb Softtlb;
.
## diffname power/dat.h 1991/0427
## diff -e /n/bootesdump/1991/0425/sys/src/9/power/dat.h /n/bootesdump/1991/0427/sys/src/9/power/dat.h
196d
## diffname power/dat.h 1991/0428
## diff -e /n/bootesdump/1991/0427/sys/src/9/power/dat.h /n/bootesdump/1991/0428/sys/src/9/power/dat.h
608,681c
extern register Mach *m;
extern register User *u;
.
606d
593,604c
Proc *p;
int nerrlab;
Label errlab[NERR];
char error[ERRLEN];
FPsave fpsave; /* address of this is known by vdb */
char elem[NAMELEN]; /* last name element from namec */
Chan *slash;
Chan *dot;
Chan *fd[NFD];
int maxfd; /* highest fd in use */
/*
* Rest of structure controlled by devproc.c and friends.
* lock(&p->debug) to modify.
*/
Note note[NNOTE];
short nnote;
short notified; /* sysnoted is due */
int (*notify)(void*, char*);
void *ureg;
/*
* machine dependent User stuff
*/
/*
* I/O point for bit3 and hotrod interfaces.
* This is the easiest way to allocate
* them, but not the prettiest or most general.
*/
union{ /* for i/o from kernel */
Bit3msg kbit3;
Hotmsg khot;
};
union{ /* for i/o from user */
Bit3msg ubit3;
Hotmsg uhot;
};
union{ /* special location for Tflush */
Bit3msg fbit3;
Hotmsg fhot;
};
.
588,591c
#define NERR 15
#define NNOTE 5
#define NFD 100
struct User
.
585,586c
#define MACHP(n) ((Mach *)(MACHADDR+n*BY2PG))
.
577d
425,546d
260,414d
253,257c
ulong virt;
ulong phys;
.
251c
/*
* machine dependent definitions not used by ../port/dat.h
*/
struct Softtlb
.
223,224c
ulong cmd;
ulong param[5];
Rendez r;
uchar intr; /* flag: interrupt has occurred */
uchar abort; /* flag: don't interrupt */
ushort wlen; /* length of last message written */
.
221c
struct Hotmsg
.
217,218c
ulong cmd;
ulong addr;
ulong count;
ulong rcount;
.
215c
/*
* machine dependent definitions not used by ../port/dat.h
*/
struct Bit3msg
.
206,213c
#include "../port/portdat.h"
.
200,203c
long fpreg[32];
long fpstatus;
.
198c
struct FPsave
.
183,195c
FPinit,
FPactive,
FPinactive,
.
181c
/*
* floating point registers
*/
enum
.
79,140d
53,72d
42,45c
/*
* machine dependent definitions used by ../port/dat.h
*/
.
40c
/*
* parameters for sysproc.c
*/
#define AOUT_MAGIC V_MAGIC
.
22,36d
20a
typedef struct MMU MMU;
.
18d
7,12d
3,5d
1d
## diffname power/dat.h 1991/0503
## diff -e /n/bootesdump/1991/0428/sys/src/9/power/dat.h /n/bootesdump/1991/0503/sys/src/9/power/dat.h
220a
ulong svstatus;
.
## diffname power/dat.h 1991/0507
## diff -e /n/bootesdump/1991/0503/sys/src/9/power/dat.h /n/bootesdump/1991/0507/sys/src/9/power/dat.h
89a
};
/*
* mmu goo in the Proc structure
*/
struct PMMU
{
int pidonmach[MAXMACH];
.
10a
typedef struct PMMU PMMU;
.
## diffname power/dat.h 1991/0608
## diff -e /n/bootesdump/1991/0507/sys/src/9/power/dat.h /n/bootesdump/1991/0608/sys/src/9/power/dat.h
74c
ulong cntrlp; /* panic on ^P */
.
## diffname power/dat.h 1991/0705
## diff -e /n/bootesdump/1991/0608/sys/src/9/power/dat.h /n/bootesdump/1991/0705/sys/src/9/power/dat.h
219,220d
208d
162c
#define kmap(p) (KMap*)((p)->pa|KZERO)
.
135a
Page *ufreeme; /* address of upage of exited process */
.
44,46c
ulong nseg; /* number of segments */
ulong nimage; /* number of page cache image headers */
ulong npagetab; /* number of pte tables */
ulong nswap; /* number of swap pages */
.
## diffname power/dat.h 1991/0711
## diff -e /n/bootesdump/1991/0705/sys/src/9/power/dat.h /n/bootesdump/1991/0711/sys/src/9/power/dat.h
139c
int tlbfault; /* this offset known in l.s/utlbmiss() */
.
## diffname power/dat.h 1991/0717
## diff -e /n/bootesdump/1991/0711/sys/src/9/power/dat.h /n/bootesdump/1991/0717/sys/src/9/power/dat.h
226a
Note lastnote;
.
## diffname power/dat.h 1991/0803
## diff -e /n/bootesdump/1991/0717/sys/src/9/power/dat.h /n/bootesdump/1991/0803/sys/src/9/power/dat.h
42a
ulong npage1; /* total physical pages of memory */
.
## diffname power/dat.h 1991/1011
## diff -e /n/bootesdump/1991/0803/sys/src/9/power/dat.h /n/bootesdump/1991/1011/sys/src/9/power/dat.h
129a
ulong splpc; /* pc that called splhi() */
.
## diffname power/dat.h 1991/1107
## diff -e /n/bootesdump/1991/1011/sys/src/9/power/dat.h /n/bootesdump/1991/1107/sys/src/9/power/dat.h
76a
ulong dkif; /* number of datakit interfaces */
.
## diffname power/dat.h 1991/1110
## diff -e /n/bootesdump/1991/1107/sys/src/9/power/dat.h /n/bootesdump/1991/1110/sys/src/9/power/dat.h
232c
void *ureg; /* User registers for notes */
void *dbgreg; /* User registers for debugging in proc */
.
219c
FPsave fpsave; /* address of this is known by db */
.
## diffname power/dat.h 1991/1111
## diff -e /n/bootesdump/1991/1110/sys/src/9/power/dat.h /n/bootesdump/1991/1111/sys/src/9/power/dat.h
219d
215a
FPsave fpsave; /* address of this is known by db */
.
## diffname power/dat.h 1991/1112
## diff -e /n/bootesdump/1991/1111/sys/src/9/power/dat.h /n/bootesdump/1991/1112/sys/src/9/power/dat.h
147c
int load;
.
## diffname power/dat.h 1992/0102
## diff -e /n/bootesdump/1991/1112/sys/src/9/power/dat.h /n/bootesdump/1992/0102/sys/src/9/power/dat.h
234a
ulong svr1;
.
## diffname power/dat.h 1992/0228
## diff -e /n/bootesdump/1992/0102/sys/src/9/power/dat.h /n/bootesdump/1992/0228/sys/src/9/power/dat.h
63,64d
## diffname power/dat.h 1992/0508
## diff -e /n/bootesdump/1992/0228/sys/src/9/power/dat.h /n/bootesdump/1992/0508/sys/src/9/power/dat.h
146a
int ledval; /* value last written to LED */
.
## diffname power/dat.h 1992/0613
## diff -e /n/bootesdump/1992/0508/sys/src/9/power/dat.h /n/bootesdump/1992/0613/sys/src/9/power/dat.h
243,254c
Cycmsg kcyc;
Cycmsg ucyc;
Cycmsg fcyc;
.
239c
* I/O point for hotrod interfaces.
.
224c
* qlock(&p->debug) to modify.
.
121,122d
110,117d
104,107c
struct Cycmsg
.
4c
typedef struct Cycmsg Cycmsg;
.
1d
## diffname power/dat.h 1992/0622
## diff -e /n/bootesdump/1992/0613/sys/src/9/power/dat.h /n/bootesdump/1992/0622/sys/src/9/power/dat.h
64,65d
60d
53,57d
48,49d
46d
44c
ulong upages; /* user page pool */
.
40d
26c
int val;
.
## diffname power/dat.h 1992/0623
## diff -e /n/bootesdump/1992/0622/sys/src/9/power/dat.h /n/bootesdump/1992/0623/sys/src/9/power/dat.h
46,53d
## diffname power/dat.h 1992/0625
## diff -e /n/bootesdump/1992/0623/sys/src/9/power/dat.h /n/bootesdump/1992/0625/sys/src/9/power/dat.h
187a
Sargs s;
.
54d
## diffname power/dat.h 1992/06271
## diff -e /n/bootesdump/1992/0625/sys/src/9/power/dat.h /n/bootesdump/1992/06271/sys/src/9/power/dat.h
186a
int scallnr; /* sys call number */
.
## diffname power/dat.h 1992/0629
## diff -e /n/bootesdump/1992/06271/sys/src/9/power/dat.h /n/bootesdump/1992/0629/sys/src/9/power/dat.h
187,188d
180a
int scallnr; /* sys call number - known by db */
Sargs s; /* address of this is known by db */
.
## diffname power/dat.h 1992/0725
## diff -e /n/bootesdump/1992/0629/sys/src/9/power/dat.h /n/bootesdump/1992/0725/sys/src/9/power/dat.h
53d
## diffname power/dat.h 1992/0819
## diff -e /n/bootesdump/1992/0725/sys/src/9/power/dat.h /n/bootesdump/1992/0819/sys/src/9/power/dat.h
33a
ulong pc;
.
32d
## diffname power/dat.h 1992/1129
## diff -e /n/bootesdump/1992/0819/sys/src/9/power/dat.h /n/bootesdump/1992/1129/sys/src/9/power/dat.h
111a
ulong cause;
ulong status;
ulong ur;
ulong sp;
.
## diffname power/dat.h 1992/1130
## diff -e /n/bootesdump/1992/1129/sys/src/9/power/dat.h /n/bootesdump/1992/1130/sys/src/9/power/dat.h
112,115d
## diffname power/dat.h 1992/1202
## diff -e /n/bootesdump/1992/1130/sys/src/9/power/dat.h /n/bootesdump/1992/1202/sys/src/9/power/dat.h
102a
Ureg *ur;
.
## diffname power/dat.h 1992/1220
## diff -e /n/bootesdump/1992/1202/sys/src/9/power/dat.h /n/bootesdump/1992/1220/sys/src/9/power/dat.h
52a
ulong debugger; /* use processor 1 as a kernel debugger */
.
## diffname power/dat.h 1993/0206
## diff -e /n/bootesdump/1992/1220/sys/src/9/power/dat.h /n/bootesdump/1993/0206/sys/src/9/power/dat.h
49,52d
## diffname power/dat.h 1993/0501
## diff -e /n/bootesdump/1993/0206/sys/src/9/power/dat.h /n/fornaxdump/1993/0501/sys/src/brazil/power/dat.h
213c
extern register Proc *up;
.
172,211d
98c
Proc *pidproc[NTLBPID]; /* tlb allocation table */
.
92d
90a
/* Ok to change from here */
.
88,89c
int machno; /* physical id of processor */
Softtlb *stb; /* Software tlb simulation */
Proc *proc; /* current process on this processor */
.
85a
/* First FOUR members offsets known by l.s */
.
73a
/*
* I/O point for hotrod interfaces.
* This is the easiest way to allocate
* them, but not the prettiest or most general.
*/
Cycmsg *kcyc;
Cycmsg *ucyc;
Cycmsg *fcyc;
.
48a
ulong ipif; /* Ip protocol interfaces */
ulong ip; /* Ip conversations per interface */
ulong arp; /* Arp table size */
ulong frag; /* Ip fragment assemble queue size */
.
13,14d
## diffname power/dat.h 1993/0806
## diff -e /n/fornaxdump/1993/0501/sys/src/brazil/power/dat.h /n/fornaxdump/1993/0806/sys/src/brazil/power/dat.h
169,172c
Lancepkt *rp; /* receive buffers (host address) */
Lancepkt *tp; /* transmit buffers (host address) */
Lancepkt *lrp; /* receive buffers (lance address) */
Lancepkt *ltp; /* transmit buffers (lance address) */
.
150a
struct Lancepkt
{
uchar d[6];
uchar s[6];
uchar type[2];
uchar data[1500];
uchar crc[4];
};
.
1a
typedef struct Lancepkt Lancepkt;
.
## diffname power/dat.h 1993/1015
## diff -e /n/fornaxdump/1993/0806/sys/src/brazil/power/dat.h /n/fornaxdump/1993/1015/sys/src/brazil/power/dat.h
84a
};
/*
* things saved in the Proc structure during a notify
*/
struct Notsave
{
ulong svstatus;
ulong svr1;
.
10a
typedef struct Notsave Notsave;
.
## diffname power/dat.h 1993/1201
## diff -e /n/fornaxdump/1993/1015/sys/src/brazil/power/dat.h /n/fornaxdump/1993/1201/sys/src/brazil/power/dat.h
132a
int otlbfault;
.
## diffname power/dat.h 1993/1204
## diff -e /n/fornaxdump/1993/1201/sys/src/brazil/power/dat.h /n/fornaxdump/1993/1204/sys/src/brazil/power/dat.h
133a
Schedq runq;
.
## diffname power/dat.h 1993/1214
## diff -e /n/fornaxdump/1993/1204/sys/src/brazil/power/dat.h /n/fornaxdump/1993/1214/sys/src/brazil/power/dat.h
134c
Schedq hiq;
Schedq loq;
.
## diffname power/dat.h 1994/0405
## diff -e /n/fornaxdump/1993/1214/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0405/sys/src/brazil/power/dat.h
135a
Callbk* cbin;
Callbk* cbout;
Callbk* cbend;
Callbk calls[NCALLBACK];
.
53a
ulong ialloc; /* bytes available for interrupt time allocation */
.
27a
ulong sr;
.
## diffname power/dat.h 1994/0406
## diff -e /n/fornaxdump/1994/0405/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0406/sys/src/brazil/power/dat.h
127d
123,125c
Proc *pidproc[NTLBPID]; /* process that owns this tlbpid on this mach */
.
121d
115a
int tlbfault; /* this offset known in l.s/utlbmiss() */
.
101,108d
80,87d
4d
## diffname power/dat.h 1994/0503
## diff -e /n/fornaxdump/1994/0406/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0503/sys/src/brazil/power/dat.h
54a
ulong pipeqsize; /* size in bytes of pipe queues */
.
## diffname power/dat.h 1994/0509
## diff -e /n/fornaxdump/1994/0503/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0509/sys/src/brazil/power/dat.h
121,125d
## diffname power/dat.h 1994/0612
## diff -e /n/fornaxdump/1994/0509/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0612/sys/src/brazil/power/dat.h
17c
#define EXEC_MAGIC(magic) (magic==V_MAGIC)
.
## diffname power/dat.h 1994/0728
## diff -e /n/fornaxdump/1994/0612/sys/src/brazil/power/dat.h /n/fornaxdump/1994/0728/sys/src/brazil/power/dat.h
118,119c
int nrdy;
.
## diffname power/dat.h 1995/0108
## diff -e /n/fornaxdump/1994/0728/sys/src/brazil/power/dat.h /n/fornaxdump/1995/0108/sys/src/brazil/power/dat.h
140c
#define AOUT_MAGIC V_MAGIC || magic==M_MAGIC
.
## diffname power/dat.h 1995/02021
## diff -e /n/fornaxdump/1995/0108/sys/src/brazil/power/dat.h /n/fornaxdump/1995/02021/sys/src/brazil/power/dat.h
87,88c
int UNUSED;
.
## diffname power/dat.h 1995/1030
## diff -e /n/fornaxdump/1995/02021/sys/src/brazil/power/dat.h /n/fornaxdump/1995/1030/sys/src/brazil/power/dat.h
27a
ulong pid;
.
## diffname power/dat.h 1996/0511
## diff -e /n/fornaxdump/1995/1030/sys/src/brazil/power/dat.h /n/fornaxdump/1996/0511/sys/src/brazil/power/dat.h
28a
int pri;
.
## diffname power/dat.h 1996/0523
## diff -e /n/fornaxdump/1996/0511/sys/src/brazil/power/dat.h /n/fornaxdump/1996/0523/sys/src/brazil/power/dat.h
29d
## diffname power/dat.h 1997/0327 # deleted
## diff -e /n/fornaxdump/1996/0523/sys/src/brazil/power/dat.h /n/emeliedump/1997/0327/sys/src/brazil/power/dat.h
1,191d
|