On 06/16/2017 08:21 AM, Fam Zheng wrote:
On Thu, 06/15 11:08, Mao Zhongyi wrote:
From: Cao jin <[email protected]>
The non-blocking connect mechanism is obsolete, and it doesn't
work well in inet connection, because it will call getaddrinfo
first and getaddrinfo will blocks on DNS lookups. Since commit
e65c67e4 & d984464e, the non-blocking connect of migration goes
through QIOChannel in a different manner(using a thread), and
nobody use this old non-blocking connect anymore.
Any newly written code which needs a non-blocking connect should
use the QIOChannel code, so we can drop NonBlockingConnectHandler
as a concept entirely.
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Suggested-by: Daniel P. Berrange <[email protected]>
Signed-off-by: Cao jin <[email protected]>
Signed-off-by: Mao Zhongyi <[email protected]>
---
This patch was reviewed by Daniel about a years ago, but it has never
been merged just since socket_connect() called by net_socket_connect_init()
where NonBlockingConnectHandler was passed to socket_connect(). it's broken.
Now this problem was worked around by Daniel's patch(commit 6701e551 'Revert
"Change net/socket.c to use socket_*() functions" again'). Therefore, resend
it, of course, part of related code has changed over the years, so changed
the patch accordingly.
The reviewed patch listed on:
https://lists.gnu.org/archive/html/qemu-devel/2016-07/msg06373.html
block/sheepdog.c | 2 +-
include/qemu/sockets.h | 9 +--
io/channel-socket.c | 2 +-
util/qemu-sockets.c | 198 ++++++-------------------------------------------
As pointed out by patchew, looks like you forgot to update block/ssh.c.
Fam
Hi, Fam
Yes, I have noticed that, but only because the package libssh2-devel missed
in my system which leads to no error reported when I run make & make check.
Now find the reason, so it will be fixed in next version.
Thanks
Mao