1 typedef struct Ibuf Ibuf;
2 typedef struct Imap Imap;
3 typedef struct Icache Icache;
7 Nicache= 64, /* number of inodes kept in pool */
11 * a cached inode buffer
15 Lru; /* must be first in structure */
16 int inuse; /* non-0 if in use */
17 ulong ino; /* index into inode table */
18 Inode inode; /* the inode contents */
22 * in-core qid to inode mapping
26 Lru; /* must be first in structure */
28 Ibuf *b; /* cache buffer */
29 int inuse; /* non-0 if in use */
39 int nino; /* number of inodes */
40 ulong ib0; /* first inode block */
41 int nib; /* number of inode blocks */
42 int i2b; /* inodes to a block */
44 Ibuf ib[Nicache]; /* inode buffers */
47 Imap *map; /* inode to qid mapping */
51 Ibuf* ialloc(Icache*, ulong);
52 Ibuf* iget(Icache*, Qid);
53 Ibuf* iread(Icache*, ulong);
54 int iformat(Icache*, int, ulong, char*, int, int);
55 int iinit(Icache*, int, int, char*);
56 int iremove(Icache*, ulong);
57 int iupdate(Icache*, ulong, Qid);
58 int iwrite(Icache*, Ibuf*);
59 void ifree(Icache*, Ibuf*);
60 void iinc(Icache*, Ibuf*);