Re: [f2fs-dev] [PATCH] f2fs: fix to check readonly condition correctly

2023-04-11 Thread Jaegeuk Kim
On 04/11, Chao Yu wrote: > On 2023/4/10 10:19, Chao Yu wrote: > > On 2023/4/4 1:59, Jaegeuk Kim wrote: > > > On 04/02, Chao Yu wrote: > > > > This patch does below changes: > > > > > > > > - If f2fs enables readonly feature or device

Re: [f2fs-dev] [PATCH 1/2] f2fs: remove folio_detach_private() in .invalidate_folio and .release_folio

2023-04-11 Thread Jaegeuk Kim
On 04/11, Chao Yu wrote: > On 2023/4/11 2:33, Jaegeuk Kim wrote: > > On 04/10, Chao Yu wrote: > > > We have maintain PagePrivate and page_private and page reference > > > w/ {set,clear}_page_private_*, it doesn't need to call > > > folio_detach_priv

Re: [f2fs-dev] [PATCH] f2fs: fix to tag FIEMAP_EXTENT_DELALLOC in fiemap() for delay allocated extent

2023-04-11 Thread Jaegeuk Kim
On 04/11, Chao Yu wrote: > On 2023/4/11 16:14, Chao Yu wrote: > > On 2023/4/11 1:57, Jaegeuk Kim wrote: > > > On 04/08, Chao Yu wrote: > > > > On 2023/4/8 4:59, Jaegeuk Kim wrote: > > > > > This breaks generic/009? > > > > > &g

[f2fs-dev] [PATCH] f2fs-tools: upgrade version 1.16.0

2023-04-11 Thread Jaegeuk Kim
Signed-off-by: Jaegeuk Kim --- VERSION | 4 ++-- configure.ac | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/VERSION b/VERSION index bb79667e50a8..bae2e2c9e202 100644 --- a/VERSION +++ b/VERSION @@ -1,2 +1,2 @@ -1.15.0 -2022-05-13 +1.16.0 +2023-04-11 diff --git a

Re: [f2fs-dev] [PATCH] fsck.f2fs: fix sanity check logic for cp_payload

2023-04-11 Thread Jaegeuk Kim
On 04/10, Juhyung Park wrote: > Hi Jaegeuk, > > Thanks for the timely merge. > > Can we have a new f2fs-tools tag with this commit in place? > Alex (the original bug reporter) would like to see this incorporated > in the next version of Ubuntu (and Debian), and having a new tag is > much easier t

[f2fs-dev] [PATCH 2/2] f2fs: remove folio_detach_private() in .invalidate_folio and .release_folio

2023-04-12 Thread Jaegeuk Kim
"f2fs: remove set|get_private_inline to clean up"). Signed-off-by: Chao Yu Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 4 ++-- fs/f2fs/dir.c | 5 ++--- fs/f2fs/f2fs.h | 32 3 files changed, 12 insertions(+), 29 deletions(-) diff --git a/fs/f2fs/d

[f2fs-dev] [PATCH 1/2] f2fs: remove set|get_private_inline to clean up

2023-04-12 Thread Jaegeuk Kim
n corner case. Let's revert the original hack and rely on the generic write path to flush inline_data. Fixes: 2049d4fcb057 ("f2fs: avoid multiple node page writes due to inline_data") Fixes: b763f3bedc2d ("f2fs: restructure f2fs page.private layout") Signed-off-by: Jaegeu

Re: [f2fs-dev] [PATCH 1/2] f2fs: remove folio_detach_private() in .invalidate_folio and .release_folio

2023-04-12 Thread Jaegeuk Kim
On 04/11, Jaegeuk Kim wrote: > On 04/11, Chao Yu wrote: > > On 2023/4/11 2:33, Jaegeuk Kim wrote: > > > On 04/10, Chao Yu wrote: > > > > We have maintain PagePrivate and page_private and page reference > > > > w/ {set,clear}_page_private_*, it doesn't

Re: [f2fs-dev] [PATCH v2] f2fs: relax sanity check if checkpoint is corrupted

2023-04-12 Thread Jaegeuk Kim
1. extent_cache - let's drop the largest extent_cache 2. invalidate_block - don't show the warnings Signed-off-by: Jaegeuk Kim --- Change log from v1: - add one more case to skip the error message fs/f2fs/checkpoint.c | 10 ++ fs/f2fs/extent_ca

Re: [f2fs-dev] [PATCH 1/2] f2fs: remove set|get_private_inline to clean up

2023-04-12 Thread Jaegeuk Kim
On 04/12, Jaegeuk Kim wrote: > 2049d4fcb057 ("f2fs: avoid multiple node page writes due to inline_data") > introduced flushing inline_data when flushing node pages. > > b763f3bedc2d ("f2fs: restructure f2fs page.private layout") > Replace PageChecked with Page

Re: [f2fs-dev] [PATCH 1/2 v2] f2fs: remove set|get_private_inline to clean up

2023-04-12 Thread Jaegeuk Kim
We have maintain PagePrivate and page_private and page reference w/ {set,clear}_page_private_*, it doesn't need to call folio_detach_private() in the end of .invalidate_folio and .release_folio, remove it and use f2fs_bug_on instead. Signed-off-by: Chao Yu Signed-off-by: Jaegeu

Re: [f2fs-dev] [PATCH v2] f2fs: relax sanity check if checkpoint is corrupted

2023-04-13 Thread Jaegeuk Kim
On 04/13, Chao Yu wrote: > On 2023/4/13 0:17, Jaegeuk Kim wrote: > > 1. extent_cache > > - let's drop the largest extent_cache > > 2. invalidate_block > > - don't show the warnings > > > > Signed-off-by: Jaegeuk Kim > > --- > >

Re: [f2fs-dev] [PATCH] f2fs: remove bulk remove_proc_entry() and unnecessary kobject_del()

