Remove procgroup->refs
All checks were successful
Build documentation / build-and-deploy (push) Successful in 3m12s
All checks were successful
Build documentation / build-and-deploy (push) Successful in 3m12s
This commit is contained in:
@@ -145,7 +145,6 @@ struct procgroup* procgroup_create (void) {
|
||||
|
||||
memset (procgroup, 0, sizeof (*procgroup));
|
||||
|
||||
procgroup->refs = 0;
|
||||
procgroup->memb_proc_tree = NULL;
|
||||
procgroup->lock = SPIN_LOCK_INIT;
|
||||
procgroup->pgid = atomic_fetch_add (&pgids, 1);
|
||||
@@ -171,7 +170,6 @@ void procgroup_attach (struct procgroup* procgroup, struct proc* proc) {
|
||||
|
||||
rbtree_insert (struct proc, &procgroup->memb_proc_tree, &proc->procgroup_memb_tree_link,
|
||||
procgroup_memb_tree_link, pid);
|
||||
atomic_fetch_add (&procgroup->refs, 1);
|
||||
|
||||
spin_unlock (&proc->lock);
|
||||
spin_unlock (&procgroup->lock);
|
||||
@@ -183,12 +181,12 @@ void procgroup_detach (struct procgroup* procgroup, struct proc* proc,
|
||||
spin_lock (&proc->lock);
|
||||
|
||||
rbtree_delete (&procgroup->memb_proc_tree, &proc->procgroup_memb_tree_link);
|
||||
int refs = atomic_fetch_sub (&procgroup->refs, 1);
|
||||
struct rb_node_link* memb_tree = procgroup->memb_proc_tree;
|
||||
|
||||
spin_unlock (&proc->lock);
|
||||
spin_unlock (&procgroup->lock);
|
||||
|
||||
if (refs == 1) {
|
||||
if (memb_tree == NULL) {
|
||||
spin_lock (&procgroup_tree_lock);
|
||||
spin_lock (&procgroup->lock);
|
||||
|
||||
|
||||
@@ -25,9 +25,7 @@ struct procgroup {
|
||||
struct rb_node_link procgroup_tree_link;
|
||||
struct rb_node_link* memb_proc_tree;
|
||||
spin_lock_t lock;
|
||||
atomic_int refs;
|
||||
struct rb_node_link* resource_tree;
|
||||
atomic_int sys_rids;
|
||||
struct pd pd;
|
||||
struct list_node_link* mappings;
|
||||
uintptr_t map_base;
|
||||
|
||||
Reference in New Issue
Block a user