]> git.baikalelectronics.ru Git - kernel.git/commit
posix-cpu-timer: Tidy up group_leader logic in lookup_task
authorEric W. Biederman <ebiederm@xmission.com>
Mon, 27 Apr 2020 19:32:54 +0000 (14:32 -0500)
committerEric W. Biederman <ebiederm@xmission.com>
Tue, 28 Apr 2020 21:42:03 +0000 (16:42 -0500)
commit5a12eb610591e72c7bd49d77af10422915f60223
treeef0a0c158926256c3877092de317f00a0d2079be
parent8170a2bf11bdd5c56fe574312f6c57590b4be507
posix-cpu-timer: Tidy up group_leader logic in lookup_task

Replace has_group_leader_pid with thread_group_leader.  Years ago Oleg
suggested changing thread_group_leader to has_group_leader_pid to handle
races.  Looking at the code then and now I don't see how it ever helped.
Especially as then the code really did need to be the
thread_group_leader.

Today it doesn't make a difference if thread_group_leader races with
de_thread as the task returned from lookup_task in the non-thread case is
just used to find values in task->signal.

Since the races with de_thread have never been handled revert
has_group_header_pid to thread_group_leader for clarity.

Update the comment in lookup_task to remove implementation details that
are no longer true and to mention task->signal instead of task->sighand,
as the relevant cpu timer details are all in task->signal.

Ref: 52a323cd661b ("posix-cpu-timers: Store a reference to a pid not a task")
Ref: 128f28c4bffd ("posix-cpu-timers: Rcu_read_lock/unlock protect find_task_by_vpid call")
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
kernel/time/posix-cpu-timers.c