diff options
author | Pavel Dovgalyuk <Pavel.Dovgaluk@ispras.ru> | 2016-03-14 10:45:10 +0300 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2016-03-30 12:15:57 +0200 |
commit | 63785678f3941c84be01d3ab7867e2742ea9fe3e (patch) | |
tree | 789d6d22b463e23ea5737ce9036c8160eccfab1a /include/sysemu/replay.h | |
parent | 95b4aed5fd0bec00e2c3f754c86fec5ba7a83a20 (diff) |
replay: introduce block devices record/replay
This patch introduces block driver that implement recording
and replaying of block devices' operations.
All block completion operations are added to the queue.
Queue is flushed at checkpoints and information about processed requests
is recorded to the log. In replay phase the queue is matched with
events read from the log. Therefore block devices requests are processed
deterministically.
Signed-off-by: Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
[ kwolf: Rebased onto modified and already applied part of the series ]
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'include/sysemu/replay.h')
-rw-r--r-- | include/sysemu/replay.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/sysemu/replay.h b/include/sysemu/replay.h index 5854adc4e6..0a88393d2b 100644 --- a/include/sysemu/replay.h +++ b/include/sysemu/replay.h @@ -113,6 +113,8 @@ void replay_bh_schedule_event(QEMUBH *bh); void replay_input_event(QemuConsole *src, InputEvent *evt); /*! Adds input sync event to the queue */ void replay_input_sync_event(void); +/*! Adds block layer event to the queue */ +void replay_block_event(QEMUBH *bh, uint64_t id); /* Character device */ |