qemu/io
Fabiano Rosas f990473869 io: Fix TLS bye task leak
Recent fixes to TLS tasks memory handling have left the TLS bye task
uncovered. Fix by freeing the task in the same way the handshake task
is freed.

Direct leak of 704 byte(s) in 4 object(s) allocated from:
    #1 0x7f5909b1d6a0 in g_malloc0 ../glib/gmem.c:163
    #2 0x557650496d61 in qio_task_new ../io/task.c:58:12
    #3 0x557650475d7f in qio_channel_tls_bye ../io/channel-tls.c:352:12
    #4 0x55764f7a1bb4 in migration_tls_channel_end ../migration/tls.c:159:5
    #5 0x55764f709750 in migration_ioc_shutdown_gracefully ../migration/multifd.c:462:9
    #6 0x55764f6fcf53 in multifd_send_terminate_threads ../migration/multifd.c:493:13
    #7 0x55764f6fcafb in multifd_send_shutdown ../migration/multifd.c:580:5
    #8 0x55764f6e1b14 in migration_cleanup ../migration/migration.c:1323:9
    #9 0x55764f6f5bac in migration_cleanup_bh ../migration/migration.c:1350:5

Fixes: d39d0f3acd ("io: fix cleanup for TLS I/O source data on cancellation")
Fixes: 1b63062f57 ("io: fix cleanup for TLS I/O source data on cancellation") in 10.0.x series
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Acked-by: Daniel P. Berrangé <berrange@redhat.com>
Link: https://lore.kernel.org/qemu-devel/20260311213418.16951-3-farosas@suse.de
Signed-off-by: Fabiano Rosas <farosas@suse.de>
(cherry picked from commit c20f143cc9)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
2026-03-31 20:06:51 +03:00
..
channel-buffer.c io: Add support for MSG_PEEK for socket channel 2023-02-06 19:22:56 +01:00
channel-command.c io: follow coroutine AioContext in qio_channel_yield() 2023-09-07 20:32:11 -05:00
channel-file.c io: Stop using qemu_open_old in channel-file 2024-06-21 09:47:22 -03:00
channel-null.c io: follow coroutine AioContext in qio_channel_yield() 2023-09-07 20:32:11 -05:00
channel-socket.c qio: add support for SO_PEERCRED for socket channel 2024-07-22 13:47:41 +02:00
channel-tls.c io: Fix TLS bye task leak 2026-03-31 20:06:51 +03:00
channel-util.c io: follow coroutine AioContext in qio_channel_yield() 2023-09-07 20:32:11 -05:00
channel-watch.c win32: avoid mixing SOCKET and file descriptor space 2023-03-13 15:39:31 +04:00
channel-websock.c io: fix cleanup for websock I/O source data on cancellation 2026-03-11 16:39:03 +03:00
channel.c io: Add flags argument to qio_channel_readv_full_all_eof 2025-02-14 15:19:04 -03:00
dns-resolver.c build-sys: add HAVE_IPPROTO_MPTCP 2021-09-30 15:30:25 +02:00
meson.build Revert "meson: Propagate gnutls dependency" 2024-07-03 18:41:26 +02:00
net-listener.c qio: Protect NetListener callback with mutex 2025-11-21 16:01:47 +03:00
task.c io: separate freeing of tasks from marking them as complete 2026-03-11 16:37:26 +03:00
trace-events qio: Remember context of qio_net_listener_set_client_func_full 2025-11-21 16:01:47 +03:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00