Merge branch 'for-4.9-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave...
[GitHub/moto-9609/android_kernel_motorola_exynos9610.git] / fs / btrfs / ioctl.c
index af69129d7e0e0b3bd269d30c4d6a20b583eb8d32..7acbd2cf6192ee8d967236f4b3aeecf1bfc98658 100644 (file)
@@ -349,7 +349,7 @@ static int btrfs_ioctl_setflags(struct file *file, void __user *arg)
 
        btrfs_update_iflags(inode);
        inode_inc_iversion(inode);
-       inode->i_ctime = current_fs_time(inode->i_sb);
+       inode->i_ctime = current_time(inode);
        ret = btrfs_update_inode(trans, root, inode);
 
        btrfs_end_transaction(trans, root);
@@ -445,7 +445,7 @@ static noinline int create_subvol(struct inode *dir,
        struct btrfs_root *root = BTRFS_I(dir)->root;
        struct btrfs_root *new_root;
        struct btrfs_block_rsv block_rsv;
-       struct timespec cur_time = current_fs_time(dir->i_sb);
+       struct timespec cur_time = current_time(dir);
        struct inode *inode;
        int ret;
        int err;
@@ -3292,7 +3292,7 @@ static int clone_finish_inode_update(struct btrfs_trans_handle *trans,
 
        inode_inc_iversion(inode);
        if (!no_time_update)
-               inode->i_mtime = inode->i_ctime = current_fs_time(inode->i_sb);
+               inode->i_mtime = inode->i_ctime = current_time(inode);
        /*
         * We round up to the block size at eof when determining which
         * extents to clone above, but shouldn't round up the file size.
@@ -3814,6 +3814,11 @@ process_slot:
                }
                btrfs_release_path(path);
                key.offset = next_key_min_offset;
+
+               if (fatal_signal_pending(current)) {
+                       ret = -EINTR;
+                       goto out;
+               }
        }
        ret = 0;
 
@@ -5107,7 +5112,7 @@ static long _btrfs_ioctl_set_received_subvol(struct file *file,
        struct btrfs_root *root = BTRFS_I(inode)->root;
        struct btrfs_root_item *root_item = &root->root_item;
        struct btrfs_trans_handle *trans;
-       struct timespec ct = current_fs_time(inode->i_sb);
+       struct timespec ct = current_time(inode);
        int ret = 0;
        int received_uuid_changed;