migration/rdma: Fix a memory issue for migration
authorYu Zhang <yu.zhang@ionos.com>
Wed, 6 Mar 2024 08:06:54 +0000 (09:06 +0100)
committerPeter Xu <peterx@redhat.com>
Mon, 11 Mar 2024 18:41:40 +0000 (14:41 -0400)
commit69f7b00d057f8832a841a53d5ee31eb303157398
treeb8545b7013072b6835639cf04bb0a53f9e998d47
parent61dec060821de5d81a0c5f6b827e4f0282cd92ca
migration/rdma: Fix a memory issue for migration

In commit 3fa9642ff7 change was made to convert the RDMA backend to
accept MigrateAddress struct. However, the assignment of "host" leads
to data corruption on the target host and the failure of migration.

    isock->host = rdma->host;

By allocating the memory explicitly for it with g_strdup_printf(), the
issue is fixed and the migration doesn't fail any more.

Fixes: 3fa9642ff7 ("migration: convert rdma backend to accept MigrateAddress")
Cc: qemu-stable <qemu-stable@nongnu.org>
Cc: Li Zhijian <lizhijian@fujitsu.com>
Link: https://lore.kernel.org/r/CAHEcVy4L_D6tuhJ8h=xLR4WaPaprJE3nnxZAEyUnoTrxQ6CF5w@mail.gmail.com
Signed-off-by: Yu Zhang <yu.zhang@ionos.com>
[peterx: use g_strdup() instead of g_strdup_printf(), per Zhijian]
Signed-off-by: Peter Xu <peterx@redhat.com>
migration/rdma.c