2023-04-13 Thread Jaegeuk Kim
On 04/13, Chao Yu wrote: > On 2023/4/7 3:16, Yangtao Li wrote: > > Convert to use remove_proc_subtree() and kill kobject_del() directly. > > kobject_put() actually covers kobject removal automatically, which is > > single stage removal. > > > > Signed-off-by: Yangtao Li > > --- > > fs/f2fs/sysf

Re: [f2fs-dev] [PATCH] f2fs: fix to trigger a checkpoint in the end of foreground garbage collection

2023-04-13 Thread Jaegeuk Kim
On 04/13, Chao Yu wrote: > On 2023/4/11 7:21, Jaegeuk Kim wrote: > > On 04/10, Chao Yu wrote: > > > On 2023/4/5 23:55, Jaegeuk Kim wrote: > > > > On 04/05, Chao Yu wrote: > > > > > On 2023/4/5 5:39, Jaegeuk Kim wrote: > > > >

Re: [f2fs-dev] [PATCH] f2fs: fix to trigger a checkpoint in the end of foreground garbage collection

2023-04-13 Thread Jaegeuk Kim
On 04/13, Jaegeuk Kim wrote: > On 04/13, Chao Yu wrote: > > On 2023/4/11 7:21, Jaegeuk Kim wrote: > > > On 04/10, Chao Yu wrote: > > > > On 2023/4/5 23:55, Jaegeuk Kim wrote: > > > > > On 04/05, Chao Yu wrote: > > > > > > On 2023

Re: [f2fs-dev] [PATCH] f2fs: fix to trigger a checkpoint in the end of foreground garbage collection

2023-04-13 Thread Jaegeuk Kim
Fixed a xfstests failure. >From 400c722c2117660b83190c88e5442d63fbbffe6e Mon Sep 17 00:00:00 2001 From: Jaegeuk Kim Date: Mon, 10 Apr 2023 14:48:50 -0700 Subject: [PATCH] f2fs: refactor f2fs_gc to call checkpoint in urgent condition The major change is to call checkpoint, if there's no

Re: [f2fs-dev] [PATCH v3] f2fs: relax sanity check if checkpoint is corrupted

2023-04-13 Thread Jaegeuk Kim
1. extent_cache - let's drop the largest extent_cache 2. invalidate_block - don't show the warnings Signed-off-by: Jaegeuk Kim --- change log from v1: - cover f2fs_read_multi_pages fs/f2fs/checkpoint.c | 10 ++ fs/f2fs/data.c | 4 fs/f2fs/extent_ca

Re: [f2fs-dev] [PATCH] f2fs_io: support checkpoint command

2023-04-17 Thread Jaegeuk Kim
On 04/17, Yonggil Song wrote: > >Fixed a xfstests failure. > > > >From 400c722c2117660b83190c88e5442d63fbbffe6e Mon Sep 17 00:00:00 2001 > >From: Jaegeuk Kim > >Date: Mon, 10 Apr 2023 14:48:50 -0700 > >Subject: [PATCH] f2fs: refactor f2fs_gc to call checkpoin

[f2fs-dev] [PATCH] f2fs: remove power-of-two limitation fo zoned device

2023-04-17 Thread Jaegeuk Kim
In f2fs, there's no reason to force po2. Signed-off-by: Jaegeuk Kim --- fs/f2fs/f2fs.h| 3 +-- fs/f2fs/gc.c | 2 +- fs/f2fs/segment.c | 2 +- fs/f2fs/super.c | 7 +-- 4 files changed, 4 insertions(+), 10 deletions(-) diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h

Re: [f2fs-dev] [PATCH v2] f2fs: remove power-of-two limitation fo zoned device

2023-04-18 Thread Jaegeuk Kim
In f2fs, there's no reason to force po2. Signed-off-by: Jaegeuk Kim --- Change log from v1: - fix udiv fs/f2fs/f2fs.h| 3 +-- fs/f2fs/gc.c | 4 ++-- fs/f2fs/segment.c | 2 +- fs/f2fs/super.c | 8 ++-- 4 files changed, 6 insertions(+), 11 deletions(-) diff --git a/fs

Re: [f2fs-dev] [PATCH 1/1] f2fs: allocate trace path buffer from names_cache

2023-04-18 Thread Jaegeuk Kim
On 04/18, Chao Yu wrote: > On 2023/4/14 18:43, Wu Bo wrote: > > It would be better to use the dedicated slab to store path. > > > > Signed-off-by: Wu Bo > > --- > > fs/f2fs/file.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/fs/f2fs/file.c b/fs/f2fs/file.

Re: [f2fs-dev] [PATCH 1/1] f2fs: allocate trace path buffer from names_cache

2023-04-19 Thread Jaegeuk Kim
On 04/19, Chao Yu wrote: > On 2023/4/19 0:07, Jaegeuk Kim wrote: > > On 04/18, Chao Yu wrote: > > > On 2023/4/14 18:43, Wu Bo wrote: > > > > It would be better to use the dedicated slab to store path. > > > > > > > > Signed-of

Re: [f2fs-dev] [PATCH 1/1] f2fs: allocate trace path buffer from names_cache

2023-04-19 Thread Jaegeuk Kim
On 04/19, Jaegeuk Kim wrote: > On 04/19, Chao Yu wrote: > > On 2023/4/19 0:07, Jaegeuk Kim wrote: > > > On 04/18, Chao Yu wrote: > > > > On 2023/4/14 18:43, Wu Bo wrote: > > > > > It would be better to use the dedicated slab to store pa

Re: [f2fs-dev] [PATCH v8] f2fs: support errors=remount-ro|continue|panic mountoption

2023-04-19 Thread Jaegeuk Kim
On 04/08, Chao Yu wrote: > This patch supports errors=remount-ro|continue|panic mount option, > by default it uses "remount-ro" mode. > > Signed-off-by: Chao Yu > Signed-off-by: Yangtao Li > --- > v8: > - record stop reason synchronously if it's from ioctl shutdown interface > - fix typo in doc

