pids: Move the pgrp and session pid pointers from task_struct to signal_struct
To access these fields the code always has to go to group leader so
going to signal struct is no loss and is actually a fundamental simplification.
This saves a little bit of memory by only allocating the pid pointer array
once instead of once for every thread, and even better this removes a
few potential races caused by the fact that group_leader can be changed
by de_thread, while signal_struct can not.
Signed-off-by:
"Eric W. Biederman" <ebiederm@xmission.com>
Showing
- arch/ia64/kernel/asm-offsets.c 1 addition, 1 deletionarch/ia64/kernel/asm-offsets.c
- arch/ia64/kernel/fsys.S 2 additions, 2 deletionsarch/ia64/kernel/fsys.S
- fs/autofs/autofs_i.h 1 addition, 0 deletionsfs/autofs/autofs_i.h
- include/linux/init_task.h 0 additions, 9 deletionsinclude/linux/init_task.h
- include/linux/pid.h 1 addition, 7 deletionsinclude/linux/pid.h
- include/linux/sched.h 4 additions, 18 deletionsinclude/linux/sched.h
- include/linux/sched/signal.h 23 additions, 3 deletionsinclude/linux/sched/signal.h
- init/init_task.c 6 additions, 5 deletionsinit/init_task.c
- kernel/fork.c 18 additions, 5 deletionskernel/fork.c
- kernel/pid.c 22 additions, 23 deletionskernel/pid.c
Loading
Please register or sign in to comment