aboutsummaryrefslogtreecommitdiff
path: root/fatfs/fatfs.h
diff options
context:
space:
mode:
authorMarcus Brinkmann <marcus@gnu.org>2003-08-06 21:47:57 +0000
committerMarcus Brinkmann <marcus@gnu.org>2003-08-06 21:47:57 +0000
commit6e2b18cb2cfb66fa773d08528a1feed4a46ebf01 (patch)
tree037835c20fc7f46b5f86fd332c2e37bb7165458a /fatfs/fatfs.h
parent26868aa93185c14a1939ab9b0a4d08bc07f15b6a (diff)
downloadhurd-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.h3
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. */