posix-cpu-timers: Fix nanosleep task_struct leak
authorStanislaw Gruszka <sgruszka@redhat.com>
Fri, 15 Feb 2013 10:08:11 +0000 (11:08 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 6 Mar 2013 03:24:01 +0000 (03:24 +0000)
commitde80ffb430582159b78f6f6fb3bb240f7ab7034f
tree88ae4233ba84a5beb2160f36a82f040308843843
parentb6803d8d50f015c043c507bf251b51df6bfb8d7b
posix-cpu-timers: Fix nanosleep task_struct leak

commit e6c42c295e071dd74a66b5a9fcf4f44049888ed8 upstream.

The trinity fuzzer triggered a task_struct reference leak via
clock_nanosleep with CPU_TIMERs. do_cpu_nanosleep() calls
posic_cpu_timer_create(), but misses a corresponding
posix_cpu_timer_del() which leads to the task_struct reference leak.

Reported-and-tested-by: Tommi Rantala <tt.rantala@gmail.com>
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Cc: Dave Jones <davej@redhat.com>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Link: http://lkml.kernel.org/r/20130215100810.GF4392@redhat.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
kernel/posix-cpu-timers.c