Re: [f2fs-dev] [PATCH] f2fs: add async reset zone command support

2023-04-19 Thread Jaegeuk Kim
On 04/14, Daejun Park wrote: > This patch enables submit reset zone command asynchornously. It helps > decrease average latency of write IOs in high utilization scenario by > faster checkpointing. > > Signed-off-by: Daejun Park > --- > Documentation/filesystems/f2fs.rst | 4 ++ > fs/f2fs/f2fs.h

Re: [f2fs-dev] [PATCH v4 1/2] f2fs: refactor struct iostat_lat_info

2023-04-19 Thread Jaegeuk Kim
On 04/08, Yangtao Li wrote: > The current code uses a mixture of MAX_IO_TYPE and NR_PAGE_TYPE > to form lat_type, and uses a two-dimensional array to store data. > NR_PAGE_TYPE is 3, which is unreasonable for a discard with a > PAGE_TYPE of 1. So this patch changes the array to a 1D array and > doe

Re: [f2fs-dev] [PATCH v8] f2fs: support errors=remount-ro|continue|panic mountoption

2023-04-20 Thread Jaegeuk Kim
On 04/20, Chao Yu wrote: > On 2023/4/20 4:19, Jaegeuk Kim wrote: > > On 04/08, Chao Yu wrote: > > > This patch supports errors=remount-ro|continue|panic mount option, > > > by default it uses "remount-ro" mode. > > > > > >

Re: [f2fs-dev] [PATCH] f2fs: remove unnessary comment in __may_age_extent_tree

2023-04-21 Thread Jaegeuk Kim
On 04/21, Chao Yu wrote: > On 2023/4/18 14:09, Qi Han wrote: > > This comment make no sense and is in the wrong place, so let's > > remove it. > > > > Signed-off-by: Qi Han > > --- > > fs/f2fs/extent_cache.c | 1 - > > 1 file changed, 1 deletion(-) > > > > diff --git a/fs/f2fs/extent_cache.c

Re: [f2fs-dev] [PATCH v8] f2fs: support errors=remount-ro|continue|panic mountoption

2023-04-21 Thread Jaegeuk Kim
On 04/21, Chao Yu wrote: > On 2023/4/21 0:34, Jaegeuk Kim wrote: > > On 04/20, Chao Yu wrote: > > > On 2023/4/20 4:19, Jaegeuk Kim wrote: > > > > On 04/08, Chao Yu wrote: > > > > > This patch supports errors=remount-ro|continue|panic mount option, &

[f2fs-dev] [GIT PULL] f2fs update for 6.4

2023-04-25 Thread Jaegeuk Kim
berg (1): f2fs: preserve direct write semantics when buffering is forced Jaegeuk Kim (10): f2fs: factor out victim_entry usage from general rb_tree use f2fs: factor out discard_cmd usage from general rb_tree use f2fs: remove entire rb_entry sharing f2fs: apply zone capac

Re: [f2fs-dev] [PATCH v2] f2fs: do not allow to defragment files have FI_COMPRESS_RELEASED

2023-04-27 Thread Jaegeuk Kim
On 04/27, Chao Yu wrote: > On 2023/4/26 0:47, Yangtao Li wrote: > > If a file has FI_COMPRESS_RELEASED, all writes for it should not be > > allowed. > > > > Fixes: 5fdb322ff2c2 ("f2fs: add F2FS_IOC_DECOMPRESS_FILE and > > F2FS_IOC_COMPRESS_FILE") > > Signed-off-by: Qi Han > > Signed-off-by: Yang

Re: [f2fs-dev] [PATCH] f2fs: remove some dead code

2023-04-27 Thread Jaegeuk Kim
On 04/18, Dan Carpenter wrote: > On Mon, Apr 17, 2023 at 10:51:46PM +0200, Christophe JAILLET wrote: > > > > - ret2 = filemap_check_errors(NODE_MAPPING(sbi)); > > - if (!ret) > > - ret = ret2; > > + ret = filemap_check_errors(NODE_MAPPING(sbi)); > > > > return ret; > > Let'

[f2fs-dev] [PATCH] f2fs: maintain six open zones for zoned devices

2023-05-05 Thread Jaegeuk Kim
From: Daeho Jeong To keep six open zone constraints, make them not to be open over six open zones. Signed-off-by: Daeho Jeong Signed-off-by: Jaegeuk Kim --- fs/f2fs/data.c | 57 ++ fs/f2fs/f2fs.h | 5 + 2 files changed, 62 insertions

[f2fs-dev] [PATCH] f2fs-tools: allocate memory to handle label

2023-05-05 Thread Jaegeuk Kim
Let's avoid memory alignment of sb->volume_name. Signed-off-by: Jaegeuk Kim --- fsck/main.c| 4 ++-- fsck/mount.c | 4 ++-- include/f2fs_fs.h | 4 ++-- lib/libf2fs.c | 37 - mkfs/f2fs_format.c | 2 +- 5 files changed, 35 in

[f2fs-dev] [PATCH] f2fs: fix the wrong condition to determine atomic context

2023-05-05 Thread Jaegeuk Kim
Should use !in_task for irq context. Fixes: 1aa161e43106 ("f2fs: fix scheduling while atomic in decompression path") Signed-off-by: Jaegeuk Kim --- fs/f2fs/compress.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/f2fs/compress.c b/fs/f2fs/compress.c index 11

Re: [f2fs-dev] [PATCH 6/6] f2fs-tools: use f2fs_init_inode() to clean up codes

2023-05-08 Thread Jaegeuk Kim
Added this to avoid android build failure. --- a/include/f2fs_fs.h +++ b/include/f2fs_fs.h @@ -23,6 +23,7 @@ #include #include +#include #include #include #include On 05/05, Chao Yu wrote: > No logic changes. > > Signed-off-by: Chao Yu > --- > fsck/node.c| 7 ++- > includ

Re: [f2fs-dev] [PATCH v6] f2fs: add async reset zone command support

