* [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes @ 2025-08-27 21:52 Jaegeuk Kim via Linux-f2fs-devel 2025-08-28 3:31 ` Chao Yu via Linux-f2fs-devel 2025-09-02 20:20 ` patchwork-bot+f2fs--- via Linux-f2fs-devel 0 siblings, 2 replies; 9+ messages in thread From: Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-27 21:52 UTC (permalink / raw) To: linux-kernel, linux-f2fs-devel; +Cc: Jaegeuk Kim Let's split IPU writes in hot data area to improve the GC efficiency. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> --- fs/f2fs/segment.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index e0f6589c6a1c..bb79dad55ac9 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) if (file_is_hot(inode) || is_inode_flag_set(inode, FI_HOT_DATA) || - f2fs_is_cow_file(inode)) + f2fs_is_cow_file(inode) || + is_inode_flag_set(inode, FI_NEED_IPU)) return CURSEG_HOT_DATA; return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), inode->i_write_hint); -- 2.51.0.318.gd7df087d1a-goog _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-27 21:52 [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-28 3:31 ` Chao Yu via Linux-f2fs-devel 2025-08-28 15:23 ` Jaegeuk Kim via Linux-f2fs-devel 2025-09-02 20:20 ` patchwork-bot+f2fs--- via Linux-f2fs-devel 1 sibling, 1 reply; 9+ messages in thread From: Chao Yu via Linux-f2fs-devel @ 2025-08-28 3:31 UTC (permalink / raw) To: Jaegeuk Kim, linux-kernel, linux-f2fs-devel On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: > Let's split IPU writes in hot data area to improve the GC efficiency. I didn't get it, IPU may be not friendly for migrating data along w/ write in hot area? Thanks, > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > --- > fs/f2fs/segment.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c > index e0f6589c6a1c..bb79dad55ac9 100644 > --- a/fs/f2fs/segment.c > +++ b/fs/f2fs/segment.c > @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) > > if (file_is_hot(inode) || > is_inode_flag_set(inode, FI_HOT_DATA) || > - f2fs_is_cow_file(inode)) > + f2fs_is_cow_file(inode) || > + is_inode_flag_set(inode, FI_NEED_IPU)) > return CURSEG_HOT_DATA; > return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), > inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-28 3:31 ` Chao Yu via Linux-f2fs-devel @ 2025-08-28 15:23 ` Jaegeuk Kim via Linux-f2fs-devel 2025-08-28 23:17 ` Chao Yu via Linux-f2fs-devel 0 siblings, 1 reply; 9+ messages in thread From: Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-28 15:23 UTC (permalink / raw) To: Chao Yu; +Cc: linux-kernel, linux-f2fs-devel On 08/28, Chao Yu wrote: > On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: > > Let's split IPU writes in hot data area to improve the GC efficiency. > > I didn't get it, IPU may be not friendly for migrating data along w/ write in > hot area? This deals with IPU in the LFS mode. > > Thanks, > > > > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > > --- > > fs/f2fs/segment.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c > > index e0f6589c6a1c..bb79dad55ac9 100644 > > --- a/fs/f2fs/segment.c > > +++ b/fs/f2fs/segment.c > > @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) > > > > if (file_is_hot(inode) || > > is_inode_flag_set(inode, FI_HOT_DATA) || > > - f2fs_is_cow_file(inode)) > > + f2fs_is_cow_file(inode) || > > + is_inode_flag_set(inode, FI_NEED_IPU)) > > return CURSEG_HOT_DATA; > > return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), > > inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-28 15:23 ` Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-28 23:17 ` Chao Yu via Linux-f2fs-devel 2025-08-29 20:47 ` Jaegeuk Kim via Linux-f2fs-devel 0 siblings, 1 reply; 9+ messages in thread From: Chao Yu via Linux-f2fs-devel @ 2025-08-28 23:17 UTC (permalink / raw) To: Jaegeuk Kim; +Cc: linux-kernel, linux-f2fs-devel On 8/28/2025 11:23 PM, Jaegeuk Kim wrote: > On 08/28, Chao Yu wrote: >> On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: >>> Let's split IPU writes in hot data area to improve the GC efficiency. >> >> I didn't get it, IPU may be not friendly for migrating data along w/ write in >> hot area? > > This deals with IPU in the LFS mode. Okay, so, we missed to add f2fs_lfs_mode() condition, right? Thanks, > >> >> Thanks, >> >>> >>> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> >>> --- >>> fs/f2fs/segment.c | 3 ++- >>> 1 file changed, 2 insertions(+), 1 deletion(-) >>> >>> diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c >>> index e0f6589c6a1c..bb79dad55ac9 100644 >>> --- a/fs/f2fs/segment.c >>> +++ b/fs/f2fs/segment.c >>> @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) >>> >>> if (file_is_hot(inode) || >>> is_inode_flag_set(inode, FI_HOT_DATA) || >>> - f2fs_is_cow_file(inode)) >>> + f2fs_is_cow_file(inode) || >>> + is_inode_flag_set(inode, FI_NEED_IPU)) >>> return CURSEG_HOT_DATA; >>> return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), >>> inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-28 23:17 ` Chao Yu via Linux-f2fs-devel @ 2025-08-29 20:47 ` Jaegeuk Kim via Linux-f2fs-devel 2025-08-30 1:11 ` Chao Yu via Linux-f2fs-devel 0 siblings, 1 reply; 9+ messages in thread From: Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-29 20:47 UTC (permalink / raw) To: Chao Yu; +Cc: linux-kernel, linux-f2fs-devel On 08/29, Chao Yu wrote: > On 8/28/2025 11:23 PM, Jaegeuk Kim wrote: > > On 08/28, Chao Yu wrote: > > > On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: > > > > Let's split IPU writes in hot data area to improve the GC efficiency. > > > > > > I didn't get it, IPU may be not friendly for migrating data along w/ write in > > > hot area? > > > > This deals with IPU in the LFS mode. > > Okay, so, we missed to add f2fs_lfs_mode() condition, right? Why do we need that? > > Thanks, > > > > > > > > > Thanks, > > > > > > > > > > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > > > > --- > > > > fs/f2fs/segment.c | 3 ++- > > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > > > diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c > > > > index e0f6589c6a1c..bb79dad55ac9 100644 > > > > --- a/fs/f2fs/segment.c > > > > +++ b/fs/f2fs/segment.c > > > > @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) > > > > if (file_is_hot(inode) || > > > > is_inode_flag_set(inode, FI_HOT_DATA) || > > > > - f2fs_is_cow_file(inode)) > > > > + f2fs_is_cow_file(inode) || > > > > + is_inode_flag_set(inode, FI_NEED_IPU)) > > > > return CURSEG_HOT_DATA; > > > > return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), > > > > inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-29 20:47 ` Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-30 1:11 ` Chao Yu via Linux-f2fs-devel 2025-08-30 23:54 ` Jaegeuk Kim via Linux-f2fs-devel 0 siblings, 1 reply; 9+ messages in thread From: Chao Yu via Linux-f2fs-devel @ 2025-08-30 1:11 UTC (permalink / raw) To: Jaegeuk Kim; +Cc: linux-kernel, linux-f2fs-devel On 8/30/2025 4:47 AM, Jaegeuk Kim wrote: > On 08/29, Chao Yu wrote: >> On 8/28/2025 11:23 PM, Jaegeuk Kim wrote: >>> On 08/28, Chao Yu wrote: >>>> On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: >>>>> Let's split IPU writes in hot data area to improve the GC efficiency. >>>> >>>> I didn't get it, IPU may be not friendly for migrating data along w/ write in >>>> hot area? >>> >>> This deals with IPU in the LFS mode. >> >> Okay, so, we missed to add f2fs_lfs_mode() condition, right? > > Why do we need that? As you mentioned above, this deals w/ IPU in the LFS mode. Am I missing something? Thanks, > >> >> Thanks, >> >>> >>>> >>>> Thanks, >>>> >>>>> >>>>> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> >>>>> --- >>>>> fs/f2fs/segment.c | 3 ++- >>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>> >>>>> diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c >>>>> index e0f6589c6a1c..bb79dad55ac9 100644 >>>>> --- a/fs/f2fs/segment.c >>>>> +++ b/fs/f2fs/segment.c >>>>> @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) >>>>> if (file_is_hot(inode) || >>>>> is_inode_flag_set(inode, FI_HOT_DATA) || >>>>> - f2fs_is_cow_file(inode)) >>>>> + f2fs_is_cow_file(inode) || >>>>> + is_inode_flag_set(inode, FI_NEED_IPU)) >>>>> return CURSEG_HOT_DATA; >>>>> return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), >>>>> inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-30 1:11 ` Chao Yu via Linux-f2fs-devel @ 2025-08-30 23:54 ` Jaegeuk Kim via Linux-f2fs-devel 2025-09-01 2:15 ` Chao Yu via Linux-f2fs-devel 0 siblings, 1 reply; 9+ messages in thread From: Jaegeuk Kim via Linux-f2fs-devel @ 2025-08-30 23:54 UTC (permalink / raw) To: Chao Yu; +Cc: linux-kernel, linux-f2fs-devel On 08/30, Chao Yu wrote: > On 8/30/2025 4:47 AM, Jaegeuk Kim wrote: > > On 08/29, Chao Yu wrote: > > > On 8/28/2025 11:23 PM, Jaegeuk Kim wrote: > > > > On 08/28, Chao Yu wrote: > > > > > On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: > > > > > > Let's split IPU writes in hot data area to improve the GC efficiency. > > > > > > > > > > I didn't get it, IPU may be not friendly for migrating data along w/ write in > > > > > hot area? > > > > > > > > This deals with IPU in the LFS mode. > > > > > > Okay, so, we missed to add f2fs_lfs_mode() condition, right? > > > > Why do we need that? > > As you mentioned above, this deals w/ IPU in the LFS mode. Am I missing > something? The IPU flag indicates the data is hot. In lfs_mode, we missed to allocate it into HOT_DATA. In normal mode, IPU will update the data in place, which doesn't affect anything, while newly create data is also good to store in HOT_DATA as well. So, I think we don't need other condition here. > > Thanks, > > > > > > > > > Thanks, > > > > > > > > > > > > > > > > > Thanks, > > > > > > > > > > > > > > > > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > > > > > > --- > > > > > > fs/f2fs/segment.c | 3 ++- > > > > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > > > > > > > diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c > > > > > > index e0f6589c6a1c..bb79dad55ac9 100644 > > > > > > --- a/fs/f2fs/segment.c > > > > > > +++ b/fs/f2fs/segment.c > > > > > > @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) > > > > > > if (file_is_hot(inode) || > > > > > > is_inode_flag_set(inode, FI_HOT_DATA) || > > > > > > - f2fs_is_cow_file(inode)) > > > > > > + f2fs_is_cow_file(inode) || > > > > > > + is_inode_flag_set(inode, FI_NEED_IPU)) > > > > > > return CURSEG_HOT_DATA; > > > > > > return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), > > > > > > inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-30 23:54 ` Jaegeuk Kim via Linux-f2fs-devel @ 2025-09-01 2:15 ` Chao Yu via Linux-f2fs-devel 0 siblings, 0 replies; 9+ messages in thread From: Chao Yu via Linux-f2fs-devel @ 2025-09-01 2:15 UTC (permalink / raw) To: Jaegeuk Kim; +Cc: linux-kernel, linux-f2fs-devel On 8/31/25 07:54, Jaegeuk Kim wrote: > On 08/30, Chao Yu wrote: >> On 8/30/2025 4:47 AM, Jaegeuk Kim wrote: >>> On 08/29, Chao Yu wrote: >>>> On 8/28/2025 11:23 PM, Jaegeuk Kim wrote: >>>>> On 08/28, Chao Yu wrote: >>>>>> On 8/28/25 05:52, Jaegeuk Kim via Linux-f2fs-devel wrote: >>>>>>> Let's split IPU writes in hot data area to improve the GC efficiency. >>>>>> >>>>>> I didn't get it, IPU may be not friendly for migrating data along w/ write in >>>>>> hot area? >>>>> >>>>> This deals with IPU in the LFS mode. >>>> >>>> Okay, so, we missed to add f2fs_lfs_mode() condition, right? >>> >>> Why do we need that? >> >> As you mentioned above, this deals w/ IPU in the LFS mode. Am I missing >> something? > > The IPU flag indicates the data is hot. In lfs_mode, we missed to allocate > it into HOT_DATA. In normal mode, IPU will update the data in place, which > doesn't affect anything, while newly create data is also good to store in > HOT_DATA as well. So, I think we don't need other condition here. It makes sense, thanks for the explanation. Reviewed-by: Chao Yu <chao@kernel.org> Thanks, > >> >> Thanks, >> >>> >>>> >>>> Thanks, >>>> >>>>> >>>>>> >>>>>> Thanks, >>>>>> >>>>>>> >>>>>>> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> >>>>>>> --- >>>>>>> fs/f2fs/segment.c | 3 ++- >>>>>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>>>>> >>>>>>> diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c >>>>>>> index e0f6589c6a1c..bb79dad55ac9 100644 >>>>>>> --- a/fs/f2fs/segment.c >>>>>>> +++ b/fs/f2fs/segment.c >>>>>>> @@ -3688,7 +3688,8 @@ static int __get_segment_type_6(struct f2fs_io_info *fio) >>>>>>> if (file_is_hot(inode) || >>>>>>> is_inode_flag_set(inode, FI_HOT_DATA) || >>>>>>> - f2fs_is_cow_file(inode)) >>>>>>> + f2fs_is_cow_file(inode) || >>>>>>> + is_inode_flag_set(inode, FI_NEED_IPU)) >>>>>>> return CURSEG_HOT_DATA; >>>>>>> return f2fs_rw_hint_to_seg_type(F2FS_I_SB(inode), >>>>>>> inode->i_write_hint); _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes 2025-08-27 21:52 [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes Jaegeuk Kim via Linux-f2fs-devel 2025-08-28 3:31 ` Chao Yu via Linux-f2fs-devel @ 2025-09-02 20:20 ` patchwork-bot+f2fs--- via Linux-f2fs-devel 1 sibling, 0 replies; 9+ messages in thread From: patchwork-bot+f2fs--- via Linux-f2fs-devel @ 2025-09-02 20:20 UTC (permalink / raw) To: Jaegeuk Kim; +Cc: linux-kernel, linux-f2fs-devel Hello: This patch was applied to jaegeuk/f2fs.git (dev) by Jaegeuk Kim <jaegeuk@kernel.org>: On Wed, 27 Aug 2025 21:52:22 +0000 you wrote: > Let's split IPU writes in hot data area to improve the GC efficiency. > > Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> > --- > fs/f2fs/segment.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) Here is the summary with links: - [f2fs-dev] f2fs: allocate HOT_DATA for IPU writes https://git.kernel.org/jaegeuk/f2fs/c/c872b6279cd2 You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-09-02 20:20 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-08-27 21:52 [f2fs-dev] [PATCH] f2fs: allocate HOT_DATA for IPU writes Jaegeuk Kim via Linux-f2fs-devel 2025-08-28 3:31 ` Chao Yu via Linux-f2fs-devel 2025-08-28 15:23 ` Jaegeuk Kim via Linux-f2fs-devel 2025-08-28 23:17 ` Chao Yu via Linux-f2fs-devel 2025-08-29 20:47 ` Jaegeuk Kim via Linux-f2fs-devel 2025-08-30 1:11 ` Chao Yu via Linux-f2fs-devel 2025-08-30 23:54 ` Jaegeuk Kim via Linux-f2fs-devel 2025-09-01 2:15 ` Chao Yu via Linux-f2fs-devel 2025-09-02 20:20 ` patchwork-bot+f2fs--- via Linux-f2fs-devel
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).