diff options
Diffstat (limited to 'include/block/block_backup.h')
-rw-r--r-- | include/block/block_backup.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/include/block/block_backup.h b/include/block/block_backup.h index 157596c296..8a759477a3 100644 --- a/include/block/block_backup.h +++ b/include/block/block_backup.h @@ -20,6 +20,20 @@ #include "block/block_int.h" +typedef struct CowRequest { + int64_t start; + int64_t end; + QLIST_ENTRY(CowRequest) list; + CoQueue wait_queue; /* coroutines blocked on this request */ +} CowRequest; + +void backup_wait_for_overlapping_requests(BlockJob *job, int64_t sector_num, + int nb_sectors); +void backup_cow_request_begin(CowRequest *req, BlockJob *job, + int64_t sector_num, + int nb_sectors); +void backup_cow_request_end(CowRequest *req); + void backup_do_checkpoint(BlockJob *job, Error **errp); #endif |