migration: activate TLS thread safety workaround
When either the postcopy or return path capabilities are enabled, the migration code will use the primary channel for bidirectional I/O. If either of those capabilities are enabled, the migration code needs to mark the channel as expecting concurrent I/O in order to activate the thread safety workarounds for GNUTLS bug 1717 Closes: https://gitlab.com/qemu-project/qemu/-/issues/1937 Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Fabiano Rosas <farosas@suse.de> Link: https://lore.kernel.org/qemu-devel/20250718150514.2635338-4-berrange@redhat.com Signed-off-by: Fabiano Rosas <farosas@suse.de>
This commit is contained in:
parent
edea818371
commit
eb3618e9e2
1 changed files with 9 additions and 0 deletions
|
|
@ -90,6 +90,10 @@ void migration_tls_channel_process_incoming(MigrationState *s,
|
|||
|
||||
trace_migration_tls_incoming_handshake_start();
|
||||
qio_channel_set_name(QIO_CHANNEL(tioc), "migration-tls-incoming");
|
||||
if (migrate_postcopy_ram() || migrate_return_path()) {
|
||||
qio_channel_set_feature(QIO_CHANNEL(tioc),
|
||||
QIO_CHANNEL_FEATURE_CONCURRENT_IO);
|
||||
}
|
||||
qio_channel_tls_handshake(tioc,
|
||||
migration_tls_incoming_handshake,
|
||||
NULL,
|
||||
|
|
@ -149,6 +153,11 @@ void migration_tls_channel_connect(MigrationState *s,
|
|||
s->hostname = g_strdup(hostname);
|
||||
trace_migration_tls_outgoing_handshake_start(hostname);
|
||||
qio_channel_set_name(QIO_CHANNEL(tioc), "migration-tls-outgoing");
|
||||
|
||||
if (migrate_postcopy_ram() || migrate_return_path()) {
|
||||
qio_channel_set_feature(QIO_CHANNEL(tioc),
|
||||
QIO_CHANNEL_FEATURE_CONCURRENT_IO);
|
||||
}
|
||||
qio_channel_tls_handshake(tioc,
|
||||
migration_tls_outgoing_handshake,
|
||||
s,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue