diff options
Diffstat (limited to 'fs/dax.c')
-rw-r--r-- | fs/dax.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/dax.c b/fs/dax.c index 93bf2f990ace4..7ae6df7ea1d2d 100644 --- a/fs/dax.c +++ b/fs/dax.c @@ -119,7 +119,8 @@ static ssize_t dax_io(struct inode *inode, struct iov_iter *iter, size_t len; if (pos == max) { unsigned blkbits = inode->i_blkbits; - sector_t block = pos >> blkbits; + long page = pos >> PAGE_SHIFT; + sector_t block = page << (PAGE_SHIFT - blkbits); unsigned first = pos - (block << blkbits); long size; |