Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Q qemu
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • TheBigBang
  • qemu
  • Repository
Switch branch/tag
  • qemu
  • include
  • block
  • blockjob_int.h
Find file BlameHistoryPermalink
  • Paolo Bonzini's avatar
    blockjob: reimplement block_job_sleep_ns to allow cancellation · fc24908e
    Paolo Bonzini authored Nov 29, 2017
    This reverts the effects of commit 4afeffc8
    
     ("blockjob: do not allow
    coroutine double entry or entry-after-completion", 2017-11-21)
    
    This fixed the symptom of a bug rather than the root cause. Canceling the
    wait on a sleeping blockjob coroutine is generally fine, we just need to
    make it work correctly across AioContexts.  To do so, use a QEMUTimer
    that calls block_job_enter.  Use a mutex to ensure that block_job_enter
    synchronizes correctly with block_job_sleep_ns.
    
    Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
    Tested-By: default avatarJeff Cody <jcody@redhat.com>
    Reviewed-by: default avatarFam Zheng <famz@redhat.com>
    Reviewed-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
    Reviewed-by: default avatarJeff Cody <jcody@redhat.com>
    Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
    fc24908e