Revision 593fb83c block/qcow2.h

b/block/qcow2.h
196 196

  
197 197
struct QCowAIOCB;
198 198

  
199
typedef struct Qcow2COWRegion {
200
    /**
201
     * Offset of the COW region in bytes from the start of the first cluster
202
     * touched by the request.
203
     */
204
    uint64_t    offset;
205

  
206
    /** Number of sectors to copy */
207
    int         nb_sectors;
208
} Qcow2COWRegion;
209

  
199 210
/* XXX This could be private for qcow2-cluster.c */
200 211
typedef struct QCowL2Meta
201 212
{
......
209 220
    uint64_t alloc_offset;
210 221

  
211 222
    /**
212
     * Number of sectors between the start of the first allocated cluster and
213
     * the area that the guest actually writes to.
214
     */
215
    int n_start;
216

  
217
    /**
218 223
     * Number of sectors from the start of the first allocated cluster to
219 224
     * the end of the (possibly shortened) request
220 225
     */
......
229 234
     */
230 235
    CoQueue dependent_requests;
231 236

  
237
    /**
238
     * The COW Region between the start of the first allocated cluster and the
239
     * area the guest actually writes to.
240
     */
241
    Qcow2COWRegion cow_start;
242

  
243
    /**
244
     * The COW Region between the area the guest actually writes to and the
245
     * end of the last allocated cluster.
246
     */
247
    Qcow2COWRegion cow_end;
248

  
232 249
    QLIST_ENTRY(QCowL2Meta) next_in_flight;
233 250
} QCowL2Meta;
234 251

  

Also available in: Unified diff