diff options
-rw-r--r-- | QMP/qmp-events.txt | 21 | ||||
-rw-r--r-- | monitor.c | 3 | ||||
-rw-r--r-- | monitor.h | 1 |
3 files changed, 25 insertions, 0 deletions
diff --git a/QMP/qmp-events.txt b/QMP/qmp-events.txt index dc48cccea1..d585a8d1b6 100644 --- a/QMP/qmp-events.txt +++ b/QMP/qmp-events.txt @@ -43,3 +43,24 @@ Data: 'server' and 'client' keys with the same keys as 'query-vnc'. Description: Issued when the VNC session is made active. Data: 'server' and 'client' keys with the same keys as 'query-vnc'. + +7 BLOCK_IO_ERROR +---------------- + +Description: Issued when a disk I/O error occurs +Data: + +- 'device': device name (json-string) +- 'operation': I/O operation (json-string, "read" or "write") +- 'action': action that has been taken, it's one of the following: + "ignore": error has been ignored + "report": error has been reported to the device + "stop": error caused VM to be stopped + +Example: + +{ "event": "BLOCK_IO_ERROR", + "data": { "device": "ide0-hd1", + "operation": "write", + "action": "stop" }, + "timestamp": { "seconds": 1265044230, "microseconds": 450486 } } @@ -388,6 +388,9 @@ void monitor_protocol_event(MonitorEvent event, QObject *data) case QEVENT_VNC_DISCONNECTED: event_name = "VNC_DISCONNECTED"; break; + case QEVENT_BLOCK_IO_ERROR: + event_name = "BLOCK_IO_ERROR"; + break; default: abort(); break; @@ -23,6 +23,7 @@ typedef enum MonitorEvent { QEVENT_VNC_CONNECTED, QEVENT_VNC_INITIALIZED, QEVENT_VNC_DISCONNECTED, + QEVENT_BLOCK_IO_ERROR, QEVENT_MAX, } MonitorEvent; |