diff options
| author | Jan Kara <jack@suse.cz> | 2016-11-10 10:26:50 +1100 |
|---|---|---|
| committer | Dave Chinner <david@fromorbit.com> | 2016-11-10 10:26:50 +1100 |
| commit | 9484ab1bf4464faae695321dd4fa66365beda74e (patch) | |
| tree | f9fabeb09ceccf608881a9a72d0601b88cc4732b /fs/dax.c | |
| parent | 190b5caad750942c0791889b809ce04b1eede43d (diff) | |
| download | net-9484ab1bf4464faae695321dd4fa66365beda74e.tar.gz | |
dax: Introduce IOMAP_FAULT flag
Introduce a flag telling iomap operations whether they are handling a
fault or other IO. That may influence behavior wrt inode size and
similar things.
Signed-off-by: Jan Kara <jack@suse.cz>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'fs/dax.c')
| -rw-r--r-- | fs/dax.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/dax.c b/fs/dax.c index 281e91a6336742..28af41b9da3ac6 100644 --- a/fs/dax.c +++ b/fs/dax.c @@ -1266,7 +1266,7 @@ int dax_iomap_fault(struct vm_area_struct *vma, struct vm_fault *vmf, loff_t pos = (loff_t)vmf->pgoff << PAGE_SHIFT; sector_t sector; struct iomap iomap = { 0 }; - unsigned flags = 0; + unsigned flags = IOMAP_FAULT; int error, major = 0; int locked_status = 0; void *entry; @@ -1467,7 +1467,7 @@ int dax_iomap_pmd_fault(struct vm_area_struct *vma, unsigned long address, struct address_space *mapping = vma->vm_file->f_mapping; unsigned long pmd_addr = address & PMD_MASK; bool write = flags & FAULT_FLAG_WRITE; - unsigned int iomap_flags = write ? IOMAP_WRITE : 0; + unsigned int iomap_flags = (write ? IOMAP_WRITE : 0) | IOMAP_FAULT; struct inode *inode = mapping->host; int result = VM_FAULT_FALLBACK; struct iomap iomap = { 0 }; |
