Redesign VFS around handles

This commit is contained in:
2026-02-22 13:57:41 +01:00
parent b571e2dbd3
commit 85872b856b
10 changed files with 210 additions and 196 deletions

View File

@@ -197,6 +197,8 @@ void procgroup_detach (struct procgroup* procgroup, struct proc* proc,
spin_unlock (&procgroup->lock);
spin_unlock (&procgroup_tree_lock);
struct list_node_link* resource_delete_list = NULL;
/* delete resources */
struct rb_node_link* rnode;
rbtree_first (&procgroup->resource_tree, rnode);
@@ -209,6 +211,16 @@ void procgroup_detach (struct procgroup* procgroup, struct proc* proc,
rnode = next;
list_append (resource_delete_list, &resource->delete_list_link);
}
struct list_node_link *resource_delete_link, *resource_delete_tmp_link;
list_foreach (resource_delete_list, resource_delete_link, resource_delete_tmp_link) {
struct proc_resource* resource =
list_entry (resource_delete_link, struct proc_resource, delete_list_link);
list_remove (resource_delete_list, &resource->delete_list_link);
proc_delete_resource (resource, rctx);
}