[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right
|
From: |
Fabiano Rosas |
|
Subject: |
Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place |
|
Date: |
Thu, 25 Jan 2024 17:57:35 -0300 |
Avihai Horon <avihaih@nvidia.com> writes:
> The commit in the fixes line moved multifd thread creation to a
> different location, but forgot to move the p->running = true assignment
> as well. Thus, p->running is set to true before multifd thread is
> actually created.
>
> p->running is used in multifd_save_cleanup() to decide whether to join
> the multifd thread or not.
>
> With TLS, an error in multifd_tls_channel_connect() can lead to a
> segmentation fault because p->running is true but p->thread is never
> initialized, so multifd_save_cleanup() tries to join an uninitialized
> thread.
>
> Fix it by moving p->running = true assignment right after multifd thread
> creation. Also move qio_channel_set_delay() to there, as this is where
> it used to be originally.
>
> Fixes: 29647140157a ("migration/tls: add support for multifd tls-handshake")
> Signed-off-by: Avihai Horon <avihaih@nvidia.com>
Just for context, I haven't looked at this patch yet, but we were
planning to remove p->running altogether:
https://lore.kernel.org/r/20231110200241.20679-1-farosas@suse.de
- [PATCH 01/17] migration: Fix logic of channels and transport compatibility check, (continued)
- [PATCH 01/17] migration: Fix logic of channels and transport compatibility check, Avihai Horon, 2024/01/25
- [PATCH 02/17] migration: Move local_err check in migration_ioc_process_incoming(), Avihai Horon, 2024/01/25
- [PATCH 03/17] migration: Rename default_channel to main_channel, Avihai Horon, 2024/01/25
- [PATCH 10/17] migration/postcopy: Use the new TLS upgrade API for preempt channel, Avihai Horon, 2024/01/25
- [PATCH 11/17] migration/tls: Make migration_tls_client_create() static, Avihai Horon, 2024/01/25
- [PATCH 12/17] migration/multifd: Consolidate TLS/non-TLS multifd channel error flow, Avihai Horon, 2024/01/25
- [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Avihai Horon, 2024/01/25
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place,
Fabiano Rosas <=
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Avihai Horon, 2024/01/28
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Peter Xu, 2024/01/28
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Avihai Horon, 2024/01/29
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Peter Xu, 2024/01/30
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Avihai Horon, 2024/01/30
- Re: [PATCH 04/17] migration/multifd: Set p->running = true in the right place, Fabiano Rosas, 2024/01/29
[PATCH 05/17] migration/multifd: Wait for multifd channels creation before proceeding, Avihai Horon, 2024/01/25