]> Pileus Git - ~andy/linux/blobdiff - fs/buffer.c
audit: make audit_compare_dname_path use parent_len helper
[~andy/linux] / fs / buffer.c
index 58e2e7b7737264fac2da09e2a71d451497e25e83..b5f044283edb53b1c9a65f01b385de3f77898a91 100644 (file)
@@ -2312,12 +2312,6 @@ int __block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
        loff_t size;
        int ret;
 
-       /*
-        * Update file times before taking page lock. We may end up failing the
-        * fault so this update may be superfluous but who really cares...
-        */
-       file_update_time(vma->vm_file);
-
        lock_page(page);
        size = i_size_read(inode);
        if ((page->mapping != inode->i_mapping) ||
@@ -2355,6 +2349,13 @@ int block_page_mkwrite(struct vm_area_struct *vma, struct vm_fault *vmf,
        struct super_block *sb = vma->vm_file->f_path.dentry->d_inode->i_sb;
 
        sb_start_pagefault(sb);
+
+       /*
+        * Update file times before taking page lock. We may end up failing the
+        * fault so this update may be superfluous but who really cares...
+        */
+       file_update_time(vma->vm_file);
+
        ret = __block_page_mkwrite(vma, vmf, get_block);
        sb_end_pagefault(sb);
        return block_page_mkwrite_return(ret);