Oleg Nesterov
e91b481623
task_work: teach task_work_add() to do signal_wake_up()
...
So that the target task will exit the wait_event_interruptible-like
loop and call task_work_run() asap.
The patch turns "bool notify" into 0,TWA_RESUME,TWA_SIGNAL enum, the
new TWA_SIGNAL flag implies signal_wake_up(). However, it needs to
avoid the race with recalc_sigpending(), so the patch also adds the
new JOBCTL_TASK_WORK bit included in JOBCTL_PENDING_MASK.
TODO: once this patch is merged we need to change all current users
of task_work_add(notify = true) to use TWA_RESUME.
Cc: stable@vger.kernel.org # v5.7
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2020-06-30 12:18:08 -06:00
..
2020-06-13 16:27:13 -07:00
2020-06-09 09:39:14 -07:00
2020-04-07 10:43:42 -07:00
2020-06-17 10:57:41 -07:00
2020-06-15 08:35:30 +02:00
2020-06-09 09:54:46 -07:00
2020-06-14 01:57:21 +09:00
2020-06-14 01:57:21 +09:00
2020-06-11 20:04:01 +02:00
2020-05-11 00:31:38 +02:00
2020-06-13 10:05:47 -07:00
2020-06-14 01:57:21 +09:00
2020-06-12 12:13:36 -07:00
2020-06-07 09:52:36 -07:00
2020-06-11 20:02:46 +02:00
2020-06-13 10:05:47 -07:00
2020-06-20 13:17:47 -07:00
2020-03-25 11:50:48 +01:00
2020-06-09 09:39:14 -07:00
2019-06-05 17:37:17 +02:00
2020-03-23 18:19:06 +01:00
2020-04-06 08:58:42 -07:00
2020-06-02 17:13:37 -07:00
2020-04-22 15:23:10 -04:00
2020-04-22 15:23:10 -04:00
2020-05-20 18:09:19 -04:00
2019-06-05 17:37:17 +02:00
2020-05-01 12:35:21 +10:00
2020-02-04 03:05:26 +00:00
2020-06-11 15:14:36 +02:00
2020-05-15 11:44:34 -07:00
2020-06-03 13:06:42 -07:00
2019-06-19 17:09:06 +02:00
2020-04-15 11:21:54 +02:00
2020-05-20 14:44:21 -05:00
2019-05-21 11:52:39 +02:00
2019-09-25 17:51:39 -07:00
2020-06-09 09:39:14 -07:00
2020-04-07 10:43:42 -07:00
2019-06-03 15:49:06 +02:00
2020-06-09 09:39:14 -07:00
2019-10-06 09:11:37 -06:00
2020-06-09 09:39:14 -07:00
2020-06-06 23:42:01 +09:00
2020-06-02 10:59:11 -07:00
2020-06-08 11:05:56 -07:00
2019-07-12 11:05:40 -07:00
2020-05-28 10:54:15 +02:00
2019-08-29 15:10:10 +01:00
2020-04-07 10:43:44 -07:00
2020-03-25 10:04:01 -05:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-12-08 14:37:36 +01:00
2019-11-12 11:35:32 +01:00
2020-06-10 19:14:17 -07:00
2020-01-08 16:32:55 +00:00
2019-09-06 23:58:44 +02:00
2020-06-04 19:06:23 -07:00
2020-01-08 16:32:55 +00:00
2020-01-08 16:32:55 +00:00
2019-05-24 20:16:01 +02:00
2020-04-10 15:36:22 -07:00
2020-06-16 21:21:01 -04:00
2019-05-30 11:26:39 -07:00
2020-06-17 10:57:41 -07:00
2020-04-27 02:07:40 -04:00
2020-06-13 09:56:21 -07:00
2019-08-05 18:39:56 -04:00
2019-08-05 18:39:56 -04:00
2019-05-24 17:27:11 +02:00
2020-06-08 11:05:58 -07:00
2020-06-02 10:59:12 -07:00
2020-05-13 11:41:22 +02:00
2020-06-03 20:09:45 -07:00
2020-06-11 15:14:36 +02:00
2019-08-19 21:54:16 -07:00
2020-06-03 16:27:18 -07:00
2020-04-30 06:40:14 -05:00
2020-02-04 03:05:26 +00:00
2020-01-18 13:51:39 +01:00
2020-05-30 10:34:03 -07:00
2020-06-09 09:39:14 -07:00
2020-05-27 11:10:05 +02:00
2019-12-25 10:41:20 +01:00
2020-06-04 16:14:56 +01:00
2020-04-27 02:07:40 -04:00
2020-06-30 12:18:08 -06:00
2020-06-03 13:06:42 -07:00
2019-05-21 10:50:45 +02:00
2020-06-11 15:15:24 +02:00
2019-11-11 10:30:59 +01:00
2020-01-17 10:19:21 +01:00
2019-11-15 14:38:30 +01:00
2020-06-14 11:39:31 -07:00
2019-11-26 13:03:56 -06:00
2020-01-09 16:42:29 -07:00
2020-06-08 11:05:56 -07:00
2020-06-30 12:18:08 -06:00
2019-12-04 15:18:39 +01:00
2019-05-21 11:52:39 +02:00
2020-03-30 18:06:39 -07:00
2019-07-18 11:51:00 -07:00
2019-12-18 18:07:31 +01:00
2020-04-07 21:51:27 +02:00
2020-05-15 13:48:59 -07:00
2020-02-07 15:34:12 +01:00
2020-05-09 13:57:12 +02:00
2019-05-21 10:50:45 +02:00
2020-06-04 19:06:24 -07:00
2020-04-27 02:07:40 -04:00
2020-05-09 13:57:12 +02:00
2020-06-13 09:56:21 -07:00
2020-06-08 11:05:56 -07:00
2020-06-17 10:57:41 -07:00