Skip to content
Snippets Groups Projects
  • Pavel Dovgaluk's avatar
    c8aa7895
    replay: don't drain/flush bdrv queue while RR is working · c8aa7895
    Pavel Dovgaluk authored
    
    In record/replay mode bdrv queue is controlled by replay mechanism.
    It does not allow saving or loading the snapshots
    when bdrv queue is not empty. Stopping the VM is not blocked by nonempty
    queue, but flushing the queue is still impossible there,
    because it may cause deadlocks in replay mode.
    This patch disables bdrv_drain_all and bdrv_flush_all in
    record/replay mode.
    
    Stopping the machine when the IO requests are not finished is needed
    for the debugging. E.g., breakpoint may be set at the specified step,
    and forcing the IO requests to finish may break the determinism
    of the execution.
    
    Signed-off-by: default avatarPavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
    Acked-by: default avatarKevin Wolf <kwolf@redhat.com>
    Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
    c8aa7895
    History
    replay: don't drain/flush bdrv queue while RR is working
    Pavel Dovgaluk authored
    
    In record/replay mode bdrv queue is controlled by replay mechanism.
    It does not allow saving or loading the snapshots
    when bdrv queue is not empty. Stopping the VM is not blocked by nonempty
    queue, but flushing the queue is still impossible there,
    because it may cause deadlocks in replay mode.
    This patch disables bdrv_drain_all and bdrv_flush_all in
    record/replay mode.
    
    Stopping the machine when the IO requests are not finished is needed
    for the debugging. E.g., breakpoint may be set at the specified step,
    and forcing the IO requests to finish may break the determinism
    of the execution.
    
    Signed-off-by: default avatarPavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
    Acked-by: default avatarKevin Wolf <kwolf@redhat.com>
    Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>