1. 01 11月, 2016 2 次提交
  2. 31 10月, 2016 1 次提交
  3. 28 10月, 2016 1 次提交
  4. 07 10月, 2016 1 次提交
  5. 06 9月, 2016 1 次提交
  6. 13 7月, 2016 6 次提交
  7. 29 6月, 2016 1 次提交
  8. 20 6月, 2016 5 次提交
  9. 16 6月, 2016 1 次提交
  10. 26 5月, 2016 4 次提交
  11. 19 5月, 2016 1 次提交
    • K
      blockjob: Don't set iostatus of target · 81e254dc
      Kevin Wolf 提交于
      When block job errors were introduced, we assigned the iostatus of the
      target BDS "just in case". The field has never been accessible for the
      user because the target isn't listed in query-block.
      
      Before we can allow the user to have a second BlockBackend on the
      target, we need to clean this up. If anything, we would want to set the
      iostatus for the internal BB of the job (which we can always do later),
      but certainly not for a separate BB which the job doesn't even use.
      
      As a nice side effect, this gets us rid of another bs->blk use.
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      Reviewed-by: NMax Reitz <mreitz@redhat.com>
      81e254dc
  12. 09 2月, 2016 1 次提交
    • F
      blockjob: Fix hang in block_job_finish_sync · 794f0141
      Fam Zheng 提交于
      With a mirror job running on a virtio-blk dataplane disk, sending "q" to
      HMP will cause a dead loop in block_job_finish_sync.
      
      This is because the aio_poll() only processes the AIO context of bs
      which has no more work to do, while the main loop BH that is scheduled
      for setting the job->completed flag is never processed.
      
      Fix this by adding a flag in BlockJob structure, to track which context
      to poll for the block job to make progress. Its value is set to true
      when block_job_coroutine_complete() is called, and is checked in
      block_job_finish_sync to determine which context to poll.
      Suggested-by: NStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NFam Zheng <famz@redhat.com>
      Message-id: 1454379144-29807-1-git-send-email-famz@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      794f0141
  13. 05 2月, 2016 1 次提交
    • P
      all: Clean up includes · d38ea87a
      Peter Maydell 提交于
      Clean up includes so that osdep.h is included first and headers
      which it implies are not included manually.
      
      This commit was created with scripts/clean-includes.
      Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1454089805-5470-16-git-send-email-peter.maydell@linaro.org
      d38ea87a
  14. 03 2月, 2016 1 次提交
  15. 12 11月, 2015 4 次提交
  16. 24 10月, 2015 1 次提交
  17. 20 10月, 2015 1 次提交
    • D
      coroutine: move into libqemuutil.a library · 10817bf0
      Daniel P. Berrange 提交于
      The coroutine files are currently referenced by the block-obj-y
      variable. The coroutine functionality though is already used by
      more than just the block code. eg migration code uses coroutine
      yield. In the future the I/O channel code will also use the
      coroutine yield functionality. Since the coroutine code is nicely
      self-contained it can be easily built as part of the libqemuutil.a
      library, making it widely available.
      
      The headers are also moved into include/qemu, instead of the
      include/block directory, since they are now part of the util
      codebase, and the impl was never in the block/ directory
      either.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      10817bf0
  18. 16 10月, 2015 1 次提交
  19. 07 7月, 2015 1 次提交
  20. 23 6月, 2015 2 次提交
  21. 28 4月, 2015 1 次提交
    • F
      blockjob: Allow nested pause · 751ebd76
      Fam Zheng 提交于
      This patch changes block_job_pause to increase the pause counter and
      block_job_resume to decrease it.
      
      The counter will allow calling block_job_pause/block_job_resume
      unconditionally on a job when we need to suspend the IO temporarily.
      
      From now on, each block_job_resume must be paired with a block_job_pause
      to keep the counter balanced.
      
      The user pause from QMP or HMP will only trigger block_job_pause once
      until it's resumed, this is achieved by adding a user_paused flag in
      BlockJob.
      
      One occurrence of block_job_resume in mirror_complete is replaced with
      block_job_enter which does what is necessary.
      
      In block_job_cancel, the cancel flag is good enough to instruct
      coroutines to quit loop, so use block_job_enter to replace the unpaired
      block_job_resume.
      
      Upon block job IO error, user is notified about the entering to the
      pause state, so this pause belongs to user pause, set the flag
      accordingly and expect a matching QMP resume.
      
      [Extended doc comments as suggested by Paolo Bonzini
      <pbonzini@redhat.com>.
      --Stefan]
      Signed-off-by: NFam Zheng <famz@redhat.com>
      Reviewed-by: NStefan Hajnoczi <stefanha@redhat.com>
      Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com>
      Reviewed-by: NAlberto Garcia <berto@igalia.com>
      Message-id: 1428069921-2957-2-git-send-email-famz@redhat.com
      Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com>
      Signed-off-by: NKevin Wolf <kwolf@redhat.com>
      751ebd76
  22. 03 11月, 2014 2 次提交