From: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
btrfs uses page->private as well to store extent_buffer. Make
the check stricter to make sure we are using page->private for iop by
comparing iblocksize < PAGE_SIZE.
Signed-off-by: Goldwyn Rodrigues <rgoldwyn@xxxxxxxx>
---
include/linux/iomap.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/include/linux/iomap.h b/include/linux/iomap.h
index f49767c7fd83..6511124e58b6 100644
--- a/include/linux/iomap.h
+++ b/include/linux/iomap.h
@@ -128,7 +128,8 @@ struct iomap_page {
static inline struct iomap_page *to_iomap_page(struct page *page)
{
- if (page_has_private(page))
+ if (i_blocksize(page->mapping->host) < PAGE_SIZE &&
+ page_has_private(page))
return (struct iomap_page *)page_private(page);
return NULL;
}
--
2.16.4