Li Zhijian <lizhij...@fujitsu.com> writes: > From: Li Zhijian <lizhij...@cn.fujitsu.com> > > Previously, we got a confusion error that complains > the RDMAControlHeader.repeat: > qemu-system-x86_64: rdma: Too many requests in this message > (3638950032).Bailing. > > Actually, it's caused by an unexpected RDMAControlHeader.type. > After this patch, error will become: > qemu-system-x86_64: Unknown control message QEMU FILE > > Signed-off-by: Li Zhijian <lizhij...@cn.fujitsu.com> > --- > migration/rdma.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/migration/rdma.c b/migration/rdma.c > index a2a3db35b1..3073d9953c 100644 > --- a/migration/rdma.c > +++ b/migration/rdma.c > @@ -2812,7 +2812,7 @@ static ssize_t qio_channel_rdma_writev(QIOChannel *ioc, > size_t remaining = iov[i].iov_len; > uint8_t * data = (void *)iov[i].iov_base; > while (remaining) { > - RDMAControlHeader head; > + RDMAControlHeader head = {}; > > len = MIN(remaining, RDMA_SEND_INCREMENT); > remaining -= len;
I'm struggling to see how head is used before we set the type a couple of lines below. Could you expand on it? Also, a smoke test could have caught both issues early on. Is there any reason for not having any?