On 09/20/2012 04:19 PM, Markus Armbruster wrote:
> Orit Wasserman <owass...@redhat.com> writes:
> 
>> Changes from v2:
>>      - remove the use of getnameinfo
>>      - remove errp for inet_connect_addr
>>      - remove QemuOpt "block"
>>      - fix errors in wait_for_connect 
>>      - pass ConnectState as a parameter to allow concurrent connect ops
>>
>> getaddrinfo can give us a list of addresses, but we only try to
>> connect to the first one. If that fails we never proceed to
>> the next one.  This is common on desktop setups that often have ipv6
>> configured but not actually working.
>> A simple way to reproduce the problem is migration:
>> for the destination use -incoming tcp:0:4444, run migrate -d 
>> tcp:localhost:4444
>> migration will fail on hosts that have both IPv4 and IPV6 address for 
>> localhost.
>>
>> To fix this, refactor address resolution code and make 
>> inet_nonblocking_connect
>> retry connection with a different address.
> 
> Almost there for connect.
> 
> I'm afraid we have a similar problem with listen: we bind only on the
> first address that works.  Shouldn't we bind all of them?
> 
> http://www.akkadia.org/drepper/userapi-ipv6.html
> 
yes listen should be fixed but lets do it in a separate patch set.

Orit

Reply via email to