2023-05-09 Thread Jaegeuk Kim
On 05/08, Daejun Park wrote: > v5 -> v6 > Added trace_f2fs_iostat support for zone reset command. > > v4 -> v5 > Added f2fs iostat for zone reset command. > > v3 -> v4 > Fixed build error caused by unused function. > > v2 -> v3 > Modified arguments to be correct for ftrace parameter. > Changed _

Re: [f2fs-dev] [PATCH 1/1] f2fs: pass I_NEW flag to trace event

2023-05-17 Thread Jaegeuk Kim
On 05/17, Wu Bo wrote: > On 2023/5/17 16:36, Chao Yu wrote: > > On 2023/5/17 11:59, Wu Bo wrote: > > > On 2023/5/17 10:44, Chao Yu wrote: > > > > On 2023/5/16 20:07, Wu Bo wrote: > > > > > Modify the order between 'trace_f2fs_iget' & > > > > > 'unlock_new_inode', so the > > > > > I_NEW can pass to

Re: [f2fs-dev] (2) [PATCH v6] f2fs: add async reset zone command support

2023-05-17 Thread Jaegeuk Kim
On 05/11, Daejun Park wrote: > > Sender : Jaegeuk Kim  > > Date : 2023-05-10 03:53 (GMT+9) > > Title : Re: [PATCH v6] f2fs: add async reset zone command support > > To : 박대준 > > CC : c...@kernel.org, > > rost...@goodmis.org, > > mhira...@kernel.org,

Re: [f2fs-dev] Kernel warnings 6.3.1

2023-05-17 Thread Jaegeuk Kim
Hi, Could you please consider v6.3.3 which has some fixes? Thanks, On 05/12, Richard Tresidder via Linux-f2fs-devel wrote: > Hi >    We're upgrading our systems from using a 5.1.7 based kernel to a 6.3.1 > based kernel. > I'm experiencing some warnings popping out occasionally from the f2fs driv

Re: [f2fs-dev] [PATCH] f2fs: maintain six open zones for zoned devices

2023-05-17 Thread Jaegeuk Kim
Applied the below comments. Thanks. On 05/17, Chao Yu wrote: > On 2023/5/5 23:50, Jaegeuk Kim wrote: > > From: Daeho Jeong > > > > To keep six open zone constraints, make them not to be open over six > > open zones. > > > > Signed-off-by: Daeh

Re: [f2fs-dev] [PATCH 3/4] mkfs.f2fs: cleanup w/ alloc_next_free_block()

2023-05-17 Thread Jaegeuk Kim
On 05/17, Chao Yu wrote: > Introduce alloc_next_free_block() to wrap below openned codes: > > blkaddr = get_sb(main_blkaddr) + > c.cur_seg[curseg_type] * c.blks_per_seg + > c.curseg_offset[curseg_type]; > > Meanwhile add curseg_offset field in f2f

Re: [f2fs-dev] [PATCH v2] f2fs: flush error flags in workqueue

2023-05-17 Thread Jaegeuk Kim
On 05/16, Chao Yu wrote: > In IRQ context, it wakes up workqueue to record errors into on-disk > superblock fields rather than in-memory fields. > Fixes:? > Signed-off-by: Chao Yu > --- > v2: > - make f2fs_record_errors() static. > fs/f2fs/compress.c | 2 +- > fs/f2fs/f2fs.h | 1 + > fs/

Re: [f2fs-dev] (2) (2) [PATCH v6] f2fs: add async reset zone command support

2023-05-23 Thread Jaegeuk Kim
On 05/18, Daejun Park wrote: > > On 05/11, Daejun Park wrote: > > > > Sender : Jaegeuk Kim  > > > > Date : 2023-05-10 03:53 (GMT+9) > > > > Title : Re: [PATCH v6] f2fs: add async reset zone command support > > > > To : 박대준 > > > >

Re: [f2fs-dev] [PATCH v7] fsck.f2fs: Detect and fix looped node chain efficiently

2023-05-23 Thread Jaegeuk Kim
On 05/23, Chunhai Guo wrote: > find_fsync_inode() detect the looped node chain by comparing the loop > counter with free blocks. While it may take tens of seconds to quit when > the free blocks are large enough. We can use Floyd's cycle detection > algorithm to make the detection more efficient, an

Re: [f2fs-dev] [PATCH] f2fs: fix to use le32_to_cpu() in RAW_IS_INODE()

2023-05-23 Thread Jaegeuk Kim
On 05/18, Chao Yu wrote: > __le32 type variable should be converted w/ le32_to_cpu() before access. > > Signed-off-by: Chao Yu > --- > fs/f2fs/f2fs.h | 6 +- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h > index 7f6c51a6b930..a4bff3b5b887

Re: [f2fs-dev] [PATCH 3/4] mkfs.f2fs: cleanup w/ alloc_next_free_block()

2023-05-23 Thread Jaegeuk Kim
On 05/18, Chao Yu wrote: > On 2023/5/18 9:36, Jaegeuk Kim wrote: > > On 05/17, Chao Yu wrote: > > > Introduce alloc_next_free_block() to wrap below openned codes: > > > > > > blkaddr = get_sb(main_blkaddr) + > > >

Re: [f2fs-dev] [PATCH v8] fsck.f2fs: Detect and fix looped node chain efficiently

2023-05-25 Thread Jaegeuk Kim
On 05/24, Chunhai Guo wrote: > find_fsync_inode() detect the looped node chain by comparing the loop > counter with free blocks. While it may take tens of seconds to quit when > the free blocks are large enough. We can use Floyd's cycle detection > algorithm to make the detection more efficient, an

Re: [f2fs-dev] [PATCH] f2fs: Detect and fix looped node chain efficiently

2023-05-26 Thread Jaegeuk Kim
Is this v9? Why does it have any history anymore? On 05/24, Chunhai Guo wrote: > find_fsync_dnodes() detect the looped node chain by comparing the loop > counter with free blocks. While it may take tens of seconds to quit when > the free blocks are large enough. We can use Floyd's cycle detection

