Jens Axboe
12db8b6900
entry: Add support for TIF_NOTIFY_SIGNAL
...
Add TIF_NOTIFY_SIGNAL handling in the generic entry code, which if set,
will return true if signal_pending() is used in a wait loop. That causes an
exit of the loop so that notify_signal tracehooks can be run. If the wait
loop is currently inside a system call, the system call is restarted once
task_work has been processed.
In preparation for only having arch_do_signal() handle syscall restarts if
_TIF_SIGPENDING isn't set, rename it to arch_do_signal_or_restart(). Pass
in a boolean that tells the architecture specific signal handler if it
should attempt to get a signal, or just process a potential syscall
restart.
For !CONFIG_GENERIC_ENTRY archs, add the TIF_NOTIFY_SIGNAL handling to
get_signal(). This is done to minimize the needed architecture changes to
support this feature.
Signed-off-by: Jens Axboe <axboe@kernel.dk >
Signed-off-by: Thomas Gleixner <tglx@linutronix.de >
Reviewed-by: Oleg Nesterov <oleg@redhat.com >
Link: https://lore.kernel.org/r/20201026203230.386348-3-axboe@kernel.dk
2020-10-29 09:37:36 +01:00
..
2020-08-04 19:41:12 +02:00
2020-08-12 10:57:59 -07:00
2020-08-03 18:19:23 -07:00
2020-08-05 11:43:47 -07:00
2020-08-05 20:13:21 -07:00
2020-08-04 01:22:02 +02:00
2020-08-12 10:57:59 -07:00
2020-08-07 12:58:11 -07:00
2020-08-15 08:09:38 -07:00
2020-08-06 16:43:36 -07:00
2020-08-05 20:13:21 -07:00
2020-08-07 08:54:16 +02:00
2020-08-15 08:18:22 -07:00
2020-10-29 09:37:36 +01:00
2020-08-12 10:57:59 -07:00
2020-08-15 08:26:55 -07:00
2020-08-05 20:13:21 -07:00
2020-08-04 18:11:58 -07:00
2020-08-03 19:30:59 -07:00
2020-08-12 10:57:59 -07:00
2020-08-10 12:16:51 -07:00
2020-08-05 11:12:34 -07:00
2020-08-06 16:39:14 -07:00
2020-08-12 10:57:59 -07:00
2020-08-03 15:07:18 -07:00
2020-08-12 10:57:56 -07:00
2020-08-14 19:56:56 -07:00
2020-08-04 13:26:06 -07:00
2020-08-12 10:57:59 -07:00
2020-08-12 10:57:59 -07:00
2020-08-04 13:49:43 -07:00
2020-08-03 14:25:40 -07:00
2020-08-11 17:29:45 +02:00
2020-08-12 10:58:01 -07:00
2020-08-12 10:57:59 -07:00
2020-08-05 13:02:45 -07:00
2020-08-14 15:22:43 -07:00
2020-08-04 22:47:54 -07:00
2020-08-07 12:41:36 -07:00
2020-08-06 16:13:13 +02:00
2020-08-07 11:33:28 -07:00
2020-10-29 09:37:36 +01:00
2020-10-29 09:37:36 +01:00
2020-08-12 10:57:59 -07:00
2020-08-04 07:37:23 +02:00
2020-08-12 10:57:57 -07:00
2020-08-16 10:55:12 -07:00
2020-08-12 10:57:59 -07:00
2020-08-12 10:57:57 -07:00
2020-08-06 16:13:13 +02:00
2020-08-14 19:56:56 -07:00
2020-08-12 10:58:02 -07:00
2020-08-06 17:54:04 +02:00
2020-08-13 18:41:00 -07:00
2020-08-04 21:02:38 -04:00
2020-08-14 19:56:57 -07:00
2020-08-14 19:56:57 -07:00
2020-08-12 10:57:59 -07:00
2020-08-07 11:33:28 -07:00
2020-08-12 10:58:02 -07:00
2020-08-07 18:29:15 -07:00
2020-08-06 16:13:13 +02:00
2020-08-06 12:59:31 -07:00
2020-08-12 10:57:59 -07:00
2020-08-06 16:13:13 +02:00
2020-08-11 14:30:36 -07:00
2020-08-11 14:30:36 -07:00
2020-08-07 21:27:37 -07:00
2020-08-14 19:56:57 -07:00
2020-08-12 10:57:56 -07:00
2020-08-12 10:58:02 -07:00
2020-08-14 19:56:56 -07:00
2020-08-14 19:56:56 -07:00
2020-08-14 19:56:57 -07:00
2020-08-07 11:33:26 -07:00
2020-08-07 11:33:21 -07:00
2020-08-12 10:57:56 -07:00
2020-08-05 10:31:28 +02:00
2020-08-06 16:13:13 +02:00
2020-08-05 20:13:21 -07:00
2020-08-15 08:26:55 -07:00
2020-08-03 19:30:59 -07:00
2020-08-12 10:57:56 -07:00
2020-08-07 11:33:29 -07:00
2020-08-14 19:56:56 -07:00
2020-08-12 12:09:36 -07:00
2020-08-07 18:48:15 -07:00
2020-08-07 11:33:26 -07:00
2020-08-05 20:13:21 -07:00
2020-08-12 10:57:57 -07:00
2020-08-03 15:01:02 -07:00
2020-08-05 20:13:21 -07:00
2020-08-04 12:44:53 +02:00
2020-08-04 12:39:28 +02:00
2020-08-12 10:57:59 -07:00
2020-08-06 16:50:59 +02:00
2020-08-03 23:24:26 -07:00
2020-08-03 23:24:26 -07:00
2020-08-03 14:39:35 -07:00
2020-08-04 20:16:37 -07:00
2020-08-14 14:17:51 -07:00
2020-08-04 21:00:11 -07:00
2020-08-06 16:13:13 +02:00
2020-08-07 11:33:24 -07:00
2020-08-07 21:14:30 -07:00
2020-08-07 11:33:25 -07:00
2020-08-07 11:33:25 -07:00
2020-08-07 11:33:25 -07:00
2020-08-10 12:06:44 -07:00
2020-08-12 10:57:56 -07:00
2020-08-14 19:56:56 -07:00
2020-08-14 19:56:56 -07:00
2020-08-06 16:13:13 +02:00
2020-08-07 17:05:01 -04:00
2020-10-29 09:37:36 +01:00
2020-08-12 10:57:59 -07:00
2020-08-05 19:00:23 -04:00
2020-08-06 16:13:13 +02:00
2020-08-05 11:08:41 -04:00
2020-08-05 19:56:03 -04:00
2020-08-05 09:30:19 -04:00
2020-08-12 10:57:57 -07:00
2020-08-07 11:33:24 -07:00
2020-08-05 18:43:02 +02:00
2020-08-12 10:57:59 -07:00
2020-08-06 16:13:13 +02:00
2020-08-09 13:58:04 -07:00
2020-08-12 10:57:59 -07:00
2020-08-12 10:57:59 -07:00
2020-08-12 10:57:59 -07:00