dax: Create local variable for vmf->flags & FAULT_FLAG_WRITE test
authorJan Kara <jack@suse.cz>
Wed, 1 Nov 2017 15:36:35 +0000 (16:36 +0100)
committerDan Williams <dan.j.williams@intel.com>
Fri, 3 Nov 2017 13:26:23 +0000 (06:26 -0700)
There are already two users and more are coming.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Ross Zwisler <ross.zwisler@linux.intel.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
fs/dax.c

index c094658..5ea7138 100644 (file)
--- a/fs/dax.c
+++ b/fs/dax.c
@@ -1116,6 +1116,7 @@ static int dax_iomap_pte_fault(struct vm_fault *vmf,
        struct iomap iomap = { 0 };
        unsigned flags = IOMAP_FAULT;
        int error, major = 0;
+       bool write = vmf->flags & FAULT_FLAG_WRITE;
        int vmf_ret = 0;
        void *entry;
 
@@ -1130,7 +1131,7 @@ static int dax_iomap_pte_fault(struct vm_fault *vmf,
                goto out;
        }
 
-       if ((vmf->flags & FAULT_FLAG_WRITE) && !vmf->cow_page)
+       if (write && !vmf->cow_page)
                flags |= IOMAP_WRITE;
 
        entry = grab_mapping_entry(mapping, vmf->pgoff, 0);
@@ -1207,7 +1208,7 @@ static int dax_iomap_pte_fault(struct vm_fault *vmf,
                break;
        case IOMAP_UNWRITTEN:
        case IOMAP_HOLE:
-               if (!(vmf->flags & FAULT_FLAG_WRITE)) {
+               if (!write) {
                        vmf_ret = dax_load_hole(mapping, entry, vmf);
                        goto finish_iomap;
                }