diff options
author | Jeff Mahoney <jeffm@suse.com> | 2014-02-07 08:33:57 -0500 |
---|---|---|
committer | Chris Mason <clm@fb.com> | 2014-02-08 20:57:15 -0500 |
commit | d0270aca88966641eb15306e9bd0c7ad15321440 (patch) | |
tree | 807ba712623cff5b6f90f294e6671ca2520901ad /fs | |
parent | 6cc98d90f8d14f8ebce2391323929024d7eef39f (diff) |
btrfs: commit transaction after setting label and features
The set_fslabel ioctl uses btrfs_end_transaction, which means it's
possible that the change will be lost if the system crashes, same for
the newly set features. Let's use btrfs_commit_transaction instead.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <clm@fb.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/btrfs/ioctl.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index 34772cbcc7aa..5bbf6b7216c3 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c | |||
@@ -4547,7 +4547,7 @@ static int btrfs_ioctl_set_fslabel(struct file *file, void __user *arg) | |||
4547 | spin_lock(&root->fs_info->super_lock); | 4547 | spin_lock(&root->fs_info->super_lock); |
4548 | strcpy(super_block->label, label); | 4548 | strcpy(super_block->label, label); |
4549 | spin_unlock(&root->fs_info->super_lock); | 4549 | spin_unlock(&root->fs_info->super_lock); |
4550 | ret = btrfs_end_transaction(trans, root); | 4550 | ret = btrfs_commit_transaction(trans, root); |
4551 | 4551 | ||
4552 | out_unlock: | 4552 | out_unlock: |
4553 | mnt_drop_write_file(file); | 4553 | mnt_drop_write_file(file); |
@@ -4711,7 +4711,7 @@ static int btrfs_ioctl_set_features(struct file *file, void __user *arg) | |||
4711 | btrfs_set_super_incompat_flags(super_block, newflags); | 4711 | btrfs_set_super_incompat_flags(super_block, newflags); |
4712 | spin_unlock(&root->fs_info->super_lock); | 4712 | spin_unlock(&root->fs_info->super_lock); |
4713 | 4713 | ||
4714 | return btrfs_end_transaction(trans, root); | 4714 | return btrfs_commit_transaction(trans, root); |
4715 | } | 4715 | } |
4716 | 4716 | ||
4717 | long btrfs_ioctl(struct file *file, unsigned int | 4717 | long btrfs_ioctl(struct file *file, unsigned int |