Re: [f2fs-dev] [PATCH 2/2] f2fs-tools: reuse feature_table in print_sb_state()

2023-05-26 Thread Jaegeuk Kim
On 05/26, Chao Yu wrote: > Signed-off-by: Chao Yu > --- > fsck/mount.c | 56 +-- > include/f2fs_fs.h | 42 +-- > 2 files changed, 41 insertions(+), 57 deletions(-) > > diff --git a/fsck/mount.c b/fsck/mount.c > inde

Re: [f2fs-dev] [PATCH v2 4/4] mkfs.f2fs: refactor format flow for cleanup

2023-05-26 Thread Jaegeuk Kim
Applying: mkfs.f2fs: refactor format flow for cleanup .git/rebase-apply/patch:449: trailing whitespace. .git/rebase-apply/patch:652: trailing whitespace. .git/rebase-apply/patch:747: trailing whitespace. struct f2fs_node *raw_node = NULL; error: patch failed: include/f2fs_fs.h:494 error:

Re: [f2fs-dev] [PATCH v2] f2fs: fix to set noatime and immutable flag for quota file

2023-05-26 Thread Jaegeuk Kim
On 05/25, Chao Yu wrote: > We should set noatime bit for quota files, since no one cares about > atime of quota file, and we should set immutalbe bit as well, due to > nobody should write to the file through exported interfaces. > > Meanwhile this patch use inode_lock to avoid race condition durin

Re: [f2fs-dev] [PATCH 1/1] f2fs: fix args passed to trace_f2fs_lookup_end

2023-05-26 Thread Jaegeuk Kim
On 05/24, Wu Bo wrote: > The NULL return of 'd_splice_alias' dosen't mean error. > > Signed-off-by: Wu Bo > --- > fs/f2fs/namei.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c > index 77a71276ecb1..e5a3e39ce90c 100644 > --- a/fs/f2fs/

Re: [f2fs-dev] [PATCH] fsck.f2fs: clean up codes with IS_INODE()

2023-05-30 Thread Jaegeuk Kim
On 05/28, Chao Yu wrote: > and use le32_to_cpu() in IS_INODE(). > > Signed-off-by: Chao Yu > --- > fsck/fsck.c | 7 +++ > fsck/mount.c | 4 ++-- > fsck/node.h | 3 ++- > 3 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/fsck/fsck.c b/fsck/fsck.c > index e6ad71d..a4db2a3 10

Re: [f2fs-dev] [PATCH] f2fs: do more sanity check on inode

2023-05-30 Thread Jaegeuk Kim
On 05/29, Chao Yu wrote: > This patch does below changes: > - clean up check condition > - add sanity check for i_extra_isize w/ lower boundary > - add sanity check for feature dependency > - check i_extra_isize only if f2fs_has_extra_attr() is true Could you describe what is the current problem?

Re: [f2fs-dev] [PATCH v2 1/1] f2fs: fix args passed to trace_f2fs_lookup_end

2023-05-30 Thread Jaegeuk Kim
On 05/30, Wu Bo wrote: > The NULL return of 'd_splice_alias' dosen't mean error. Thus the > successful case will also return NULL, which makes the tracepoint always > print 'err=-ENOENT'. > > Signed-off-by: Wu Bo > --- > fs/f2fs/namei.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-

Re: [f2fs-dev] [PATCH v3 3/4] mkfs.f2fs: cleanup w/ alloc_next_free_block()

2023-05-30 Thread Jaegeuk Kim
On 05/27, Chao Yu wrote: > Introduce alloc_next_free_block() to wrap below openned codes: > > blkaddr = get_sb(main_blkaddr) + > c.cur_seg[curseg_type] * c.blks_per_seg + > c.curseg_offset[curseg_type]; > > Meanwhile add curseg_offset field in f2f

Re: [f2fs-dev] [RFC PATCH] f2fs: preserve direct write semantics when buffering is forced

2023-06-05 Thread Jaegeuk Kim
On 06/05, Hans Holmberg wrote: > > On Sun, Mar 26, 2023 at 04:39:10PM -0700, h...@infradead.org wrote: > > On Thu, Mar 23, 2023 at 05:46:37PM -0700, Jaegeuk Kim wrote: > > > > Yes, and that was exactly my point: with LFS mode, O_DIRECT write > > > > should n

Re: [f2fs-dev] [PATCH] f2fs: flag as supporting buffered async reads

2023-06-05 Thread Jaegeuk Kim
On 05/31, Juhyung Park wrote: > Hi Yangtao, > > I remember hearing that f2fs can perform relatively poorly under io_uring, > nice find. > > I suggest rewriting the commit message though. From the looks of it, it > might suggest that FMODE_BUF_RASYNC is a magic flag that automatically > improves p

[f2fs-dev] [PATCH] f2fs: compress tmp files given extension

2023-06-06 Thread Jaegeuk Kim
Let's compress tmp files for the given extension list. Signed-off-by: Jaegeuk Kim --- fs/f2fs/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c index 3e35eb7dbb8f..cdc94c8e60f7 100644 --- a/fs/f2fs/namei.c +++ b/fs/f2fs/na

[f2fs-dev] [PATCH] f2fs: set zstd default compression level to 3

2023-06-07 Thread Jaegeuk Kim
ZSTD does not support compress_level=0. The commit d7ffafc99c42 ("f2fs: add sanity compress level check for compressed file") revealed the issue. Signed-off-by: Jaegeuk Kim --- fs/f2fs/super.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/f2fs/super.c

Re: [f2fs-dev] [PATCH v3] f2fs: add f2fs_ioc_[get|set]_extra_attr

