THREADGROUP_LOCK(9) Driver Basics THREADGROUP_LOCK(9)
NAME
threadgroup_lock - lock threadgroup
SYNOPSIS
void threadgroup_lock(struct task_struct * tsk);
ARGUMENTS
tsk
member task of the threadgroup to lock
DESCRIPTION
Lock the threadgroup tsk belongs to. No new task is allowed to enter and member tasks aren't allowed to exit (as indicated by PF_EXITING)
or change ->group_leader/pid. This is useful for cases where the threadgroup needs to stay stable across blockable operations.
fork and exit paths explicitly call threadgroup_change_{begin|end}() for synchronization. While held, no new task will be added to
threadgroup and no existing live task will have its PF_EXITING set.
de_thread does threadgroup_change_{begin|end}() when a non-leader sub-thread becomes a new leader.
COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 THREADGROUP_LOCK(9)