diff options
author | Marcus Brinkmann <marcus@gnu.org> | 2003-08-06 21:47:57 +0000 |
---|---|---|
committer | Marcus Brinkmann <marcus@gnu.org> | 2003-08-06 21:47:57 +0000 |
commit | 6e2b18cb2cfb66fa773d08528a1feed4a46ebf01 (patch) | |
tree | 037835c20fc7f46b5f86fd332c2e37bb7165458a /fatfs/fatfs.h | |
parent | 26868aa93185c14a1939ab9b0a4d08bc07f15b6a (diff) | |
download | hurd-6e2b18cb2cfb66fa773d08528a1feed4a46ebf01.tar.gz hurd-6e2b18cb2cfb66fa773d08528a1feed4a46ebf01.tar.bz2 hurd-6e2b18cb2cfb66fa773d08528a1feed4a46ebf01.zip |
2003-08-03 Marco Gerards <metgerards@student.han.nl>
* fatfs.h (struct disknode): New member DIRNODE.
* inode.c (read_node): Added assertion to be sure the directory
can always be found. Add directory dependancy to node by
initializing DIRNODE and holding a reference.
(diskfs_node_norefs): Release reference to DIRNODE.
(write_node): Don't use diskfs_cached_lookup to lookup the
directory, use DIRNODE instead and lock DP. Don't use diskfs_nput,
use mutex_unlock instead.
(diskfs_alloc_node): Add directory dependancy to node by
initializing DIRNODE and holding a reference.
Diffstat (limited to 'fatfs/fatfs.h')
-rw-r--r-- | fatfs/fatfs.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fatfs/fatfs.h b/fatfs/fatfs.h index 943ccad3..16b058a8 100644 --- a/fatfs/fatfs.h +++ b/fatfs/fatfs.h @@ -42,6 +42,9 @@ struct disknode /* The inode as returned by virtual inode management routines. */ inode_t inode; + /* The directory that hold this file, always hold a reference. */ + struct node *dirnode; + struct rwlock dirent_lock; char *link_target; /* For S_ISLNK. */ |