2023-06-07 Thread Jaegeuk Kim
Could you please split the patches to have one topic each? I do see - is_level_valid - f2fs_ioc_get_compress_blocks - f2fs_get_compress_option_v2 - f2fs_ioc_get|set_extra_attr Thanks, On 06/04, Sheng Yong wrote: > This patch introduces two ioctls: > * f2fs_ioc_get_extra_attr > * f2fs_ioc_

Re: [f2fs-dev] [PATCH] f2fs: set zstd default compression level to 3

2023-06-12 Thread Jaegeuk Kim
On 06/12, Chao Yu wrote: > On 2023/6/8 0:29, Jaegeuk Kim wrote: > > ZSTD does not support compress_level=0. > > IIUC, it looks the range is [0, ZSTD_MAX_CLEVEL], 0 equals to default > (ZSTD_CLEVEL_DEFAULT). Ok, that seems a quick workaround of zstd, since it'd be quite ha

[f2fs-dev] [PATCH] f2fs: set zstd default compression level to ZSTD_CLEVEL_DEFAULT

2023-06-12 Thread Jaegeuk Kim
ZSTD does not support compress_level=0. The commit d7ffafc99c42 ("f2fs: add sanity compress level check for compressed file") started to complain this. Signed-off-by: Jaegeuk Kim --- Change log from v1: - use default macro fs/f2fs/super.c | 2 +- 1 file changed, 1 insertion(+),

Re: [f2fs-dev] [PATCH] f2fs: compress tmp files given extension

2023-06-12 Thread Jaegeuk Kim
On 06/12, Chao Yu wrote: > On 2023/6/7 4:36, Jaegeuk Kim wrote: > > Let's compress tmp files for the given extension list. > > Could you please check below commit? IIRC, it was introduce to avoid > compressing > file which has unpredictable tmp file, e.g. foo.sox. >

Re: [f2fs-dev] [PATCH v4 5/6] f2fs: add f2fs_ioc_[get|set]_extra_attr

2023-06-12 Thread Jaegeuk Kim
On 06/12, Sheng Yong wrote: > This patch introduces two ioctls: > * f2fs_ioc_get_extra_attr > * f2fs_ioc_set_extra_attr > to get or modify values in f2fs_inode's extra attribute area. What'd be the main purpose of this new ioctl? Use-cases or examples? > > The argument of these two ioctls is

Re: [f2fs-dev] [PATCH v3] f2fs: add sanity compress level check for compressed file

2023-06-12 Thread Jaegeuk Kim
On 04/08, Yangtao Li wrote: > Commit 3fde13f817e2 ("f2fs: compress: support compress level") > forgot to do basic compress level check, let's add it. > > Signed-off-by: Yangtao Li > --- > fs/f2fs/inode.c | 106 +++- > 1 file changed, 77 insertions(+),

Re: [f2fs-dev] [PATCH v2] f2fs: do more sanity check on inode

2023-06-12 Thread Jaegeuk Kim
On 05/31, Chao Yu wrote: > There are several issues in sanity_check_inode(): > - The code looks not clean, it checks extra_attr related condition > dispersively. > - It missed to check i_extra_isize w/ lower boundary > - It missed to check feature dependency: prjquota, inode_chksum, > inode_crtime,

[f2fs-dev] [PATCH] f2fs: assign default compression level

2023-06-12 Thread Jaegeuk Kim
Let's avoid any confusion from assigning compress_level=0 for LZ4HC and ZSTD. Signed-off-by: Jaegeuk Kim --- fs/f2fs/compress.c | 3 +-- fs/f2fs/f2fs.h | 2 ++ fs/f2fs/super.c| 12 +++- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/fs/f2fs/compress.c

Re: [f2fs-dev] [PATCH v4 1/6] f2fs: add helper to check compression level

2023-06-12 Thread Jaegeuk Kim
Could you please check this version? https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git/commit/?h=dev-test&id=9c84aad379019a0d86655bb50bd7b4bc92683c4b On 06/12, Sheng Yong wrote: > This patch adds a helper function to check if compression level is > valid. > > Signed-off-by: Sheng

[f2fs-dev] [PATCH] f2fs: do not issue small discard commands during checkpoint

2023-06-13 Thread Jaegeuk Kim
If there're huge # of small discards, this will increase checkpoint latency insanely. Let's issue small discards only by trim. Signed-off-by: Jaegeuk Kim --- fs/f2fs/segment.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/fs/f2fs/segment.c b/fs/f2fs/segme

Re: [f2fs-dev] [PATCH] f2fs: set zstd default compression level to ZSTD_CLEVEL_DEFAULT

2023-06-13 Thread Jaegeuk Kim
On 06/13, Chao Yu wrote: > On 2023/6/12 23:17, Jaegeuk Kim wrote: > > ZSTD does not support compress_level=0. > > > > The commit d7ffafc99c42 ("f2fs: add sanity compress level check for > > compressed file") > > started to complain this. > >

Re: [f2fs-dev] [PATCH v2] f2fs: compress tmp files given extension

2023-06-13 Thread Jaegeuk Kim
Let's compress tmp files for the given extension list. This patch does not change the previous behavior, but allow the cases as below. Extention example: "ext" - abc.ext : allow - abc.ext.abc : allow - abc.extm : not allow Signed-off-by: Jaegeuk Kim --- Change log from v1:

[f2fs-dev] [PATCH] f2fs: remove i_xattr_sem to avoid deadlock and fix the original issue

2023-06-13 Thread Jaegeuk Kim
-write_checkpoint ... ... -alloc_nid <- nid reuse -get_node_page -f2fs_bug_on <- nid != node_footer->nid I think we don't need to truncate xattr pages eagerly which introduces lots of data r

Re: [f2fs-dev] [PATCH v2] f2fs: do not issue small discard commands during checkpoint

2023-06-14 Thread Jaegeuk Kim
If there're huge # of small discards, this will increase checkpoint latency insanely. Let's issue small discards only by trim. Signed-off-by: Jaegeuk Kim --- Change log from v1: - move the skip logic to avoid dangling objects fs/f2fs/segment.c | 2 +- 1 file changed, 1 inser

