[PATCH] pids: kill PIDTYPE_TGID
Oleg Nesterov authored

This patch kills PIDTYPE_TGID pid_type thus saving one hash table in
kernel/pid.c and speeding up subthreads create/destroy a bit.  It is also a
preparation for the further tref/pids rework.

This patch adds 'struct list_head thread_group' to 'struct task_struct'
instead.

We don't detach group leader from PIDTYPE_PID namespace until another
thread inherits it's ->pid == ->tgid, so we are safe wrt premature
free_pidmap(->tgid) call.

Currently there are no users of find_task_by_pid_type(PIDTYPE_TGID).
Should the need arise, we can use find_task_by_pid()->group_leader.
Signed-off-by: default avatarOleg Nesterov <oleg@tv-sign.ru>
Acked-By: default avatarEric Biederman <ebiederm@xmission.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
47e65328
Name Last commit Last update
..
irq [PATCH] warn if free_irq() is called from IRQ context
power [PATCH] swswsup: return correct load_image error
.gitignore gitignore: ignore more generated files
Kconfig.hz [PATCH] i386: Selectable Frequency of the Timer Interrupt
Kconfig.preempt [PATCH] sched: voluntary kernel preemption
Makefile [PATCH] lightweight robust futexes: compat
acct.c [PATCH] move capable() to capability.h
audit.c [PATCH] fix audit_init failure path
audit.h [PATCH] sem2mutex: audit_netlink_sem
auditfilter.c [PATCH] sem2mutex: audit_netlink_sem
auditsc.c Merge branch 'audit.b3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
capability.c [PATCH] refactor capable() to one implementation, add __capable() helper
compat.c [PATCH] lightweight robust futexes: compat
configs.c update the email address of Randy Dunlap
cpu.c [PATCH] Notifier chain update: API changes
cpuset.c [PATCH] cpuset: remove useless local variable initialization
dma.c Linux-2.6.12-rc2
exec_domain.c [PATCH] Fix module refcount leak in __set_personality()
exit.c [PATCH] pids: kill PIDTYPE_TGID
extable.c Linux-2.6.12-rc2
fork.c [PATCH] pids: kill PIDTYPE_TGID
futex.c [PATCH] lightweight robust futexes updates
futex_compat.c [PATCH] compat_sys_futex() warning fix
hrtimer.c [PATCH] hrtimers: remove data field
intermodule.c [PATCH] missing license tag in intermodule
itimer.c
kallsyms.c
kexec.c
kfifo.c
kmod.c
kprobes.c
ksysfs.c
kthread.c
module.c
mutex-debug.c
mutex-debug.h
mutex.c
mutex.h
panic.c
params.c
pid.c
posix-cpu-timers.c
posix-timers.c
printk.c
profile.c
ptrace.c
rcupdate.c
rcutorture.c
relay.c
resource.c
sched.c
seccomp.c
signal.c
softirq.c
softlockup.c
spinlock.c
stop_machine.c
sys.c
sys_ni.c
sysctl.c
time.c
timer.c
uid16.c
user.c
wait.c
workqueue.c