Xiaotian Feng
a2ef990ab5
proc: fix null pointer deref in proc_pid_permission()
...
get_proc_task() can fail to search the task and return NULL,
put_task_struct() will then bomb the kernel with following oops:
BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
IP: [<ffffffff81217d34>] proc_pid_permission+0x64/0xe0
PGD 112075067 PUD 112814067 PMD 0
Oops: 0002 [#1 ] PREEMPT SMP
This is a regression introduced by commit 0499680a ("procfs: add hidepid=
and gid= mount options"). The kernel should return -ESRCH if
get_proc_task() failed.
Signed-off-by: Xiaotian Feng <dannyfeng@tencent.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Vasiliy Kulikov <segoon@openwall.com>
Cc: Stephen Wilson <wilsons@start.ca>
Acked-by: David Rientjes <rientjes@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-01-12 20:13:02 -08:00
..
2012-01-10 15:09:01 -08:00
2012-01-06 23:19:54 -05:00
2012-01-03 22:55:04 -05:00
2012-01-03 22:54:53 -05:00
2012-01-11 00:20:12 -05:00
2012-01-03 22:52:40 -05:00
2012-01-03 22:54:53 -05:00
2012-01-10 16:59:59 -08:00
2012-01-03 22:54:07 -05:00
2012-01-09 16:36:12 -05:00
2012-01-08 12:19:57 -08:00
2012-01-10 11:13:16 -05:00
2012-01-03 22:54:57 -05:00
2012-01-06 23:15:54 -05:00
2012-01-08 12:19:57 -08:00
2012-01-08 20:19:03 -05:00
2012-01-10 14:55:55 -08:00
2012-01-06 23:19:54 -05:00
2012-01-03 22:52:40 -05:00
2012-01-09 12:51:01 -08:00
2011-03-15 02:21:44 -04:00
2012-01-09 12:51:21 -08:00
2012-01-09 12:51:21 -08:00
2012-01-10 11:54:07 -05:00
2012-01-09 12:09:47 -08:00
2012-01-03 22:55:10 -05:00
2011-07-21 10:59:16 -07:00
2012-01-06 23:19:54 -05:00
2012-01-10 14:55:55 -08:00
2012-01-06 23:19:54 -05:00
2012-01-10 17:48:52 -05:00
2012-01-06 23:19:54 -05:00
2012-01-03 22:54:54 -05:00
2012-01-03 22:52:41 -05:00
2012-01-03 22:55:05 -05:00
2012-01-09 10:48:11 -05:00
2012-01-09 12:51:21 -08:00
2012-01-10 11:54:07 -05:00
2012-01-10 13:45:22 -08:00
2012-01-08 13:10:57 -08:00
2012-01-06 23:16:53 -05:00
2012-01-10 13:45:22 -08:00
2012-01-08 12:19:57 -08:00
2012-01-06 23:19:54 -05:00
2012-01-10 14:57:40 -08:00
2011-03-31 11:26:23 -03:00
2012-01-10 14:57:40 -08:00
2012-01-08 13:10:57 -08:00
2011-11-26 19:58:47 -08:00
2012-01-03 22:57:12 -05:00
2012-01-06 23:19:54 -05:00
2012-01-10 14:55:55 -08:00
2012-01-03 22:55:01 -05:00
2012-01-03 22:52:40 -05:00
2012-01-12 20:13:02 -08:00
2011-11-18 13:49:00 -08:00
2012-01-08 13:21:22 -08:00
2012-01-06 23:16:53 -05:00
2012-01-03 22:55:07 -05:00
2012-01-10 16:30:54 -08:00
2012-01-10 13:45:22 -08:00
2012-01-03 22:52:40 -05:00
2012-01-03 22:55:03 -05:00
2012-01-06 23:16:53 -05:00
2012-01-10 14:57:19 -08:00
2012-01-09 12:51:21 -08:00
2012-01-06 23:19:54 -05:00
2012-01-09 12:50:15 -08:00
2011-11-02 16:07:03 -07:00
2011-07-26 12:57:09 -04:00
2012-01-03 22:55:11 -05:00
2012-01-03 22:54:54 -05:00
2010-10-14 10:57:40 -07:00
2011-07-20 01:43:10 -04:00
2012-01-10 16:30:51 -08:00
2011-05-03 10:10:51 +10:00
2012-01-06 23:16:53 -05:00
2011-10-31 19:30:31 -04:00
2011-11-16 09:21:50 +01:00
2012-01-10 13:08:55 -05:00
2012-01-03 22:54:07 -05:00
2011-12-13 11:18:17 -08:00
2012-01-05 15:40:12 -08:00
2012-01-03 22:55:19 -05:00
2012-01-10 13:06:32 -05:00
2011-05-31 16:33:35 +02:00
2011-10-28 14:58:58 +02:00
2011-05-25 08:39:26 -07:00
2011-02-21 15:07:04 -08:00
2011-10-31 17:30:57 -07:00
2012-01-10 16:30:44 -08:00
2011-03-23 19:47:13 -07:00
2012-01-06 23:16:53 -05:00
2011-03-21 00:16:09 -04:00
2012-01-06 23:20:13 -05:00
2011-04-28 11:28:20 -07:00
2012-01-03 22:52:39 -05:00
2011-01-16 13:47:07 -05:00
2012-01-10 16:59:59 -08:00
2011-08-01 02:10:06 -04:00
2012-01-10 16:30:42 -08:00
2012-01-06 23:20:12 -05:00
2012-01-05 15:40:12 -08:00
2011-10-31 19:30:31 -04:00
2012-01-09 12:51:01 -08:00
2012-01-10 16:30:51 -08:00
2012-01-03 22:54:07 -05:00
2011-12-26 10:25:26 -08:00
2012-01-06 23:15:54 -05:00
2011-05-25 08:39:26 -07:00
2012-01-06 23:20:12 -05:00
2011-05-26 10:01:43 -06:00
2012-01-06 23:15:54 -05:00
2012-01-08 13:21:22 -08:00
2010-10-15 15:53:27 +02:00
2012-01-06 23:16:53 -05:00
2012-01-03 22:52:41 -05:00
2012-01-03 22:57:11 -05:00
2012-01-03 22:57:11 -05:00
2011-10-28 14:58:54 +02:00
2012-01-06 23:19:54 -05:00
2011-10-31 17:30:44 -07:00
2011-03-21 00:16:08 -04:00
2012-01-03 22:52:40 -05:00
2010-10-26 10:13:10 -07:00
2012-01-03 22:54:07 -05:00
2011-11-02 12:53:43 +01:00
2011-11-02 12:53:42 +01:00
2012-01-03 22:53:07 -05:00
2012-01-06 23:20:13 -05:00
2012-01-03 22:54:07 -05:00
2011-06-14 11:46:14 +02:00
2011-03-23 19:47:13 -07:00
2012-01-03 22:52:40 -05:00