Revision a98fdcef941e107eeabae622d85a1f476f25a160 authored by Oleg Nesterov on 14 January 2008, 21:02:37 UTC, committed by Linus Torvalds on 14 January 2008, 21:23:00 UTC
Commit 84427eaef1fb91704c7112bdb598c810003b99f3 (remove task_ppid_nr_ns) moved the task_tgid_nr_ns(task->real_parent) outside of lock_task_sighand(). This is wrong, ->real_parent could be freed/reused. Both ->parent/real_parent point to nothing after __exit_signal() because we remove the child from ->children list, and thus the child can't be reparented when its parent exits. rcu_read_lock() protects ->parent/real_parent, but _only_ if we know it was valid before we take rcu lock. Revert this part of the patch. Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 4fd3670
File | Mode | Size |
---|---|---|
ircomm | ||
irlan | ||
irnet | ||
Kconfig | -rw-r--r-- | 3.3 KB |
Makefile | -rw-r--r-- | 503 bytes |
af_irda.c | -rw-r--r-- | 66.3 KB |
discovery.c | -rw-r--r-- | 12.4 KB |
irda_device.c | -rw-r--r-- | 12.1 KB |
iriap.c | -rw-r--r-- | 26.3 KB |
iriap_event.c | -rw-r--r-- | 12.5 KB |
irias_object.c | -rw-r--r-- | 13.4 KB |
irlap.c | -rw-r--r-- | 33.8 KB |
irlap_event.c | -rw-r--r-- | 64.6 KB |
irlap_frame.c | -rw-r--r-- | 36.3 KB |
irlmp.c | -rw-r--r-- | 54.5 KB |
irlmp_event.c | -rw-r--r-- | 26.2 KB |
irlmp_frame.c | -rw-r--r-- | 14.1 KB |
irmod.c | -rw-r--r-- | 5.4 KB |
irnetlink.c | -rw-r--r-- | 3.4 KB |
irproc.c | -rw-r--r-- | 2.6 KB |
irqueue.c | -rw-r--r-- | 22.8 KB |
irsysctl.c | -rw-r--r-- | 7.7 KB |
irttp.c | -rw-r--r-- | 50.8 KB |
parameters.c | -rw-r--r-- | 15.4 KB |
qos.c | -rw-r--r-- | 22.4 KB |
timer.c | -rw-r--r-- | 6.3 KB |
wrapper.c | -rw-r--r-- | 13.1 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...