Hi, Currently migration-tcp.c uses the IPv4-only socket functions, making migrations over IPv6 impossible. Following is a tentative patch that switches it to use inet_connect() and inet_listen().
However, the patch loses the non-blocking connect() behaviour seen with the previous code. I'm not sure how much of an issue this is - if connect() blocks here, does it block execution of the VM? If so, I guess we need a non-blocking form of inet_connect(), or some way of replicating the behaviour - it would potentially be needed for my NBD reconnection patches too? I can see that a blocking connect() might not be an issue while the KVM process is starting up, but could cause problems if we try to reconnect while emulation is ongoing. Thoughts? /Nick