Files
tegra-linux-noble/include/linux
Cyrill Gorcunov bbc2e3ef87 pidns: remove recursion from free_pid_ns()
free_pid_ns() operates in a recursive fashion:

free_pid_ns(parent)
  put_pid_ns(parent)
    kref_put(&ns->kref, free_pid_ns);
      free_pid_ns

thus if there was a huge nesting of namespaces the userspace may trigger
avalanche calling of free_pid_ns leading to kernel stack exhausting and a
panic eventually.

This patch turns the recursion into an iterative loop.

Based on a patch by Andrew Vagin.

[akpm@linux-foundation.org: export put_pid_ns() to modules]
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
Cc: Andrew Vagin <avagin@openvz.org>
Cc: Oleg Nesterov <oleg@redhat.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Pavel Emelyanov <xemul@parallels.com>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-19 14:07:47 -07:00
..
2012-09-19 19:08:53 -06:00
2012-10-08 13:50:20 +10:30
2012-09-19 19:08:46 -06:00
2012-09-20 14:31:45 +02:00
2012-09-17 15:00:38 -07:00
2012-10-16 18:49:15 -07:00
2012-09-26 21:10:00 -04:00
2012-10-16 13:37:17 -04:00
2012-10-06 03:04:56 +09:00
2012-09-11 10:15:02 +02:00
2012-09-26 13:52:36 -07:00
2012-10-10 01:15:44 -04:00
2012-09-17 15:00:37 -07:00
2012-10-09 16:22:54 +09:00
2012-10-09 16:23:00 +09:00
2012-10-10 20:00:55 +10:30
2012-10-17 15:53:01 -05:00
2012-10-17 15:53:02 -05:00
2012-10-10 22:41:05 -04:00
2012-10-05 22:23:53 +02:00
2012-10-11 08:50:16 +09:00
2012-10-06 03:05:01 +09:00
2012-09-27 12:45:28 +02:00
2012-10-11 20:02:04 -04:00
2012-10-07 00:40:54 -04:00
2012-10-09 16:22:55 +09:00
2012-10-09 16:22:32 +09:00