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 <[email protected]>
Signed-off-by: David Sterba <[email protected]>
Signed-off-by: Chris Mason <[email protected]>
This commit is contained in:
Jeff Mahoney 2014-02-07 14:33:57 +01:00 • committed by Chris Mason
commit d0270aca88

View file

@ -4547,7 +4547,7 @@ static int btrfs_ioctl_set_fslabel(struct file *file, void __user *arg)
spin_lock(&root->fs_info->super_lock);
strcpy(super_block->label, label);
spin_unlock(&root->fs_info->super_lock);
ret = btrfs_end_transaction(trans, root);
ret = btrfs_commit_transaction(trans, root);
out_unlock:
mnt_drop_write_file(file);
@ -4711,7 +4711,7 @@ static int btrfs_ioctl_set_features(struct file *file, void __user *arg)
btrfs_set_super_incompat_flags(super_block, newflags);
spin_unlock(&root->fs_info->super_lock);
return btrfs_end_transaction(trans, root);
return btrfs_commit_transaction(trans, root);
}
long btrfs_ioctl(struct file *file, unsigned int