Lines Matching refs:group
140 int lwp_session_insert(rt_session_t session, rt_processgroup_t group) in lwp_session_insert() argument
143 if (session == RT_NULL || group == RT_NULL) in lwp_session_insert()
149 PGRP_LOCK_NESTED(group); in lwp_session_insert()
151 group->sid = session->sid; in lwp_session_insert()
152 group->session = session; in lwp_session_insert()
153 lwp_pgrp_update_children_info(group, session->sid, group->pgid); in lwp_session_insert()
154 rt_list_insert_after(&(session->processgroup), &(group->pgrp_list_node)); in lwp_session_insert()
156 PGRP_UNLOCK(group); in lwp_session_insert()
162 int lwp_session_remove(rt_session_t session, rt_processgroup_t group) in lwp_session_remove() argument
167 if (session == RT_NULL || group == RT_NULL) in lwp_session_remove()
173 PGRP_LOCK_NESTED(group); in lwp_session_remove()
175 rt_list_remove(&(group->pgrp_list_node)); in lwp_session_remove()
177 lwp_pgrp_update_children_info(group, 0, group->pgid); in lwp_session_remove()
178 group->sid = 0; in lwp_session_remove()
179 group->session = RT_NULL; in lwp_session_remove()
181 PGRP_UNLOCK(group); in lwp_session_remove()
196 int lwp_session_move(rt_session_t session, rt_processgroup_t group) in lwp_session_move() argument
201 if (session == RT_NULL || group == RT_NULL) in lwp_session_move()
206 if (lwp_sid_get_bysession(session) == lwp_sid_get_bypgrp(group)) in lwp_session_move()
213 prev_session = group->session; in lwp_session_move()
217 lwp_session_remove(prev_session, group); in lwp_session_move()
221 lwp_session_insert(session, group); in lwp_session_move()
231 rt_processgroup_t group = RT_NULL; in lwp_session_update_children_info() local
242 group = (rt_processgroup_t)rt_list_entry(node, struct rt_processgroup, pgrp_list_node); in lwp_session_update_children_info()
243 PGRP_LOCK_NESTED(group); in lwp_session_update_children_info()
246 group->sid = sid; in lwp_session_update_children_info()
247 group->session = session; in lwp_session_update_children_info()
248 lwp_pgrp_update_children_info(group, sid, group->pgid); in lwp_session_update_children_info()
250 PGRP_UNLOCK(group); in lwp_session_update_children_info()
259 rt_processgroup_t group = RT_NULL; in lwp_session_set_foreground() local
273 group = (rt_processgroup_t)rt_list_entry(node, struct rt_processgroup, pgrp_list_node); in lwp_session_set_foreground()
274 PGRP_LOCK(group); in lwp_session_set_foreground()
275 if (group->pgid == pgid) in lwp_session_set_foreground()
279 PGRP_UNLOCK(group); in lwp_session_set_foreground()
303 rt_processgroup_t group; in sys_setsid() local
319 group = lwp_pgrp_create(process); in sys_setsid()
320 if (group) in sys_setsid()
322 lwp_pgrp_move(group, process); in sys_setsid()
326 lwp_session_move(session, group); in sys_setsid()
330 lwp_pgrp_delete(group); in sys_setsid()