xv6/fsvar.h
rtm 211ff0c67e namei returns locked parent dir inode for create / unlink
don't hold fd table lock across idecref() (latter does block i/o)
idecref calls iput() in case last ref -> freeing inode
dir size is 512 * # blocks, so readi/writei &c work
unlink deletes dirent even if ip->nlink > 0
2006-08-13 12:22:44 +00:00

20 lines
285 B
C

// in-core file system types
struct inode {
uint dev;
uint inum;
int count;
int busy;
short type;
short major;
short minor;
short nlink;
uint size;
uint addrs[NDIRECT];
};
extern uint rootdev;
#define NAMEI_LOOKUP 1
#define NAMEI_CREATE 2
#define NAMEI_DELETE 3