Re: [f2fs-dev] [PATCH] f2fs: do not issue small discard commands during checkpoint

2023-06-14 Thread Jaegeuk Kim
Hi Daejun, On 06/14, Daejun Park wrote: > Hi Jaegeuk, > > > If there're huge # of small discards, this will increase checkpoint latency > > insanely. Let's issue small discards only by trim. > > > > Signed-off-by: Jaegeuk Kim > > --- > >

Re: [f2fs-dev] [PATCH v8] fsck.f2fs: Detect and fix looped node chain efficiently

2023-06-14 Thread Jaegeuk Kim
On 06/14, Chunhai Guo wrote: > Hi Jaegeuk, > > Could you please help to confirm if this patch has been merged? I cannot see > the patch in the dev-test or dev branch. Thanks. Somehow it was dropped. I start to test again. > > Thanks. > > On 2023/5/24 10:42, 郭纯海 wrote: > > find_fsync_inode() de

Re: [f2fs-dev] f2fs async buffered write patch

2023-06-19 Thread Jaegeuk Kim
On 06/19, Jens Axboe wrote: > Hi, > > I came across this patch in a news posting: > > https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git/commit/?h=dev&id=d618126911829523e35a61f4a5a4ad159b1b2c8d > > which has me a bit worried. As far as I can tell, all that patch does is > set FMOD

Re: [f2fs-dev] [PATCH] f2fs: no need test opt for f2fs_issue_flush

2023-06-19 Thread Jaegeuk Kim
On 06/19, Chao Yu wrote: > On 2023/4/26 0:58, Yangtao Li wrote: > > This information can now be obtained from the mount, and there isi > > no need to print it out every time the trace event is triggered. > > It makes sense. > > Jaegeuk, is it intentional to print mount option in f2fs_issue_flush

Re: [f2fs-dev] Trying to use compression options in f2fs

2023-06-21 Thread Jaegeuk Kim
Hi, On 06/21, Michael Opdenacker via Linux-f2fs-devel wrote: > Greetings, > > I'm trying to compare the performance of the various compression options in > f2fs versus the default settings, on an SD card. > > Here's what I'm doing: > > * Creating the filesystem: >mkfs.f2fs -f -l data -O co

Re: [f2fs-dev] [PATCH v2] f2fs: compress tmp files given extension

2023-06-22 Thread Jaegeuk Kim
On 06/20, Chao Yu wrote: > On 2023/6/14 6:14, Jaegeuk Kim wrote: > > Let's compress tmp files for the given extension list. > > > > This patch does not change the previous behavior, but allow the cases as > > below. > > > > Extention example: "

Re: [f2fs-dev] [PATCH v3] f2fs: compress tmp files given extension

2023-06-22 Thread Jaegeuk Kim
Let's compress tmp files for the given extension list. This patch does not change the previous behavior, but allow the cases as below. Extention example: "ext" - abc.ext : allow - abc.ext.abc : allow - abc.extm : not allow Signed-off-by: Jaegeuk Kim --- Change log fr

Re: [f2fs-dev] [PATCH v8] fsck.f2fs: Detect and fix looped node chain efficiently

2023-06-23 Thread Jaegeuk Kim
On 06/23, Chao Yu wrote: > On 2023/5/24 10:42, Chunhai Guo wrote: > > + if (!c.fix_on) { > > err = -1; > > break; > > } > > One more comment. > > I guess we'd better skip find_fsync_inode() and continue fsck rather > than exiting direc

Re: [f2fs-dev] [PATCH 1/2 v2] f2fs: update mtime and ctime in move file range method

2023-06-23 Thread Jaegeuk Kim
On 06/23, Yunlei He wrote: > Mtime and ctime stay old value without update after move > file range ioctl. This patch add time update. > > Signed-off-by: Yunlei He > --- > v2: > -update both src and dst inode > fs/f2fs/file.c | 13 + > 1 file changed, 13 insertions(+) > > diff --git

Re: [f2fs-dev] [PATCH] f2fs: not allowed to set file both cold and hot

2023-06-23 Thread Jaegeuk Kim
On 06/20, Chao Yu wrote: > On 2023/6/20 10:42, 何云蕾(Yunlei he) wrote: > > > > On 2023/6/20 8:33, Chao Yu wrote: > > > On 2023/6/13 16:52, Yunlei He wrote: > > > > File set both cold and hot advise bit is confusion, so > > > > return EINVAL to avoid this case. > > > > > > > > Signed-off-by: Yunlei

Re: [f2fs-dev] [PATCH v4] f2fs: compress tmp files given extension

2023-06-23 Thread Jaegeuk Kim
Let's compress tmp files for the given extension list. This patch does not change the previous behavior, but allow the cases as below. Extention example: "ext" - abc.ext : allow - abc.ext.abc : allow - abc.extm : not allow Signed-off-by: Jaegeuk Kim --- Change log from

Re: [f2fs-dev] [PATCH] f2fs: remove i_xattr_sem to avoid deadlock and fix the original issue

2023-06-26 Thread Jaegeuk Kim
> Thanks, > > > > > Thanks, > > > > > > > > I think we don't need to truncate xattr pages eagerly which introduces > > > lots of > > > data races without big benefits. > > > > > > Cc: > > > Signed-off-by: Jaegeuk

Re: [f2fs-dev] [PATCH] f2fs: not allowed to set file both cold and hot

2023-06-26 Thread Jaegeuk Kim
On 06/25, 何云蕾(Yunlei he) wrote: > > On 2023/6/24 3:07, Jaegeuk Kim wrote: > > On 06/20, Chao Yu wrote: > > > On 2023/6/20 10:42, 何云蕾(Yunlei he) wrote: > > > > On 2023/6/20 8:33, Chao Yu wrote: > > > > > On 2023/6/13 16:52, Yunlei He wrote: >

Re: [f2fs-dev] [PATCH] f2fs: remove i_xattr_sem to avoid deadlock and fix the original issue

