1. 22 Aug, 2013 3 commits
  2. 19 Aug, 2013 1 commit
  3. 19 Jul, 2013 1 commit
  4. 15 Mar, 2013 1 commit
    • Stefan Hajnoczi's avatar
      aio: add a ThreadPool instance to AioContext · 9b34277d
      Stefan Hajnoczi authored
      This patch adds a ThreadPool to AioContext.  It's possible that some
      AioContext instances will never use the ThreadPool, so defer creation
      until aio_get_thread_pool().
      
      The reason why AioContext should have the ThreadPool is because the
      ThreadPool is bound to a AioContext instance where the work item's
      callback function is invoked.  It doesn't make sense to keep the
      ThreadPool pointer anywhere other than AioContext.  For example,
      block/raw-posix.c can get its AioContext's ThreadPool and submit work.
      
      Special note about headers: I used struct ThreadPool in aio.h because
      there is a circular dependency if aio.h includes thread-pool.h.
      Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
      9b34277d
  5. 21 Feb, 2013 1 commit
  6. 19 Dec, 2012 2 commits
  7. 11 Dec, 2012 1 commit
  8. 12 Nov, 2012 1 commit
  9. 30 Oct, 2012 6 commits
  10. 01 May, 2012 1 commit
  11. 26 Apr, 2012 1 commit
  12. 21 Oct, 2011 1 commit
  13. 06 Sep, 2011 1 commit
    • Kevin Wolf's avatar
      async: Allow nested qemu_bh_poll calls · 648fb0ea
      Kevin Wolf authored
      qemu may segfault when a BH handler first deletes a BH and then (possibly
      indirectly) calls a nested qemu_bh_poll(). This is because the inner instance
      frees the BH and deletes it from the list that the outer one processes.
      
      This patch deletes BHs only in the outermost qemu_bh_poll instance.
      
      Commit 7887f620 already tried to achieve the same, but it assumed that the BH
      handler would only delete its own BH. With a nested qemu_bh_poll(), this isn't
      guaranteed, so that commit wasn't enough. Hope this one fixes it for real.
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      648fb0ea
  14. 21 Aug, 2011 1 commit
  15. 02 Aug, 2011 1 commit
    • Kevin Wolf's avatar
      async: Remove AsyncContext · 384acbf4
      Kevin Wolf authored
      The purpose of AsyncContexts was to protect qcow and qcow2 against reentrancy
      during an emulated bdrv_read/write (which includes a qemu_aio_wait() call and
      can run AIO callbacks of different requests if it weren't for AsyncContexts).
      
      Now both qcow and qcow2 are protected by CoMutexes and AsyncContexts can be
      removed.
      Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
      384acbf4
  16. 15 Jun, 2011 1 commit
  17. 27 Oct, 2009 2 commits