ll_dio_pages is the main way we package pages for a DIO, so
as we work on removing cl_page for DIO, we need to put some
of the info in this struct.
This puts the 'to, from' page offsets for incomplete pages
in the package. This works because all pages except the
first and the last must be complete (the first and last can
be the same page).
Test-Parameters: trivial
Test-Parameters: forjanitoronly
Test-Parameters: fortestonly
Signed-off-by: Patrick Farrell <pfarrell@whamcloud.com>
Change-Id: I0ae4d617cb2f1310ae5981a9f9eb1480d13e1054
/** # of pages in the array. */
size_t ldp_count;
/* the file offset of the first page. */
- loff_t ldp_file_offset;
+ loff_t ldp_file_offset;
+ /* the first and last page can be incomplete, this records the
+ * offsets
+ */
+ int ldp_from;
+ int ldp_to;
};
/* Top level struct used for AIO and DIO */
ENTRY;
+ pv->ldp_from = offset & ~PAGE_MASK;
+ pv->ldp_to = (offset + size) & ~PAGE_MASK;
+
cl_2queue_init(queue);
while (size > 0) {
size_t from = offset & ~PAGE_MASK;