2023-06-28 Thread Jaegeuk Kim
On 06/27, Chao Yu wrote: > On 2023/6/26 21:11, Jaegeuk Kim wrote: > > On 06/25, Chao Yu wrote: > > > On 2023/6/25 15:26, Chao Yu wrote: > > > > One concern below: > > > > > > > > Thread A:    Thread B:

Re: [f2fs-dev] [PATCH v2] f2fs: fix deadlock in i_xattr_sem and inode page lock and fix the original issue

2023-06-28 Thread Jaegeuk Kim
xd8/0x184 [123996.386748][ T92] do_fchmodat+0x60/0x124 [123996.386766][ T92] __arm64_sys_fchmodat+0x28/0x3c Fixes: 27161f13e3c3 "f2fs: avoid race in between read xattr & write xattr" Cc: Signed-off-by: Jaegeuk Kim --- fs/f2fs/dir.c | 9 - fs/f2fs/xattr.c | 6 --

Re: [f2fs-dev] [PATCH v2] f2fs: fix deadlock in i_xattr_sem and inode page lock and fix the original issue

2023-06-28 Thread Jaegeuk Kim
On 06/28, Chao Yu wrote: > On 2023/6/28 16:08, Jaegeuk Kim wrote: > > Thread #1: > > > > [122554.641906][ T92] f2fs_getxattr+0xd4/0x5fc > > -> waiting for f2fs_down_read(&F2FS_I(inode)->i_xattr_sem); > > > > [122554.641927][ T92] __f

Re: [f2fs-dev] [PATCH v2] f2fs: fix deadlock in i_xattr_sem and inode page lock and fix the original issue

2023-06-30 Thread Jaegeuk Kim
On 06/28, Jaegeuk Kim wrote: > On 06/28, Chao Yu wrote: > > On 2023/6/28 16:08, Jaegeuk Kim wrote: > > > Thread #1: > > > > > > [122554.641906][ T92] f2fs_getxattr+0xd4/0x5fc > > > -> waiting for f2fs_down_read(&F2FS_I(inode

Re: [f2fs-dev] [PATCH v2] f2fs: do not issue small discard commands during checkpoint

2023-07-04 Thread Jaegeuk Kim
On 07/03, Chao Yu wrote: > On 2023/6/15 0:10, Jaegeuk Kim wrote: > > If there're huge # of small discards, this will increase checkpoint latency > > insanely. Let's issue small discards only by trim. > > > > Signed-off-by: Jaegeuk Kim > > --- > >

Re: [f2fs-dev] [PATCH v2] f2fs: do not issue small discard commands during checkpoint

2023-07-05 Thread Jaegeuk Kim
On 07/04, Chao Yu wrote: > On 2023/7/4 18:53, Jaegeuk Kim wrote: > > On 07/03, Chao Yu wrote: > > > On 2023/6/15 0:10, Jaegeuk Kim wrote: > > > > If there're huge # of small discards, this will increase checkpoint > > > > latency > >

[f2fs-dev] [GIT PULL] f2fs update for 6.5

2023-07-05 Thread Jaegeuk Kim
unused open zones while mounting f2fs: check zone write pointer points to the end of zone Daejun Park (1): f2fs: add async reset zone command support Jaegeuk Kim (5): f2fs: fix the wrong condition to determine atomic context f2fs: assign default compression level f2fs: do

[f2fs-dev] [PATCH] f2fs: flush inode if atomic file is aborted

2023-07-07 Thread Jaegeuk Kim
() GS:8880b980() knlGS: CS: 0010 DS: ES: CR0: 80050033 CR2: 7f1909bb9000 CR3: 276a9000 CR4: 00350ef0 Cc: Reported-by: syzbot+e1246909d526a9d47...@syzkaller.appspotmail.com Signed-off-by: Jaegeuk Kim --- fs/f2fs/segment.c | 2 ++

Re: [f2fs-dev] [syzbot] [f2fs?] [tmpfs?] kernel BUG in f2fs_evict_inode

2023-07-07 Thread Jaegeuk Kim
#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs.git dev-test On 12/21, syzbot wrote: > Hello, > > syzbot found the following issue on: > > HEAD commit:77856d911a8c Merge tag 'arm64-fixes' of git://git.kernel.o.. > git tree: upstream > console+strace: https://syzk

Re: [f2fs-dev] [PATCH] f2fs: fix potential deadlock by reordering w/ i_sem

2023-07-10 Thread Jaegeuk Kim
On 07/10, Chao Yu wrote: > syzbot reports deadlock bug as below: > > -> #1 (&fi->i_sem){+.+.}-{3:3}: >down_write+0x3a/0x50 kernel/locking/rwsem.c:1573 >f2fs_down_write fs/f2fs/f2fs.h:2133 [inline] >f2fs_add_inline_entry+0x3a8/0x760 fs/f2fs/inline.c:644 >f2fs_add_den

Re: [f2fs-dev] [PATCH] f2fs: don't reopen the main block device in f2fs_scan_devices

2023-07-10 Thread Jaegeuk Kim
Hit a kernel panic with single device. [ 148.003511] BUG: kernel NULL pointer dereference, address: 0058 [ 148.005630] #PF: supervisor read access in kernel mode [ 148.008179] #PF: error_code(0x) - not-present page [ 148.010593] PGD 0 P4D 0 [ 148.011867] Oops: [#1] PREEMP

Re: [f2fs-dev] [PATCH] f2fs: don't reopen the main block device in f2fs_scan_devices

2023-07-10 Thread Jaegeuk Kim
On 07/11, Damien Le Moal wrote: > On 7/11/23 06:22, Jaegeuk Kim wrote: > > Hit a kernel panic with single device. > > > > [ 148.003511] BUG: kernel NULL pointer dereference, address: > > 0058 > > [ 148.005630] #PF: supervisor read access in k

<    1   2   3   4   5   6   7   8   9   10   >