aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/xen-blkback/common.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/block/xen-blkback/common.h')
-rw-r--r--drivers/block/xen-blkback/common.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/block/xen-blkback/common.h b/drivers/block/xen-blkback/common.h
index 1ac53da8410f..c6b4cb9af6c2 100644
--- a/drivers/block/xen-blkback/common.h
+++ b/drivers/block/xen-blkback/common.h
@@ -297,8 +297,6 @@ struct xen_blkif {
297 int free_pages_num; 297 int free_pages_num;
298 struct list_head free_pages; 298 struct list_head free_pages;
299 299
300 /* Allocation of pending_reqs */
301 struct pending_req *pending_reqs;
302 /* List of all 'pending_req' available */ 300 /* List of all 'pending_req' available */
303 struct list_head pending_free; 301 struct list_head pending_free;
304 /* And its spinlock. */ 302 /* And its spinlock. */
@@ -323,6 +321,13 @@ struct seg_buf {
323 unsigned int nsec; 321 unsigned int nsec;
324}; 322};
325 323
324struct grant_page {
325 struct page *page;
326 struct persistent_gnt *persistent_gnt;
327 grant_handle_t handle;
328 grant_ref_t gref;
329};
330
326/* 331/*
327 * Each outstanding request that we've passed to the lower device layers has a 332 * Each outstanding request that we've passed to the lower device layers has a
328 * 'pending_req' allocated to it. Each buffer_head that completes decrements 333 * 'pending_req' allocated to it. Each buffer_head that completes decrements
@@ -337,14 +342,9 @@ struct pending_req {
337 unsigned short operation; 342 unsigned short operation;
338 int status; 343 int status;
339 struct list_head free_list; 344 struct list_head free_list;
340 struct page *pages[MAX_INDIRECT_SEGMENTS]; 345 struct grant_page *segments[MAX_INDIRECT_SEGMENTS];
341 struct persistent_gnt *persistent_gnts[MAX_INDIRECT_SEGMENTS];
342 grant_handle_t grant_handles[MAX_INDIRECT_SEGMENTS];
343 grant_ref_t grefs[MAX_INDIRECT_SEGMENTS];
344 /* Indirect descriptors */ 346 /* Indirect descriptors */
345 struct persistent_gnt *indirect_persistent_gnts[MAX_INDIRECT_PAGES]; 347 struct grant_page *indirect_pages[MAX_INDIRECT_PAGES];
346 struct page *indirect_pages[MAX_INDIRECT_PAGES];
347 grant_handle_t indirect_handles[MAX_INDIRECT_PAGES];
348 struct seg_buf seg[MAX_INDIRECT_SEGMENTS]; 348 struct seg_buf seg[MAX_INDIRECT_SEGMENTS];
349 struct bio *biolist[MAX_INDIRECT_SEGMENTS]; 349 struct bio *biolist[MAX_INDIRECT_SEGMENTS];
350}; 350};