The map_page() call returns a u64, so using page->private or page->index
to store the result from that will truncate it on 32-bit systems.
Additionally, the next pointer is stored in page->mapping and we're
trying to remove references to page->mapping. So define a
driver-private struct which overlays struct page and lets us store the
64-bit result of map_page. Gets rid of the niu_next_page() macro;
we can use the much more natural page->next instead.
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>