Print this page
patch as-lock-macro-simplification
*** 2511,2521 ****
tree = &p->p_wpage;
else
tree = &as->a_wpage;
mutex_exit(&p->p_lock);
! AS_LOCK_ENTER(as, &as->a_lock, RW_WRITER);
for (pwp = avl_first(tree); pwp != NULL;
pwp = AVL_NEXT(tree, pwp)) {
pwp->wp_read = 0;
pwp->wp_write = 0;
--- 2511,2521 ----
tree = &p->p_wpage;
else
tree = &as->a_wpage;
mutex_exit(&p->p_lock);
! AS_LOCK_ENTER(as, RW_WRITER);
for (pwp = avl_first(tree); pwp != NULL;
pwp = AVL_NEXT(tree, pwp)) {
pwp->wp_read = 0;
pwp->wp_write = 0;
*** 2526,2536 ****
pwp->wp_list = p->p_wprot;
p->p_wprot = pwp;
}
}
! AS_LOCK_EXIT(as, &as->a_lock);
mutex_enter(&p->p_lock);
}
/*
* Unpause the process now.
--- 2526,2536 ----
pwp->wp_list = p->p_wprot;
p->p_wprot = pwp;
}
}
! AS_LOCK_EXIT(as);
mutex_enter(&p->p_lock);
}
/*
* Unpause the process now.