Will Deacon
42309ab450
ARM: 8087/1: ptrace: reload syscall number after secure_computing() check
...
On the syscall tracing path, we call out to secure_computing() to allow
seccomp to check the syscall number being attempted. As part of this, a
SIGTRAP may be sent to the tracer and the syscall could be re-written by
a subsequent SET_SYSCALL ptrace request. Unfortunately, this new syscall
is ignored by the current code unless TIF_SYSCALL_TRACE is also set on
the current thread.
This patch slightly reworks the enter path of the syscall tracing code
so that we always reload the syscall number from
current_thread_info()->syscall after the potential ptrace traps.
Acked-by: Kees Cook <keescook@chromium.org>
Tested-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2014-06-29 10:29:35 +01:00
..
2008-08-12 19:54:09 +01:00
2013-10-09 16:54:10 -07:00
2014-04-03 22:46:34 +01:00
2008-05-17 22:55:16 +01:00
2014-03-03 01:15:23 +00:00
2012-09-03 22:55:56 +01:00
2014-06-01 01:17:12 +01:00
2013-04-09 14:13:32 -04:00
2013-07-26 14:55:59 +01:00
2014-05-30 10:50:57 -06:00
2014-04-23 11:27:42 +01:00
2012-03-21 01:59:40 -04:00
2014-04-07 12:10:00 +01:00
2013-01-16 14:30:06 -08:00
2014-06-05 15:57:04 -07:00
2009-12-24 18:34:08 +00:00
2011-09-13 11:12:14 +02:00
2013-04-29 18:28:13 -07:00
2012-03-28 18:30:01 +01:00
2014-06-05 12:35:52 +01:00
2014-06-02 09:20:20 +01:00
2014-06-05 12:35:52 +01:00
2013-12-29 12:32:32 +00:00
2013-12-29 12:32:34 +00:00
2013-08-20 00:11:50 +01:00
2011-05-26 10:31:06 +01:00
2014-04-23 01:24:31 +01:00
2014-06-02 09:20:18 +01:00
2013-12-13 20:25:30 +00:00
2014-06-05 12:35:52 +01:00
2014-04-23 01:24:14 +01:00
2014-04-07 14:55:46 -07:00
2013-07-22 14:30:34 +01:00
2012-03-30 11:51:46 +01:00
2012-03-24 09:38:56 +00:00
2014-01-28 14:06:25 +00:00
2014-05-30 00:49:00 +01:00
2014-06-06 16:08:15 -07:00
2014-06-05 12:35:52 +01:00
2012-03-24 09:38:56 +00:00
2010-10-29 13:14:40 -05:00
2014-03-18 16:39:40 -04:00
2014-04-01 16:45:19 +03:00
2014-04-01 16:48:24 +03:00
2014-04-01 16:48:26 +03:00
2014-04-01 16:48:27 +03:00
2014-04-01 16:48:27 +03:00
2014-04-01 16:45:19 +03:00
2014-04-01 16:45:19 +03:00
2014-03-18 16:39:40 -04:00
2014-04-22 22:23:58 +01:00
2014-06-05 12:35:52 +01:00
2013-11-14 08:51:29 +09:00
2011-12-13 08:52:02 +00:00
2012-03-24 09:38:55 +00:00
2012-03-24 09:38:55 +00:00
2014-06-12 19:18:49 -07:00
2013-01-16 12:01:59 +00:00
2014-06-19 11:29:39 +01:00
2013-01-16 12:01:59 +00:00
2014-06-05 12:30:00 +02:00
2013-09-30 16:41:50 +01:00
2014-04-25 12:07:34 +01:00
2014-03-18 16:39:40 -04:00
2014-03-18 16:39:40 -04:00
2014-03-18 16:39:40 -04:00
2014-03-18 16:39:40 -04:00
2014-04-01 16:45:19 +03:00
2014-03-18 16:39:40 -04:00
2014-04-11 11:56:40 -07:00
2014-05-15 10:16:30 -04:00
2014-05-15 10:16:00 -04:00
2014-06-29 10:29:35 +01:00
2013-11-30 22:21:02 +00:00
2013-03-19 11:43:46 +00:00
2014-06-05 12:35:52 +01:00
2014-03-18 16:39:40 -04:00
2013-11-30 22:21:00 +00:00
2014-05-25 23:49:27 +01:00
2013-10-19 20:46:33 +01:00
2013-10-29 11:06:13 +00:00
2014-03-19 14:10:24 +01:00
2014-03-19 14:10:24 +01:00
2014-05-30 01:12:32 +01:00
2013-07-30 09:00:43 -04:00
2013-05-05 00:07:22 -04:00
2012-11-28 22:13:54 -05:00
2014-04-22 08:23:58 -04:00
2013-12-11 09:53:14 +00:00
2012-04-25 19:49:26 +01:00
2013-09-29 21:09:15 +02:00
2014-06-12 19:42:15 -07:00
2014-04-11 14:48:39 +01:00
2014-06-07 11:44:39 -07:00
2014-03-18 16:39:40 -04:00
2014-05-25 23:48:45 +01:00
2014-03-18 16:39:40 -04:00
2013-09-02 13:49:29 +01:00
2013-07-31 21:34:24 +01:00
2011-10-31 19:30:48 -04:00