[PATCH] f2fs: allow compression of files without blocks

Chao Liu posted 1 patch 3 years, 10 months ago
There is a newer version of this series
fs/f2fs/file.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] f2fs: allow compression of files without blocks
Posted by Chao Liu 3 years, 10 months ago
From: Chao Liu <liuchao@coolpad.com>

Files created by truncate have a size but no blocks, so
they can be allowed to enable compression.

Signed-off-by: Chao Liu <liuchao@coolpad.com>
---
 fs/f2fs/file.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index 2d1114b0ceef..daaa0dfd2d2e 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -1879,7 +1879,7 @@ static int f2fs_setflags_common(struct inode *inode, u32 iflags, u32 mask)
 		if (iflags & F2FS_COMPR_FL) {
 			if (!f2fs_may_compress(inode))
 				return -EINVAL;
-			if (S_ISREG(inode->i_mode) && inode->i_size)
+			if (S_ISREG(inode->i_mode) && F2FS_HAS_BLOCKS(inode))
 				return -EINVAL;
 
 			set_compress_context(inode);
-- 
2.36.1
Re: [PATCH] f2fs: allow compression of files without blocks
Posted by Chao Yu 3 years, 10 months ago
On 2022/6/21 14:42, Chao Liu wrote:
> From: Chao Liu <liuchao@coolpad.com>
> 
> Files created by truncate have a size but no blocks, so

I didn't get it, how can we create file by truncation...

Thanks,

> they can be allowed to enable compression.
> 
> Signed-off-by: Chao Liu <liuchao@coolpad.com>
> ---
>   fs/f2fs/file.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
> index 2d1114b0ceef..daaa0dfd2d2e 100644
> --- a/fs/f2fs/file.c
> +++ b/fs/f2fs/file.c
> @@ -1879,7 +1879,7 @@ static int f2fs_setflags_common(struct inode *inode, u32 iflags, u32 mask)
>   		if (iflags & F2FS_COMPR_FL) {
>   			if (!f2fs_may_compress(inode))
>   				return -EINVAL;
> -			if (S_ISREG(inode->i_mode) && inode->i_size)
> +			if (S_ISREG(inode->i_mode) && F2FS_HAS_BLOCKS(inode))
>   				return -EINVAL;
>   
>   			set_compress_context(inode);
Re: [PATCH] f2fs: allow compression of files without blocks
Posted by Chao Liu 3 years, 10 months ago
On Wed, Jun 22, 2022 at 08:50:33PM +0800, Chao Yu wrote:
> On 2022/6/21 14:42, Chao Liu wrote:
> > From: Chao Liu <liuchao@coolpad.com>
> >
> > Files created by truncate have a size but no blocks, so
>
> I didn't get it, how can we create file by truncation...

I'm sorry I didn't make it clear. We can create a file
by passing a FILE parameter that does not exist
to the user command truncate(1) [1].

How about using truncate(1) instead of truncate
in the description of the change?

Thanks,

[1] truncate(1): https://man7.org/linux/man-pages/man1/truncate.1.html
Re: [PATCH] f2fs: allow compression of files without blocks
Posted by Chao Yu 3 years, 9 months ago
On 2022/6/23 12:24, Chao Liu wrote:
> On Wed, Jun 22, 2022 at 08:50:33PM +0800, Chao Yu wrote:
>> On 2022/6/21 14:42, Chao Liu wrote:
>>> From: Chao Liu <liuchao@coolpad.com>
>>>
>>> Files created by truncate have a size but no blocks, so
>>
>> I didn't get it, how can we create file by truncation...
> 
> I'm sorry I didn't make it clear. We can create a file
> by passing a FILE parameter that does not exist
> to the user command truncate(1) [1].
> 
> How about using truncate(1) instead of truncate
> in the description of the change?

Fine to me, as f2fs_disable_compressed_file() uses the same check
condition. ;)

Thanks,

> 
> Thanks,
> 
> [1] truncate(1): https://man7.org/linux/man-pages/man1/truncate.1.html
Re: [PATCH] f2fs: allow compression of files without blocks
Posted by Chao Liu 3 years, 9 months ago
On Wed, Jul 06, 2022 at 10:27:44PM +0800, Chao Yu wrote:
> On 2022/6/23 12:24, Chao Liu wrote:
> > On Wed, Jun 22, 2022 at 08:50:33PM +0800, Chao Yu wrote:
> > > On 2022/6/21 14:42, Chao Liu wrote:
> > > > From: Chao Liu <liuchao@coolpad.com>
> > > >
> > > > Files created by truncate have a size but no blocks, so
> > >
> > > I didn't get it, how can we create file by truncation...
> >
> > I'm sorry I didn't make it clear. We can create a file
> > by passing a FILE parameter that does not exist
> > to the user command truncate(1) [1].
> >
> > How about using truncate(1) instead of truncate
> > in the description of the change?
>
> Fine to me, as f2fs_disable_compressed_file() uses the same check
> condition. ;)

Thank you, let me send a v2 patch later. :-D
Re: [PATCH] f2fs: allow compression of files without blocks
Posted by Chao Liu 3 years, 9 months ago
Ping.

On Thu, Jun 23, 2022 at 12:24:04PM +0800, Chao Liu wrote:
> On Wed, Jun 22, 2022 at 08:50:33PM +0800, Chao Yu wrote:
> > On 2022/6/21 14:42, Chao Liu wrote:
> > > From: Chao Liu <liuchao@coolpad.com>
> > >
> > > Files created by truncate have a size but no blocks, so
> >
> > I didn't get it, how can we create file by truncation...
>
> I'm sorry I didn't make it clear. We can create a file
> by passing a FILE parameter that does not exist
> to the user command truncate(1) [1].
>
> How about using truncate(1) instead of truncate
> in the description of the change?
>
> Thanks,
>
> [1] truncate(1): https://man7.org/linux/man-pages/man1/truncate.1.html