diff options
author | Luiz Capitulino <lcapitulino@redhat.com> | 2011-07-29 14:26:33 -0300 |
---|---|---|
committer | Luiz Capitulino <lcapitulino@redhat.com> | 2011-09-15 16:39:32 -0300 |
commit | 1dfb4dd993f7122353fb2894f09dfcba894cd7d5 (patch) | |
tree | 72559b694b482e5b0dc1f77faf96aa31d3678f64 /hw/virtio-blk.c | |
parent | bff046f86b4f8970c722c3bc3e32173b8000e716 (diff) | |
download | qemu-1dfb4dd993f7122353fb2894f09dfcba894cd7d5.zip qemu-1dfb4dd993f7122353fb2894f09dfcba894cd7d5.tar.gz qemu-1dfb4dd993f7122353fb2894f09dfcba894cd7d5.tar.bz2 |
Replace the VMSTOP macros with a proper state type
Today, when notifying a VM state change with vm_state_notify(),
we pass a VMSTOP macro as the 'reason' argument. This is not ideal
because the VMSTOP macros tell why qemu stopped and not exactly
what the current VM state is.
One example to demonstrate this problem is that vm_start() calls
vm_state_notify() with reason=0, which turns out to be VMSTOP_USER.
This commit fixes that by replacing the VMSTOP macros with a proper
state type called RunState.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Diffstat (limited to 'hw/virtio-blk.c')
-rw-r--r-- | hw/virtio-blk.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/hw/virtio-blk.c b/hw/virtio-blk.c index c2ee000..daa8e42 100644 --- a/hw/virtio-blk.c +++ b/hw/virtio-blk.c @@ -77,7 +77,7 @@ static int virtio_blk_handle_rw_error(VirtIOBlockReq *req, int error, req->next = s->rq; s->rq = req; bdrv_mon_event(s->bs, BDRV_ACTION_STOP, is_read); - vm_stop(VMSTOP_DISKFULL); + vm_stop(RSTATE_IO_ERROR); } else { virtio_blk_req_complete(req, VIRTIO_BLK_S_IOERR); bdrv_acct_done(s->bs, &req->acct); @@ -439,7 +439,8 @@ static void virtio_blk_dma_restart_bh(void *opaque) virtio_submit_multiwrite(s->bs, &mrb); } -static void virtio_blk_dma_restart_cb(void *opaque, int running, int reason) +static void virtio_blk_dma_restart_cb(void *opaque, int running, + RunState state) { VirtIOBlock *s = opaque; |