From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51515) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adT1j-0001Tw-Gz for qemu-devel@nongnu.org; Tue, 08 Mar 2016 20:35:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adT1e-0006qo-TH for qemu-devel@nongnu.org; Tue, 08 Mar 2016 20:35:03 -0500 Received: from [59.151.112.132] (port=48366 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adT1e-0006pV-Eh for qemu-devel@nongnu.org; Tue, 08 Mar 2016 20:34:58 -0500 References: <1457320380-5111-1-git-send-email-jasowang@redhat.com> <56DE802F.2060502@redhat.com> <56DE8436.60304@cn.fujitsu.com> <56DE859B.8020404@redhat.com> <56DE9630.5020109@cn.fujitsu.com> From: Wen Congyang Message-ID: <56DF7E07.60803@cn.fujitsu.com> Date: Wed, 9 Mar 2016 09:36:07 +0800 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PULL 00/14] Net patches List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell , Zhang Chen Cc: Jason Wang , QEMU Developers On 03/08/2016 05:54 PM, Peter Maydell wrote: > On 8 March 2016 at 16:06, Zhang Chen wrote: >> I found the reason for this problem is that >> unix_connect() have not connect to sock_path before iov_send(). >> It need time to establish connection. so can we fix it with usleep() >> like this: >> >> recv_sock = unix_connect(sock_path, NULL); >> g_assert_cmpint(recv_sock, !=, -1); >> + usleep(1000); >> >> ret = iov_send(send_sock[0], iov, 2, 0, sizeof(size) + >> sizeof(send_buf)); >> g_assert_cmpint(ret, ==, sizeof(send_buf) + sizeof(size)); >> close(send_sock[0]); >> >> ret = qemu_recv(recv_sock, &len, sizeof(len), 0); > > I would prefer it if we could find a way to fix this race > reliably rather than just inserting a delay and hoping it > is sufficient. Otherwise the test is likely to be unreliable > if run on a heavily loaded or slow machine. Yes, but there is no way to know when tcp_chr_accept() is called. Add a event to notify it? Thanks Wen Congyang > > thanks > -- PMM > > >