Scroll to navigation

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

April 2023 Kernel Hackers Manual 2.6.