Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Oct 27, 2009
  1. Add qemu_aio_process_queue()

    Kevin Wolf committed with Anthony Liguori
    We'll leave some AIO completions unhandled when we can't call the callback.
    qemu_aio_process_queue() is used later to run any callbacks that are left and
    can be run then.
    Signed-off-by: Kevin Wolf <>
    Signed-off-by: Anthony Liguori <>
Commits on Jun 15, 2009
  1. fix qemu_aio_flush

    Andrea Arcangeli committed with Christoph Hellwig
    qemu_aio_wait by invoking the bh or one of the aio completion
    callbacks, could end up submitting new pending aio, breaking the
    invariant that qemu_aio_flush returns only when no pending aio is
    outstanding (possibly a problem for migration as such).
    Signed-off-by: Andrea Arcangeli <>
    Signed-off-by: Christoph Hellwig <>
    Acked-by: Kevin Wolf <>
Commits on Sep 22, 2008
  1. Refactor AIO to allow multiple AIO implementations

    aliguori committed
    This patch refactors the AIO layer to allow multiple AIO implementations.  It's
    only possible because of the recent signalfd() patch.  
    Right now, the AIO infrastructure is pretty specific to the block raw backend.
    For other block devices to implement AIO, the qemu_aio_wait function must
    support registration.  This patch introduces a new function,
    qemu_aio_set_fd_handler, which can be used to register a file descriptor to be
    called back.  qemu_aio_wait() now polls a set of file descriptors registered
    with this function until one becomes readable or writable.
    This patch should allow the implementation of alternative AIO backends (via a
    thread pool or linux-aio) and AIO backends in non-traditional block devices
    (like NBD).
    Signed-off-by: Anthony Liguori <>
    git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162
Something went wrong with that request. Please try again.