Catalin Marinas
1c101da8b9
arm64: mte: Allow user control of the tag check mode via prctl()
...
By default, even if PROT_MTE is set on a memory range, there is no tag
check fault reporting (SIGSEGV). Introduce a set of option to the
exiting prctl(PR_SET_TAGGED_ADDR_CTRL) to allow user control of the tag
check fault mode:
PR_MTE_TCF_NONE - no reporting (default)
PR_MTE_TCF_SYNC - synchronous tag check fault reporting
PR_MTE_TCF_ASYNC - asynchronous tag check fault reporting
These options translate into the corresponding SCTLR_EL1.TCF0 bitfield,
context-switched by the kernel. Note that the kernel accesses to the
user address space (e.g. read() system call) are not checked if the user
thread tag checking mode is PR_MTE_TCF_NONE or PR_MTE_TCF_ASYNC. If the
tag checking mode is PR_MTE_TCF_SYNC, the kernel makes a best effort to
check its user address accesses, however it cannot always guarantee it.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com >
Cc: Will Deacon <will@kernel.org >
2020-09-04 12:46:07 +01:00
..
2020-07-23 09:35:36 +02:00
2020-07-15 20:34:11 -07:00
2020-01-21 11:41:36 +01:00
2020-05-28 11:22:14 +02:00
2020-07-29 20:09:18 +02:00
2020-05-04 11:30:15 -05:00
2020-07-21 22:05:32 -07:00
2020-06-15 16:03:38 +01:00
2020-05-01 16:08:19 -07:00
2020-08-12 10:57:59 -07:00
2019-12-18 18:07:31 +01:00
2020-07-13 17:01:44 -07:00
2020-07-21 11:21:44 -04:00
2020-08-12 10:58:00 -07:00
2020-06-26 10:36:30 +02:00
2020-06-26 10:37:11 +02:00
2020-07-25 07:38:21 -06:00
2020-07-08 16:16:19 +02:00
2020-08-21 12:26:17 -07:00
2020-01-10 17:20:07 +01:00
2020-07-27 12:55:37 +02:00
2020-07-27 12:55:43 +02:00
2020-07-19 20:14:42 +02:00
2020-06-17 00:07:38 +02:00
2020-03-26 15:10:44 +01:00
2020-07-09 13:15:30 -07:00
2020-05-04 11:30:15 -05:00
2020-03-03 11:10:21 -05:00
2020-04-27 16:29:41 +05:30
2019-12-17 21:37:40 +05:30
2020-08-12 10:57:59 -07:00
2020-07-19 19:20:22 -07:00
2020-07-10 13:54:00 -07:00
2020-07-10 13:54:00 -07:00
2020-07-27 23:24:00 +02:00
2020-06-24 21:34:11 +02:00
2020-05-14 16:44:25 +02:00
2020-05-12 19:34:57 +03:00
2020-05-12 19:34:52 +03:00
2020-06-05 16:19:28 -07:00
2020-04-20 15:45:41 -06:00
2020-07-06 21:37:08 -07:00
2020-05-28 22:09:47 -04:00
2020-05-19 09:34:18 -07:00
2020-04-30 17:51:42 -07:00
2020-06-05 20:19:20 +02:00
2020-07-12 10:22:01 +02:00
2019-12-11 15:31:52 +01:00
2020-07-27 12:20:40 -07:00
2020-07-23 17:55:20 +00:00
2020-07-19 19:20:22 -07:00
2020-07-24 17:12:41 -07:00
2020-08-05 19:02:07 +05:30
2020-05-04 11:30:15 -05:00
2019-12-26 13:09:37 -08:00
2020-07-14 13:46:43 -07:00
2020-04-27 11:40:25 -07:00
2020-07-31 18:49:16 -07:00
2020-03-16 01:42:31 -07:00
2020-05-01 12:24:40 -07:00
2020-07-13 15:32:56 -07:00
2020-04-20 12:43:24 -07:00
2020-07-24 17:12:41 -07:00
2020-07-19 19:20:22 -07:00
2020-07-09 12:38:41 -07:00
2020-06-30 12:06:49 -07:00
2019-12-13 15:00:36 -08:00
2020-07-24 12:53:31 -06:00
2020-06-30 11:49:21 +02:00
2020-03-29 22:30:57 -07:00
2020-07-27 16:34:12 +03:00
2020-01-04 13:55:09 -08:00
2020-05-19 15:19:06 +01:00
2020-07-15 13:27:34 -04:00
2020-08-03 14:19:13 -04:00
2020-05-21 08:20:35 -06:00
2020-03-29 22:30:57 -07:00
2020-05-27 11:10:05 +02:00
2020-08-12 10:57:59 -07:00
2020-07-19 18:05:49 -07:00
2020-03-20 09:01:16 +01:00
2020-05-06 17:45:45 -07:00
2020-04-02 09:35:30 -07:00
2020-07-09 12:38:41 -07:00
2020-07-14 13:46:42 -07:00
2020-07-25 19:34:47 -06:00
2020-06-24 14:36:33 -07:00
2020-05-04 11:30:15 -05:00
2020-03-29 22:32:36 -07:00
2020-03-18 16:35:48 -07:00
2020-04-30 17:51:42 -07:00
2020-05-22 14:00:38 -07:00
2020-07-13 17:20:49 -04:00
2020-07-13 17:52:46 -04:00
2020-07-31 09:27:02 +02:00
2020-01-18 09:19:18 -05:00
2020-08-03 15:17:48 -07:00
2020-02-20 22:44:30 -06:00
2020-04-02 17:57:10 +01:00
2020-08-03 14:51:09 -07:00
2020-07-24 15:23:31 -07:00
2020-06-29 17:08:28 -07:00
2019-12-01 14:00:59 -08:00
2020-09-04 12:46:07 +01:00
2020-05-21 17:04:07 -07:00
2020-04-30 15:19:33 +10:00
2020-07-19 19:22:56 -07:00
2020-01-07 16:07:01 -05:00
2020-07-10 14:50:51 +02:00
2020-06-25 16:26:25 -07:00
2020-08-04 20:16:37 -07:00
2020-03-29 22:30:57 -07:00
2020-03-29 22:30:57 -07:00
2020-05-11 16:04:35 +02:00
2020-07-02 14:19:15 -07:00
2019-12-04 19:44:12 -08:00
2020-02-12 17:57:51 -05:00
2020-07-14 16:29:42 -07:00
2020-08-03 17:57:40 -07:00
2020-07-06 14:06:08 +02:00
2020-03-24 15:59:34 -07:00
2020-07-17 12:54:30 -07:00
2020-02-27 18:50:19 -08:00
2020-06-02 19:45:12 -07:00
2020-02-21 11:22:15 -08:00
2020-01-15 11:00:39 -06:00
2020-01-31 10:30:39 -08:00
2020-07-28 22:25:30 -04:00
2019-12-18 18:07:31 +01:00
2020-07-31 17:00:44 -07:00
2020-04-20 16:18:14 +02:00
2020-07-07 15:55:21 +02:00
2019-12-18 18:07:33 +01:00
2020-02-21 11:22:15 -08:00
2019-12-18 18:07:33 +01:00
2019-12-20 21:18:42 -08:00
2020-08-12 10:57:59 -07:00
2019-12-09 09:59:07 +01:00
2020-03-29 23:29:08 +02:00
2020-04-07 10:43:39 -07:00
2020-05-18 15:34:21 +02:00
2020-05-12 17:05:31 +02:00
2020-07-10 13:45:32 +02:00
2020-07-10 13:45:32 +02:00
2020-06-03 11:27:43 +02:00
2020-06-18 13:07:13 -06:00
2020-08-05 18:39:18 -04:00
2020-08-05 18:39:18 -04:00
2020-07-19 08:13:24 +02:00
2020-08-05 09:30:19 -04:00
2020-08-05 09:30:20 -04:00
2020-08-05 11:08:39 -04:00
2020-08-03 16:11:42 -04:00
2020-08-05 11:08:39 -04:00
2020-08-05 11:08:39 -04:00
2020-08-05 11:08:39 -04:00
2020-08-05 11:08:40 -04:00
2020-06-04 15:36:52 -04:00
2020-08-05 11:08:40 -04:00
2020-08-05 11:08:40 -04:00
2020-08-05 11:08:40 -04:00
2020-08-05 11:08:41 -04:00
2020-08-05 11:08:40 -04:00
2020-06-02 02:45:13 -04:00
2020-08-05 11:08:40 -04:00
2019-12-11 15:01:23 -08:00
2020-05-19 15:19:06 +01:00
2019-12-16 19:22:22 -08:00
2020-07-31 09:24:23 +02:00
2020-06-12 13:23:34 -04:00
2020-07-13 15:32:56 -07:00
2020-06-24 07:51:01 +02:00