Unverified Commit 33c569dd authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files

!10176 f2fs: compress: don't allow unaligned truncation on released compress inode

parents 782126b0 5258b482
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -931,9 +931,14 @@ int f2fs_setattr(struct mnt_idmap *idmap, struct dentry *dentry,
				  ATTR_GID | ATTR_TIMES_SET))))
		return -EPERM;

	if ((attr->ia_valid & ATTR_SIZE) &&
		!f2fs_is_compress_backend_ready(inode))
	if ((attr->ia_valid & ATTR_SIZE)) {
		if (!f2fs_is_compress_backend_ready(inode))
			return -EOPNOTSUPP;
		if (is_inode_flag_set(inode, FI_COMPRESS_RELEASED) &&
			!IS_ALIGNED(attr->ia_size,
			F2FS_BLK_TO_BYTES(F2FS_I(inode)->i_cluster_size)))
			return -EINVAL;
	}

	err = setattr_prepare(idmap, dentry, attr);
	if (err)