Oleg Nesterov
39f17c7074
sched/task.h: fix the wrong comment on task_lock() nesting with tasklist_lock
...
The ancient comment above task_lock() states that it can be nested outside
of read_lock(&tasklist_lock), but this is no longer true:
CPU_0 CPU_1 CPU_2
task_lock() read_lock(tasklist)
write_lock_irq(tasklist)
read_lock(tasklist) task_lock()
Unless CPU_0 calls read_lock() in IRQ context, queued_read_lock_slowpath()
won't get the lock immediately, it will spin waiting for the pending
writer on CPU_2, resulting in a deadlock.
Link: https://lkml.kernel.org/r/20250914110908.GA18769@redhat.com
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Cc: Christian Brauner <brauner@kernel.org>
Cc: Jiri Slaby <jirislaby@kernel.org>
Cc: Mateusz Guzik <mjguzik@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2025-09-22 20:10:59 -07:00
..
2025-07-15 16:03:24 -07:00
2025-07-29 11:42:31 -07:00
2025-08-07 10:07:06 +02:00
2025-07-31 01:33:20 +02:00
2025-07-13 15:36:25 +01:00
2025-07-27 01:41:21 -07:00
2025-07-18 12:34:56 -06:00
2025-07-29 12:27:40 -04:00
2025-07-31 11:50:25 -07:00
2025-07-23 01:38:56 -04:00
2025-07-18 14:14:24 +02:00
2025-07-31 13:43:02 -07:00
2025-07-24 09:38:29 -07:00
2025-07-25 18:36:42 +02:00
2025-08-18 09:55:05 +02:00
2025-07-09 22:57:54 -07:00
2025-08-03 03:28:52 +02:00
2025-09-22 20:10:59 -07:00
2025-08-02 12:07:09 -07:00
2025-07-21 10:43:21 +05:30
2025-07-31 13:43:02 -07:00
2025-08-09 07:20:44 +03:00
2025-07-31 13:16:09 -07:00
2025-07-29 20:21:54 -07:00
2025-07-21 18:18:51 +01:00
2025-08-22 17:23:15 -07:00
2025-07-13 16:38:32 -07:00
2025-07-31 11:28:03 -04:00
2025-07-31 11:28:03 -04:00
2025-07-28 16:14:18 -07:00
2025-08-21 07:11:11 -06:00
2025-07-24 16:55:11 -07:00
2025-07-31 11:30:05 -07:00
2025-07-31 11:30:05 -07:00
2025-07-16 14:48:18 +02:00
2025-07-22 19:10:17 -06:00
2025-07-31 18:23:53 -07:00
2025-07-31 18:23:53 -07:00
2025-08-01 15:47:06 -07:00
2025-07-29 17:19:35 -07:00
2025-07-29 17:19:35 -07:00
2025-08-04 14:15:14 +02:00
2025-08-18 14:48:16 +02:00
2025-07-16 13:56:23 +02:00
2025-07-31 14:57:54 -07:00
2025-07-29 17:42:52 -07:00
2025-08-20 22:23:44 +08:00
2025-07-31 16:52:32 -07:00
2025-07-19 19:08:23 -07:00
2025-07-19 18:59:57 -07:00
2025-07-31 14:57:54 -07:00
2025-07-14 20:22:59 +09:00
2025-07-29 12:15:39 -07:00
2025-08-11 13:05:38 +02:00
2025-08-09 18:10:01 +03:00
2025-07-31 10:20:04 -04:00
2025-08-02 12:06:12 -07:00
2025-08-11 16:16:36 +02:00
2025-07-22 15:57:02 +00:00
2025-07-30 09:58:50 -07:00
2025-07-31 11:28:03 -04:00
2025-08-11 22:22:33 +09:00
2025-07-29 17:19:29 -07:00
2025-07-31 14:57:54 -07:00
2025-08-04 16:27:21 -07:00
2025-07-16 14:28:21 +02:00
2025-07-28 18:14:38 +02:00
2025-07-22 20:15:56 -04:00
2025-07-11 16:02:00 +02:00
2025-07-19 19:08:28 -07:00
2025-07-13 16:38:18 -07:00
2025-07-24 16:24:49 +02:00
2025-07-15 17:28:27 +02:00
2025-07-19 18:59:51 -07:00
2025-07-24 19:12:35 -07:00
2025-07-24 19:12:32 -07:00
2025-07-19 19:08:26 -07:00
2025-09-13 17:32:44 -07:00
2025-07-11 11:42:38 -07:00
2025-07-25 15:29:58 -07:00
2025-07-29 17:19:35 -07:00
2025-07-28 16:30:12 -07:00
2025-08-02 12:06:10 -07:00
2025-07-14 10:51:33 +02:00
2025-07-31 12:43:08 -07:00
2025-07-18 17:33:08 -03:00
2025-07-31 15:00:41 -06:00
2025-08-11 17:26:38 +02:00
2025-08-19 16:35:56 -07:00
2025-07-25 13:06:19 -07:00
2025-08-01 09:46:24 -07:00
2025-07-30 17:14:01 -07:00
2025-07-24 10:57:26 +02:00
2025-08-13 17:18:43 +02:00
2025-09-13 17:32:55 -07:00
2025-09-13 17:32:56 -07:00
2025-09-13 17:32:43 -07:00
2025-07-23 11:52:47 +02:00
2025-07-21 21:40:39 -07:00
2025-07-31 12:56:21 +09:00
2025-09-13 17:32:48 -07:00
2025-07-17 07:41:56 -10:00
2025-07-14 21:57:20 -07:00
2025-07-17 06:01:16 -06:00
2025-07-13 16:38:24 -07:00
2025-07-24 09:20:39 +02:00
2025-08-26 10:47:03 +03:00
2025-07-24 19:12:32 -07:00
2025-07-13 16:38:17 -07:00
2025-07-13 16:38:17 -07:00
2025-08-19 16:35:57 -07:00
2025-07-31 14:57:54 -07:00
2025-08-05 16:02:07 +03:00
2025-08-02 12:06:11 -07:00
2025-07-19 18:59:47 -07:00
2025-08-06 07:32:52 +03:00
2025-09-13 17:32:50 -07:00
2025-07-30 17:14:01 -07:00
2025-08-01 15:47:06 -07:00
2025-08-12 14:43:05 +02:00
2025-07-25 18:40:01 +02:00
2025-08-15 15:56:49 +02:00
2025-07-25 13:59:41 -07:00
2025-07-22 08:10:41 -04:00
2025-07-14 15:20:02 -07:00
2025-08-19 11:16:02 -07:00
2025-07-14 15:20:02 -07:00
2025-07-13 16:38:15 -07:00
2025-07-17 13:38:07 +02:00
2025-09-13 17:32:45 -07:00
2025-07-19 18:59:57 -07:00
2025-08-02 12:06:08 -07:00
2025-07-13 16:38:18 -07:00
2025-07-13 16:38:17 -07:00
2025-07-31 14:57:54 -07:00
2025-09-13 17:32:51 -07:00
2025-07-29 11:45:39 -05:00
2025-07-24 16:51:17 -05:00
2025-07-24 16:51:41 -05:00
2025-07-23 01:27:32 -04:00
2025-07-31 16:11:43 -05:00
2025-08-27 22:45:44 -07:00
2025-08-27 22:45:44 -07:00
2025-07-29 11:42:31 -07:00
2025-07-22 18:01:15 +02:00
2025-07-22 18:07:11 +02:00
2025-07-31 21:39:01 -07:00
2025-09-13 17:32:52 -07:00
2025-07-31 14:57:54 -07:00
2025-07-10 09:39:18 +02:00
2025-07-25 13:44:33 +01:00
2025-07-14 22:27:46 -07:00
2025-07-09 22:57:52 -07:00
2025-08-03 15:03:04 -07:00
2025-08-02 12:06:11 -07:00
2025-07-23 11:52:47 +02:00
2025-07-28 16:47:34 -04:00
2025-08-03 16:23:09 -07:00
2025-08-07 06:30:17 -06:00
2025-08-17 05:57:47 -07:00
2025-07-28 18:20:32 -07:00
2025-08-21 17:47:57 -07:00
2025-07-29 13:00:20 -07:00
2025-08-04 10:54:36 -07:00
2025-07-19 10:17:56 +05:30
2025-07-16 09:51:08 +05:30
2025-07-16 09:51:08 +05:30
2025-07-17 12:10:56 -07:00
2025-07-17 16:39:49 -07:00
2025-07-30 19:26:49 -07:00
2025-07-24 19:12:28 -07:00
2025-07-19 19:08:24 -07:00
2025-07-23 11:56:02 +02:00
2025-07-21 17:48:32 -07:00
2025-07-18 13:45:33 +02:00
2025-07-28 18:18:16 -07:00
2025-07-22 20:15:51 -04:00
2025-07-31 10:20:10 -04:00
2025-07-31 10:20:11 -04:00
2025-07-29 14:46:07 -04:00
2025-07-29 14:46:07 -04:00
2025-07-21 17:40:02 +02:00
2025-07-24 19:12:29 -07:00
2025-08-05 15:41:14 -06:00
2025-08-05 15:41:14 -06:00
2025-08-26 03:38:10 -04:00
2025-08-01 09:11:09 -04:00
2025-08-01 14:17:48 -07:00
2025-08-27 22:45:44 -07:00
2025-07-19 18:59:46 -07:00
2025-08-01 09:11:08 -04:00
2025-07-17 11:26:56 +02:00
2025-08-02 12:01:37 -07:00
2025-07-13 16:38:29 -07:00