Generalize use of Vnode::covered_by/covers

* Introduce Vnode flags for covered and covering. Can be used as a quick
  check when one doesn't already hold sVnodeLock.
* Rename resolve_mount_point_to_volume_root() to
  resolve_vnode_to_covering_vnode().
* Adjust all code that deals with transitions between mount points and
  volume root vnodes to generally support covered/covering vnodes.
This commit is contained in:
Ingo Weinhold
2011-07-17 16:54:20 +02:00
parent 3cc710798b
commit 2e21fc5436
4 changed files with 219 additions and 125 deletions
+1 -1
View File
@@ -143,7 +143,7 @@ status_t vfs_create_special_node(const char *path, fs_vnode *subVnode,
struct vnode **_createdVnode);
/* service call for the node monitor */
status_t resolve_mount_point_to_volume_root(dev_t mountID, ino_t nodeID,
status_t resolve_vnode_to_covering_vnode(dev_t mountID, ino_t nodeID,
dev_t *resolvedMountID, ino_t *resolvedNodeID);
/* calls the syscall dispatcher should use for user file I/O */