[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2] rbd: add an asynchronous flush
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH v2] rbd: add an asynchronous flush |
Date: |
Tue, 2 Apr 2013 16:10:42 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 29.03.2013 um 21:03 hat Josh Durgin geschrieben:
> The existing bdrv_co_flush_to_disk implementation uses rbd_flush(),
> which is sychronous and causes the main qemu thread to block until it
> is complete. This results in unresponsiveness and extra latency for
> the guest.
>
> Fix this by using an asynchronous version of flush. This was added to
> librbd with a special #define to indicate its presence, since it will
> be backported to stable versions. Thus, there is no need to check the
> version of librbd.
librbd is linked dynamically and the version on the build host isn't
necessarily the same as the version qemu is run with. So shouldn't this
better be a runtime check?
> Implement this as bdrv_aio_flush, since it matches other aio functions
> in the rbd block driver, and leave out bdrv_co_flush_to_disk when the
> asynchronous version is available.
>
> Reported-by: Oliver Francke <address@hidden>
> Signed-off-by: Josh Durgin <address@hidden>
Looks good otherwise.
Kevin
- Re: [Qemu-devel] [PATCH v2] rbd: add an asynchronous flush,
Kevin Wolf <=
- [Qemu-devel] [PATCH v3 1/2] rbd: add an asynchronous flush, Josh Durgin, 2013/04/04
- [Qemu-devel] [PATCH 2/2] rbd: disable unsupported librbd functions at runtime, Josh Durgin, 2013/04/04
- Re: [Qemu-devel] [PATCH 2/2] rbd: disable unsupported librbd functions at runtime, Kevin Wolf, 2013/04/04
- Re: [Qemu-devel] [PATCH 2/2] rbd: disable unsupported librbd functions at runtime, Josh Durgin, 2013/04/04
- Re: [Qemu-devel] [PATCH 2/2] rbd: disable unsupported librbd functions at runtime, Kevin Wolf, 2013/04/05
- [Qemu-devel] [PATCH v3 2/2] rbd: link and load librbd dynamically, Josh Durgin, 2013/04/09
- Re: [Qemu-devel] [PATCH v3 2/2] rbd: link and load librbd dynamically, Stefan Hajnoczi, 2013/04/10
- Re: [Qemu-devel] runtime Block driver modules (was Re: [PATCH v3 2/2] rbd: link and load librbd dynamically), Josh Durgin, 2013/04/10
- Re: [Qemu-devel] [PATCH v3 2/2] rbd: link and load librbd dynamically, Anthony Liguori, 2013/04/10
- Re: [Qemu-devel] [PATCH v3 2/2] rbd: link and load librbd dynamically, Paolo Bonzini, 2013/04/10