diff options
author | 2012-02-28 12:39:56 +0000 | |
---|---|---|
committer | 2012-02-28 12:40:01 +0000 | |
commit | 4d8cfec692e988b844dcaeaeb76b5780b7ef9d28 (patch) | |
tree | 67d43adab2afd18a74d08f347e3676ae1a64193f /kernel/fork.c | |
parent | Merge branch 'davinci/cleanups' into next/cleanup (diff) | |
parent | rtc: sa1100: remove verification code of alarm (diff) | |
download | wireguard-linux-4d8cfec692e988b844dcaeaeb76b5780b7ef9d28.tar.xz wireguard-linux-4d8cfec692e988b844dcaeaeb76b5780b7ef9d28.zip |
Merge branch 'cleanup-3.4' of git://github.com/hzhuang1/linux into next/cleanup
* 'cleanup-3.4' of git://github.com/hzhuang1/linux: (2 commits)
rtc: sa1100: remove verification code of alarm
rtc: sa1100: remove periodic code
(update to v3.3-rc5)
Diffstat (limited to 'kernel/fork.c')
-rw-r--r-- | kernel/fork.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/kernel/fork.c b/kernel/fork.c index 1b2ef3c23ae4..e2cd3e2a5ae8 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -66,6 +66,7 @@ #include <linux/user-return-notifier.h> #include <linux/oom.h> #include <linux/khugepaged.h> +#include <linux/signalfd.h> #include <asm/pgtable.h> #include <asm/pgalloc.h> @@ -910,7 +911,7 @@ static int copy_io(unsigned long clone_flags, struct task_struct *tsk) return -ENOMEM; new_ioc->ioprio = ioc->ioprio; - put_io_context(new_ioc, NULL); + put_io_context(new_ioc); } #endif return 0; @@ -935,8 +936,10 @@ static int copy_sighand(unsigned long clone_flags, struct task_struct *tsk) void __cleanup_sighand(struct sighand_struct *sighand) { - if (atomic_dec_and_test(&sighand->count)) + if (atomic_dec_and_test(&sighand->count)) { + signalfd_cleanup(sighand); kmem_cache_free(sighand_cachep, sighand); + } } |