[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [sheepdog] [PATCH 03/11] qemu-sockets: make wait_for_co
From: |
MORITA Kazutaka |
Subject: |
Re: [Qemu-devel] [sheepdog] [PATCH 03/11] qemu-sockets: make wait_for_connect be invoked in qemu_aio_wait |
Date: |
Wed, 24 Jul 2013 16:41:33 +0900 |
User-agent: |
Wanderlust/2.15.9 (Almost Unreal) Emacs/23.2 Mule/6.0 (HANACHIRUSATO) |
At Tue, 23 Jul 2013 13:36:08 +0200,
Paolo Bonzini wrote:
>
> Il 23/07/2013 10:30, MORITA Kazutaka ha scritto:
> > This allows us to use inet_nonblocking_connect() and
> > unix_nonblocking_connect() in block drivers.
> >
> > qemu-ga needs to link block-obj to resolve dependencies of
> > qemu_aio_set_fd_handler().
> >
> > Signed-off-by: MORITA Kazutaka <address@hidden>
>
> I'm not sure this is safe. You could have e.g. migration start during
> qemu_aio_wait().
I thought that it is safe. Qemu creates another thread for migration
and it can be started at any time, either way. However, so as not to
hurt the existing codes, it might be better to create another
nonblocking connect for qemu_aio_wait().
I think of dropping this patch from this series and will leave it for
another day. Usually, sheepdog users prepare a local sheepdog daemon
to be connected to, and connect() is unlikely to sleep for a long
time. Using a blocking connect wouldn't be a big problem.
Thanks,
Kazutaka
- [Qemu-devel] [PATCH 00/11] sheepdog: reconnect server after connection failure, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 06/11] sheepdog: handle vdi objects in resend_aio_req, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 04/11] sheepdog: make connect nonblocking, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 03/11] qemu-sockets: make wait_for_connect be invoked in qemu_aio_wait, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 02/11] iov: handle EOF in iov_send_recv, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 01/11] ignore SIGPIPE in qemu-img and qemu-io, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 09/11] sheepdog: try to reconnect to sheepdog after network error, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 07/11] sheepdog: reload inode outside of resend_aioreq, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 11/11] sheepdog: cancel aio requests if possible, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 08/11] coroutine: add co_aio_sleep_ns() to allow sleep in block drivers, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 05/11] sheepdog: check return values of qemu_co_recv/send correctly, MORITA Kazutaka, 2013/07/23
- [Qemu-devel] [PATCH 10/11] sheepdog: make add_aio_request and send_aioreq void functions, MORITA Kazutaka, 2013/07/23