> > If the networking break or there's something wrong with rdma > > device(ib0 with no IP) during rdma migration, the main_loop of > > qemu will be blocked in rdma_destroy_id. I add rdma_ack_cm_event > > to fix this bug. > > > > Signed-off-by: Mo Yuxiang <moyuxi...@huawei.com> > > Signed-off-by: Gonglei <arei.gong...@huawei.com> > > --- > > migration-rdma.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/migration-rdma.c b/migration-rdma.c > > index eeb4302..f60749b 100644 > > --- a/migration-rdma.c > > +++ b/migration-rdma.c > > @@ -949,6 +949,7 @@ route: > > ERROR(errp, "result not equal to event_addr_resolved %s", > > rdma_event_str(cm_event->event)); > > perror("rdma_resolve_addr"); > > + rdma_ack_cm_event(cm_event); > > ret = -EINVAL; > > goto err_resolve_get_addr; > > } > > Reviewed-by: Michael R. Hines <mrhi...@us.ibm.com> > > Good catch. =) That's an obvious bug. It looks like I need > to do a much better job of "kill -9" inside the regression > testing scripts - probably i should try killing the migration > prematurely at different periods just to be sure there are > no more places where the connection state is not getting > cleaned up...... > Sounds good!
Best regards, -Gonglei