[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] qcow2_open ignores EAGAIN
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-block] qcow2_open ignores EAGAIN |
Date: |
Thu, 19 Apr 2018 11:50:33 +0200 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
Am 19.04.2018 um 11:12 hat Olaf Hering geschrieben:
> Consider this qemu-2.11 backtrace on the receiving side of a live migration:
>
> qemu_lock_fd_test -> -EAGAIN
> raw_check_lock_bytes
> raw_handle_perm_lock
> bdrv_check_perm
> bdrv_check_update_perm
> bdrv_root_attach_child -> throws error away
> bdrv_attach_child
> bdrv_open_child
> qcow2_open
> bdrv_open_driver
> bdrv_open_common
> bdrv_open_inherit
> bdrv_open("/nfs/img.qcow2")
> blk_new_open
> blk_connect
> xen_be_try_initialise
> xen_be_check_state
> xenstore_update
> aio_dispatch_handlers
> aio_dispatch
> aio_ctx_dispatch
> ...
>
> I wonder which layer is supposed to deal with the -EAGAIN,
> and just keep going for a while?
EAGAIN means that the file is locked by somebody else. Returning an
error looks right to me.
The real question is why somebody else still holds a lock.
Kevin
signature.asc
Description: PGP signature