Rev 3343 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3343 | Rev 3665 | ||
---|---|---|---|
Line 188... | Line 188... | ||
188 | * L_PARENT performs a lookup but returns the triplet of the parent node. |
188 | * L_PARENT performs a lookup but returns the triplet of the parent node. |
189 | * This flag may not be combined with any other lookup flag. |
189 | * This flag may not be combined with any other lookup flag. |
190 | */ |
190 | */ |
191 | #define L_PARENT 64 |
191 | #define L_PARENT 64 |
192 | 192 | ||
- | 193 | typedef enum vfs_node_type { |
|
- | 194 | VFS_NODE_UNKNOWN, |
|
- | 195 | VFS_NODE_FILE, |
|
- | 196 | VFS_NODE_DIRECTORY, |
|
- | 197 | } vfs_node_type_t; |
|
- | 198 | ||
193 | typedef struct { |
199 | typedef struct { |
194 | vfs_triplet_t triplet; |
200 | vfs_triplet_t triplet; |
- | 201 | vfs_node_type_t type; |
|
195 | size_t size; |
202 | size_t size; |
196 | unsigned lnkcnt; |
203 | unsigned lnkcnt; |
197 | } vfs_lookup_res_t; |
204 | } vfs_lookup_res_t; |
198 | 205 | ||
199 | /** |
206 | /** |
Line 211... | Line 218... | ||
211 | 218 | ||
212 | /** Number of names this node has in the file system namespace. */ |
219 | /** Number of names this node has in the file system namespace. */ |
213 | unsigned lnkcnt; |
220 | unsigned lnkcnt; |
214 | 221 | ||
215 | link_t nh_link; /**< Node hash-table link. */ |
222 | link_t nh_link; /**< Node hash-table link. */ |
- | 223 | ||
- | 224 | vfs_node_type_t type; /**< Partial info about the node type. */ |
|
- | 225 | ||
216 | size_t size; /**< Cached size if the node is a file. */ |
226 | size_t size; /**< Cached size if the node is a file. */ |
217 | 227 | ||
218 | /** |
228 | /** |
219 | * Holding this rwlock prevents modifications of the node's contents. |
229 | * Holding this rwlock prevents modifications of the node's contents. |
220 | */ |
230 | */ |