| plan 9 kernel history: overview | file list | diff list |
2001/0527/port/portdat.h (diff list | history)
| 2001/0511/sys/src/9/port/portdat.h:9,15 – 2001/0527/sys/src/9/port/portdat.h:9,14 (short | long | prev | next) | ||
|
9P2000 changes XXX
rsc Fri Mar 4 12:44:25 2005 | ||
| 1991/0705 | typedef struct Egrp Egrp; | |
| 1992/0623 | typedef struct Evalue Evalue; | |
| 1991/0705 | typedef struct Fgrp Fgrp; | |
| 2000/1205 |
| |
| 1991/0705 | typedef struct Image Image; | |
| 1991/0428 | typedef struct List List; | |
| 1999/0316 | typedef struct Log Log; | |
| 2001/0511/sys/src/9/port/portdat.h:24,29 – 2001/0527/sys/src/9/port/portdat.h:23,29 | ||
| 1991/0428 | typedef struct Page Page; | |
| 1991/0705 | typedef struct Palloc Palloc; | |
| 1992/0128 | typedef struct Pgrps Pgrps; | |
| 2001/0527 | typedef struct PhysUart PhysUart; | |
| 1991/0428 | typedef struct Pgrp Pgrp; | |
| 1993/0210 | typedef struct Physseg Physseg; | |
| 1991/0428 | typedef struct Proc Proc; | |
| 2001/0511/sys/src/9/port/portdat.h:40,51 – 2001/0527/sys/src/9/port/portdat.h:40,51 | ||
| 1993/0501 | typedef struct Session Session; | |
| 1992/0602 | typedef struct Talarm Talarm; | |
| 1994/0221 | typedef struct Target Target; | |
| 2001/0527 | typedef struct Uart Uart; | |
| 1991/0926 | typedef struct Waitq Waitq; | |
| 2001/0315 |
| |
| 1992/0307 |
| |
| 2001/0527 | typedef struct Walkqid Walkqid; typedef int Devgen(Chan*, char*, Dirtab*, int, int, Dir*); | |
| 1991/0428 | ||
| 1999/0316 | ||
| 1993/0330 |
| |
| 1992/0619 | ||
| 1991/0428 | struct Ref | |
| 2001/0511/sys/src/9/port/portdat.h:102,116 – 2001/0527/sys/src/9/port/portdat.h:102,117 | ||
| 1991/0428 | */ enum { | |
| 1991/0724 |
| |
| 2001/0527 | Aaccess, /* as in stat, wstat */ | |
| 1991/0724 | Atodir, /* as in chdir */ Aopen, /* for i/o */ | |
| 2001/0527 | Amount, /* to be mounted or mounted upon */ Acreate, /* is to be created */ Aremove, /* will be removed by caller */ | |
| 1993/0501 | COPEN = 0x0001, /* for i/o */ CMSG = 0x0002, /* the message channel for a mount */ | |
| 2001/0527 | /*rsc CCREATE = 0x0004, /* permits creation if c->mnt */ | |
| 1993/0501 | CCEXEC = 0x0008, /* close on exec */ CFREE = 0x0010, /* not in use */ CRCLOSE = 0x0020, /* remove on close */ | |
| 2001/0511/sys/src/9/port/portdat.h:149,156 – 2001/0527/sys/src/9/port/portdat.h:150,159 | ||
| 1991/0428 | ushort flag; Qid qid; int fid; /* for devmnt */ | |
| 1998/0829 |
| |
| 2001/0527 | ulong iounit; /* chunk size for i/o; 0==default */ Mhead* umh; /* mount point that derived Chan; used in unionread */ Chan* umc; /* channel in union; held for union read */ QLock umqlock; /* serialize unionreads */ | |
| 1998/0829 | int uri; /* union read index */ | |
| 1993/0501 | ulong mountid; | |
| 1993/1013 | Mntcache *mcp; /* Mount cache pointer */ | |
| 2001/0511/sys/src/9/port/portdat.h:163,168 – 2001/0527/sys/src/9/port/portdat.h:166,172 | ||
| 1994/0225 | Chan* mchan; /* channel to mounted server */ | |
| 1991/0428 | Qid mqid; /* qid of root of mount point */ | |
| 1994/0225 | Session*session; | |
| 2001/0527 | char *version; /* 9P version */ | |
| 1999/0629 | Cname *name; | |
| 1991/0428 | }; | |
| 2001/0511/sys/src/9/port/portdat.h:182,190 – 2001/0527/sys/src/9/port/portdat.h:186,193 | ||
| 1992/0824 | void (*reset)(void); void (*init)(void); Chan* (*attach)(char*); | |
| 2001/0527 | Walkqid* (*walk)(Chan*, Chan*, char**, int); int (*stat)(Chan*, uchar*, int); | |
| 1992/0824 | Chan* (*open)(Chan*, int); void (*create)(Chan*, char*, int, ulong); void (*close)(Chan*); | |
| 2001/0511/sys/src/9/port/portdat.h:193,211 – 2001/0527/sys/src/9/port/portdat.h:196,219 | ||
| 1998/0319 | long (*write)(Chan*, void*, long, vlong); | |
| 1995/0108 | long (*bwrite)(Chan*, Block*, ulong); | |
| 1992/0824 | void (*remove)(Chan*); | |
| 2000/1122 |
| |
| 2000/1205 |
| |
| 2001/0527 | int (*wstat)(Chan*, uchar*, int); | |
| 1991/0428 | }; struct Dirtab { | |
| 2001/0527 | char name[KNAMELEN]; | |
| 1991/0428 | Qid qid; | |
| 2000/1215 |
| |
| 2001/0527 | vlong length; | |
| 1991/0428 | long perm; | |
| 1992/0808 | }; | |
| 1992/0824 | ||
| 2001/0527 | struct Walkqid { Chan *clone; int nqid; Qid qid[1]; }; | |
| 1993/0501 | enum { NSMAX = 1000, | |
| 2001/0511/sys/src/9/port/portdat.h:229,236 – 2001/0527/sys/src/9/port/portdat.h:237,244 | ||
| 1994/0613 | Mount* copy; Mount* order; | |
| 1994/0225 | Chan* to; /* channel replacing channel */ | |
| 1993/0501 |
| |
| 2001/0527 | int mflag; char *spec; | |
| 1991/0428 | }; | |
| 1991/1011 | struct Mhead | |
| 2001/0511/sys/src/9/port/portdat.h:251,259 – 2001/0527/sys/src/9/port/portdat.h:259,264 | ||
| 1999/1105 | ulong id; /* Multiplexer id for channel check */ | |
| 1993/0501 | Mnt *list; /* Free list */ | |
| 1999/1105 | int flags; /* cache */ | |
| 1993/0501 |
| |
| 1993/1121 |
| |
| 1993/0501 | }; | |
| 1992/0307 | enum | |
| 2001/0511/sys/src/9/port/portdat.h:265,271 – 2001/0527/sys/src/9/port/portdat.h:270,276 | ||
| 1991/0428 | struct Note { | |
| 2001/0527 | char msg[ERRMAX]; | |
| 1991/0428 | int flag; /* whether system posted it */ }; | |
| 2001/0511/sys/src/9/port/portdat.h:386,399 – 2001/0527/sys/src/9/port/portdat.h:391,406 | ||
| 1991/0705 | ||
| 1992/0824 | enum { | |
| 2001/0527 | RENDLOG = 5, RENDHASH = 1<<RENDLOG, /* Hash to lookup rendezvous tags */ MNTLOG = 5, MNTHASH = 1<<MNTLOG, /* Hash to walk mount table */ | |
| 1993/0501 | NFD = 100, /* per process file descriptors */ | |
| 1992/1209 | PGHLOG = 9, PGHSIZE = 1<<PGHLOG, /* Page hash for image lookup */ | |
| 1992/0824 | }; | |
| 1991/0806 |
| |
| 1991/1011 |
| |
| 2001/0527 | #define REND(p,s) ((p)->rendhash[(s)&((1<<RENDLOG)-1)]) #define MOUNTH(p,qid) ((p)->mnthash[(qid).path&((1<<MNTLOG)-1)]) | |
| 1991/0806 | ||
| 1991/0428 | struct Pgrp { | |
| 2001/0511/sys/src/9/port/portdat.h:532,544 – 2001/0527/sys/src/9/port/portdat.h:539,551 | ||
| 1993/0501 | Label sched; /* known to l.s */ char *kstack; /* known to l.s */ Mach *mach; /* machine running this proc */ | |
| 1991/0428 |
| |
| 1991/1105 |
| |
| 2001/0527 | char *text; char *user; | |
| 2001/0511 | char *args; int nargs; /* number of bytes of args */ | |
| 1993/0501 | Proc *rnext; /* next process in run queue */ Proc *qnext; /* next process on queue for a QLock */ | |
| 2001/0527 | QLock *qlock; /* addr of qlock being queued for DEBUG */ | |
| 1991/0428 | int state; | |
| 1993/0501 | char *psstate; /* What /proc/#/status reports */ | |
| 1991/0705 | Segment *seg[NSEG]; | |
| 2001/0511/sys/src/9/port/portdat.h:597,604 – 2001/0527/sys/src/9/port/portdat.h:604,611 | ||
| 1993/0501 | Sargs s; /* address of this is known by db */ int nerrlab; Label errlab[NERR]; | |
| 2001/0527 | char error[ERRMAX]; char genbuf[128]; /* buffer used e.g. for last name element from namec */ | |
| 1993/0501 | Chan *slash; Chan *dot; | |
| 2001/0511/sys/src/9/port/portdat.h:623,629 – 2001/0527/sys/src/9/port/portdat.h:630,635 | ||
| 1998/0516 | * that last preempted it */ | |
| 1999/0110 | ulong qpc; /* pc calling last blocking qlock */ | |
| 2001/0127 |
| |
| 1993/1204 | ||
| 1993/0501 | void *ureg; /* User registers for notes */ void *dbgreg; /* User registers for devproc */ | |
| 2001/0511/sys/src/9/port/portdat.h:648,696 – 2001/0527/sys/src/9/port/portdat.h:654,677 | ||
| 1992/0625 | extern char* conffile; extern int cpuserver; | |
| 1997/0327 | extern Dev* devtab[]; | |
| 1991/1109 |
| |
| 2001/0527 | extern char *eve; | |
| 1993/0330 | extern char hostdomain[]; | |
| 1992/0902 | extern uchar initcode[]; | |
| 1992/0625 | extern FPsave initfp; | |
| 1997/0327 | extern Queue* kbdq; | |
| 2001/0527 | extern Queue* kprintoq; | |
| 1992/0625 | extern Ref noteidalloc; | |
| 1991/1112 |
| |
| 1993/0501 | extern Palloc palloc; | |
| 1993/0601 |
| |
| 2001/0527 | extern Queue *serialoq; | |
| 1992/0625 | extern char* statename[]; extern Image swapimage; | |
| 1992/0321 |
| |
| 2001/0527 | extern int nsyscall; extern char *sysname; | |
| 1993/0501 | extern Pthash syspt; | |
| 1992/0602 | extern Talarm talarm; | |
| 1991/0428 | ||
| 1992/0824 | enum { | |
| 1993/0323 |
| |
| 1992/0824 |
| |
| 1992/0318 |
| |
| 1992/0625 |
| |
| 1992/0318 |
| |
| 1992/0321 |
| |
| 1992/0318 |
| |
| 1992/0321 |
| |
| 1992/0318 |
| |
| 1993/0501 |
| |
| 1994/0221 |
| |
| 1992/1021 |
| |
| 1996/0303 | LRESPROF = 3, | |
| 1999/0316 | }; | |
| 2001/0511/sys/src/9/port/portdat.h:725,732 – 2001/0527/sys/src/9/port/portdat.h:706,792 | ||
| 1999/0316 | int nf; | |
| 1996/0303 | }; | |
| 1994/0814 | ||
| 1994/0407 |
| |
| 2001/0527 | /* * routines to access UART hardware */ struct PhysUart { char* name; Uart* (*pnp)(void); void (*enable)(Uart*, int); void (*disable)(Uart*); void (*kick)(Uart*); void (*dobreak)(Uart*, int); int (*baud)(Uart*, int); int (*bits)(Uart*, int); int (*stop)(Uart*, int); int (*parity)(Uart*, int); void (*modemctl)(Uart*, int); void (*rts)(Uart*, int); void (*dtr)(Uart*, int); long (*status)(Uart*, void*, long, long); void (*fifo)(Uart*, int); }; | |
| 1998/0811 | ||
| 2001/0527 | enum { Stagesize= 1024 }; /* * software UART */ struct Uart { void* regs; /* hardware stuff */ char* name; /* internal name */ ulong freq; /* clock frequency */ int bits; /* bits per character */ int stop; /* stop bits */ int parity; /* even, odd or no parity */ int baud; /* baud rate */ PhysUart*phys; int console; /* used as a serial console */ int special; /* internal kernel device */ Uart* next; /* list of allocated uarts */ QLock; int type; /* ?? */ int dev; int opens; int enabled; Uart *elist; /* next enabled interface */ int perr; /* parity errors */ int ferr; /* framing errors */ int oerr; /* rcvr overruns */ /* buffers */ int (*putc)(Queue*, int); Queue *iq; Queue *oq; uchar istage[Stagesize]; uchar *iw; uchar *ir; uchar *ie; Lock tlock; /* transmit */ uchar ostage[Stagesize]; uchar *op; uchar *oe; int modem; /* hardware flow control on */ int xonoff; /* software flow control on */ int blocked; int cts, dsr, dcd, dcdts; /* keep track of modem status */ int ctsbackoff; int hup_dsr, hup_dcd; /* send hangup upstream? */ int dohup; Rendez r; }; | |
| 1999/1230 | #define DEVDOTDOT -1 | |
| 1998/0811 | #pragma varargck argpos print 1 | |
| 2001/0511/sys/src/9/port/portdat.h:755,761 – 2001/0527/sys/src/9/port/portdat.h:815,820 | ||
| 1998/0811 | #pragma varargck type "e" double #pragma varargck type "g" double #pragma varargck type "s" char* | |
| 2001/0511 |
| |
| 1998/0811 | #pragma varargck type "S" Rune* #pragma varargck type "r" void #pragma varargck type "%" void | |
| 2001/0511/sys/src/9/port/portdat.h:764,766 – 2001/0527/sys/src/9/port/portdat.h:823,826 | ||
| 1998/0811 | #pragma varargck type "E" uchar* #pragma varargck type "M" uchar* | |
| 1999/0517 | #pragma varargck type "p" void* | |
| 2001/0527 | #pragma varargck type "q" char* | |