Re: [f2fs-dev] [PATCH] f2fs: prevent compressed file from being disabled after releasing cblocks

From: Chao Yu
Date: Mon Aug 31 2020 - 02:06:57 EST


On 2020/8/31 11:55, Daeho Jeong wrote:
- open(O_RDWR)
- ioctl(FS_IOC_SETFLAGS, F2FS_COMPR_FL)
- write()
- ioctl(RELEASE_COMPRESS_BLOCKS) -- inode is immutable now
- ioctl(FS_IOC_SETFLAGS, ~F2FS_COMPR_FL) -- Should we allow to update immutable inode?
as we know, normally, immutable inode should deny open(O_WRONLY or O_RDWR) and later update.


For this case, with this patch we'll return -EINVAL for
ioctl(FS_IOC_SETFLAGS, ~F2FS_COMPR_FL).
I thought RESERVE_COMPRESS_BLOCKS ioctl is always required to get the
file to normal mode after RELEASE_COMPRESS_BLOCKS is called.

That's an example, after compressed block release, shouldn't we disallow other ioctl
interface which updates immutable inode?

.