Messages in this thread | | | Date | Fri, 21 Nov 2014 18:29:08 +0100 | From | David Sterba <> | Subject | Re: [PATCH v2 4/5] btrfs: don't allow -C or +c chattrs on a swap file |
| |
On Fri, Nov 21, 2014 at 02:08:30AM -0800, Omar Sandoval wrote: > @@ -293,14 +293,21 @@ static int btrfs_ioctl_setflags(struct file *file, void __user *arg) > } > } else {
You can put the condition here, instead of shifting the nested block.
} else if (!IS_SWAPFILE(inode)) {
> /* > - * Revert back under same assuptions as above > + * swap_activate checks that we don't swapon a copy-on-write > + * file, but we must also make sure that it doesn't become > + * copy-on-write. > */ > - if (S_ISREG(mode)) { > - if (inode->i_size == 0) > - ip->flags &= ~(BTRFS_INODE_NODATACOW > - | BTRFS_INODE_NODATASUM); > - } else { > - ip->flags &= ~BTRFS_INODE_NODATACOW; > + if (!IS_SWAPFILE(inode)) { > + /* > + * Revert back under same assumptions as above > + */ > + if (S_ISREG(mode)) { > + if (inode->i_size == 0) > + ip->flags &= ~(BTRFS_INODE_NODATACOW | > + BTRFS_INODE_NODATASUM); > + } else { > + ip->flags &= ~BTRFS_INODE_NODATACOW; > + } > } > }
| |