Willy Tarreau
f34a3fa33d
BUG/MEDIUM: thread: mask stopping_threads with threads_enabled when checking it
...
When soft-stopping, there's a comparison between stopping_threads and
threads_enabled to make sure all threads are stopped, but this is not
correct and is racy since the threads_enabled bit is removed when a
thread is stopped but not its stopping_threads bit. The consequence is
that depending on timing, when stopping, if the first stopping thread
is fast enough to remove its bit from threads_enabled, the other threads
will see that stopping_threads doesn't match threads_enabled anymore and
will wait forever. As such the mask must be applied to stopping_threads
during the test. This issue was introduced in recent commit ef422ced9
("MEDIUM: thread: make stopping_threads per-group and add stopping_tgroups"),
no backport is needed.
2022-07-06 10:19:46 +02:00
..
2022-03-30 11:49:59 +02:00
2022-04-25 15:28:21 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2021-09-30 16:37:05 +02:00
2022-05-27 19:33:35 +02:00
2021-08-25 16:14:14 +02:00
2022-05-27 19:33:35 +02:00
2022-04-19 08:23:30 +02:00
2022-06-23 11:49:09 +02:00
2021-10-13 11:28:08 +02:00
2022-05-12 17:48:35 +02:00
2022-05-20 18:39:43 +02:00
2022-05-30 09:59:26 +02:00
2022-05-20 18:41:55 +02:00
2022-04-26 10:59:48 +02:00
2022-04-26 10:59:48 +02:00
2022-07-05 19:10:26 +02:00
2022-05-27 19:33:34 +02:00
2022-07-01 19:15:14 +02:00
2022-04-27 17:55:41 +02:00
2022-06-13 14:33:30 +02:00
2022-07-01 19:15:15 +02:00
2022-04-25 19:42:43 +02:00
2022-06-07 12:04:12 +02:00
2022-01-28 19:04:02 +01:00
2022-07-01 21:18:03 +02:00
2022-06-14 11:18:40 +02:00
2021-10-08 17:22:26 +02:00
2021-08-16 12:37:59 +02:00
2022-05-06 18:13:36 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-05-16 16:00:26 +02:00
2022-03-21 08:30:47 +01:00
2022-07-01 19:15:14 +02:00
2022-04-13 15:10:16 +02:00
2021-08-16 12:37:59 +02:00
2022-07-06 09:34:54 +02:00
2022-04-15 16:22:33 +02:00
2022-05-27 19:33:35 +02:00
2021-11-08 12:08:26 +01:00
2022-06-22 18:33:27 +02:00
2022-05-27 19:33:35 +02:00
2022-05-24 15:38:05 +02:00
2022-03-21 08:30:47 +01:00
2022-03-21 08:30:47 +01:00
2022-05-30 09:59:26 +02:00
2022-07-05 16:18:27 +02:00
2022-07-06 10:19:46 +02:00
2022-05-17 11:40:33 +02:00
2022-07-01 19:15:14 +02:00
2022-04-12 08:40:38 +02:00
2022-04-01 17:29:06 +02:00
2022-04-12 08:30:08 +02:00
2022-06-07 18:15:47 +02:00
2022-07-06 09:37:43 +02:00
2022-06-22 17:50:54 +02:00
2022-06-01 17:20:57 +02:00
2022-04-08 10:12:59 +02:00
2022-06-22 17:50:54 +02:00
2022-04-26 23:39:43 +02:00
2022-04-25 19:26:26 +02:00
2022-05-24 15:38:54 +02:00
2022-02-28 17:16:55 +01:00
2022-04-22 15:45:47 +02:00
2022-02-15 20:08:20 +01:00
2021-09-22 07:24:02 +02:00
2021-08-16 12:37:59 +02:00
2022-07-01 19:15:14 +02:00
2022-06-17 14:53:21 +02:00
2022-04-12 08:19:33 +02:00
2022-06-08 15:28:38 +02:00
2022-05-27 19:33:35 +02:00
2022-03-22 09:25:52 +01:00
2022-05-30 16:27:48 +02:00
2022-05-30 08:45:16 +02:00
2022-06-30 14:34:32 +02:00
2022-05-27 19:33:35 +02:00
2022-07-05 16:44:01 +02:00
2022-01-28 19:04:02 +01:00
2022-07-05 09:06:04 +02:00
2022-07-01 15:54:23 +02:00
2021-09-11 19:58:45 +02:00
2022-05-27 19:33:35 +02:00
2022-07-01 19:15:14 +02:00
2022-05-27 19:33:35 +02:00
2022-06-23 11:49:09 +02:00
2022-05-20 18:39:43 +02:00
2022-05-20 18:39:43 +02:00
2022-05-20 18:39:43 +02:00
2022-05-20 18:39:43 +02:00
2022-05-20 18:39:43 +02:00
2022-05-20 18:39:43 +02:00
2022-07-04 14:09:39 +02:00
2022-06-30 11:51:06 +02:00
2022-05-30 14:30:05 +02:00
2022-03-04 08:58:32 +01:00
2022-07-01 19:15:14 +02:00
2022-03-04 17:47:32 +01:00
2022-03-04 08:58:32 +01:00
2022-06-24 12:13:53 +02:00
2022-05-30 09:59:26 +02:00
2022-06-30 14:34:27 +02:00
2022-06-30 14:24:04 +02:00
2022-05-27 19:33:35 +02:00
2022-06-16 15:58:48 +02:00
2022-06-21 11:07:39 +02:00
2022-04-25 20:32:15 +02:00
2022-06-10 11:17:27 +02:00
2022-05-27 19:33:35 +02:00
2022-05-27 19:33:34 +02:00
2022-01-28 19:04:02 +01:00
2022-05-31 09:25:34 +02:00
2022-03-11 07:25:11 +01:00
2021-11-19 19:25:13 +01:00
2022-05-27 19:33:35 +02:00
2021-12-06 09:14:20 +01:00
2022-04-26 10:59:48 +02:00
2022-04-26 10:59:48 +02:00
2022-05-02 17:47:46 +02:00
2022-06-22 10:45:47 +02:00
2022-06-20 17:27:49 +02:00
2022-05-27 19:33:35 +02:00
2022-07-01 17:41:40 +02:00
2022-05-17 11:40:33 +02:00
2022-06-10 15:12:21 +02:00
2022-06-17 13:25:02 +02:00
2022-05-27 19:33:35 +02:00
2022-07-01 19:15:14 +02:00
2022-07-01 19:15:14 +02:00
2022-05-27 19:33:35 +02:00
2022-06-13 08:04:10 +02:00
2022-05-27 19:33:35 +02:00
2022-07-06 09:35:13 +02:00
2022-07-01 19:15:15 +02:00
2021-10-08 17:22:26 +02:00
2022-06-21 20:29:57 +02:00
2022-06-08 15:28:38 +02:00
2022-02-23 17:11:33 +01:00
2022-07-01 19:26:35 +02:00
2022-06-23 11:49:09 +02:00
2022-06-30 14:34:27 +02:00