Revision eaa6c85f
b/hw/virtio-blk.c | ||
---|---|---|
105 | 105 |
drive_get_on_error(req->dev->bs, is_read); |
106 | 106 |
VirtIOBlock *s = req->dev; |
107 | 107 |
|
108 |
if (action == BLOCK_ERR_IGNORE) |
|
108 |
if (action == BLOCK_ERR_IGNORE) { |
|
109 |
bdrv_mon_event(req->dev->bs, BDRV_ACTION_IGNORE, is_read); |
|
109 | 110 |
return 0; |
111 |
} |
|
110 | 112 |
|
111 | 113 |
if ((error == ENOSPC && action == BLOCK_ERR_STOP_ENOSPC) |
112 | 114 |
|| action == BLOCK_ERR_STOP_ANY) { |
113 | 115 |
req->next = s->rq; |
114 | 116 |
s->rq = req; |
115 | 117 |
vm_stop(0); |
118 |
bdrv_mon_event(req->dev->bs, BDRV_ACTION_STOP, is_read); |
|
116 | 119 |
} else { |
117 | 120 |
virtio_blk_req_complete(req, VIRTIO_BLK_S_IOERR); |
121 |
bdrv_mon_event(req->dev->bs, BDRV_ACTION_REPORT, is_read); |
|
118 | 122 |
} |
119 | 123 |
|
120 | 124 |
return 1; |
Also available in: Unified diff