From: Chao Yu <chao@kernel.org>
To: Sunmin Jeong <s_min.jeong@samsung.com>, jaegeuk@kernel.org
Cc: chao@kernel.org, linux-f2fs-devel@lists.sourceforge.net,
linux-kernel@vger.kernel.org, stable@vger.kernel.org,
Yunji Kang <yunji0.kang@samsung.com>,
Yeongjin Gil <youngjin.gil@samsung.com>,
Sungjong Seo <sj1557.seo@samsung.com>
Subject: Re: [PATCH v2] f2fs: fix to round down start offset of fallocate for pin file
Date: Mon, 22 Jun 2026 20:41:22 +0800 [thread overview]
Message-ID: <41cbc896-016c-411a-bb6e-950e8400ff41@kernel.org> (raw)
In-Reply-To: <20260622052817.3972188-1-s_min.jeong@samsung.com>
On 6/22/26 13:28, Sunmin Jeong wrote:
> Currently, the length of fallocate for pin file is section-aligned to
> keep allocated sections from being selected as victims of GC. However,
> for the case that the start offset of fallocate is not aligned in
> section, the allocated sections can't be fully utilized. It's because a
> new section is allocated by f2fs_allocate_pinning_section() after using
> blks_per_sec blocks regardless of the start offset. As a result, several
> unexpected dirty segments may be created, including blocks assigned to
> the pinned file.
>
> To address this issue, let's round down the start offset of fallocate
> to the length of section.
>
> The reproducing scenario is as below
>
> chunk=$(((2<<20)+4096)) # 2MB + 4KB
> touch test
> f2fs_io pinfile set test
> f2fs_io fallocate 0 0 $chunk test
> f2fs_io fallocate 0 $chunk $chunk test
> f2fs_io fallocate 0 $((chunk*2)) $chunk test
> f2fs_io fiemap 0 $((chunk*3)) test
>
> Fiemap: offset = 0 len = 12288
> logical addr. physical addr. length flags
> 0 0000000000000000 000000068c600000 0000000000400000 00001088
> 1 0000000000400000 000000003d400000 0000000000001000 00001088
> 2 0000000000401000 00000003eb200000 0000000000200000 00001088
> 3 0000000000601000 00000005e4200000 0000000000001000 00001088
> 4 0000000000602000 0000000605400000 0000000000200000 00001089
>
> Cc: stable@vger.kernel.org
> Fixes: f5a53edcf01e ("f2fs: support aligned pinned file")
> Reviewed-by: Yunji Kang <yunji0.kang@samsung.com>
> Reviewed-by: Yeongjin Gil <youngjin.gil@samsung.com>
> Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
> Signed-off-by: Sunmin Jeong <s_min.jeong@samsung.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Thanks,
WARNING: multiple messages have this Message-ID (diff)
From: Chao Yu via Linux-f2fs-devel <linux-f2fs-devel@lists.sourceforge.net>
To: Sunmin Jeong <s_min.jeong@samsung.com>, jaegeuk@kernel.org
Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org,
linux-f2fs-devel@lists.sourceforge.net,
Sungjong Seo <sj1557.seo@samsung.com>
Subject: Re: [f2fs-dev] [PATCH v2] f2fs: fix to round down start offset of fallocate for pin file
Date: Mon, 22 Jun 2026 20:41:22 +0800 [thread overview]
Message-ID: <41cbc896-016c-411a-bb6e-950e8400ff41@kernel.org> (raw)
In-Reply-To: <20260622052817.3972188-1-s_min.jeong@samsung.com>
On 6/22/26 13:28, Sunmin Jeong wrote:
> Currently, the length of fallocate for pin file is section-aligned to
> keep allocated sections from being selected as victims of GC. However,
> for the case that the start offset of fallocate is not aligned in
> section, the allocated sections can't be fully utilized. It's because a
> new section is allocated by f2fs_allocate_pinning_section() after using
> blks_per_sec blocks regardless of the start offset. As a result, several
> unexpected dirty segments may be created, including blocks assigned to
> the pinned file.
>
> To address this issue, let's round down the start offset of fallocate
> to the length of section.
>
> The reproducing scenario is as below
>
> chunk=$(((2<<20)+4096)) # 2MB + 4KB
> touch test
> f2fs_io pinfile set test
> f2fs_io fallocate 0 0 $chunk test
> f2fs_io fallocate 0 $chunk $chunk test
> f2fs_io fallocate 0 $((chunk*2)) $chunk test
> f2fs_io fiemap 0 $((chunk*3)) test
>
> Fiemap: offset = 0 len = 12288
> logical addr. physical addr. length flags
> 0 0000000000000000 000000068c600000 0000000000400000 00001088
> 1 0000000000400000 000000003d400000 0000000000001000 00001088
> 2 0000000000401000 00000003eb200000 0000000000200000 00001088
> 3 0000000000601000 00000005e4200000 0000000000001000 00001088
> 4 0000000000602000 0000000605400000 0000000000200000 00001089
>
> Cc: stable@vger.kernel.org
> Fixes: f5a53edcf01e ("f2fs: support aligned pinned file")
> Reviewed-by: Yunji Kang <yunji0.kang@samsung.com>
> Reviewed-by: Yeongjin Gil <youngjin.gil@samsung.com>
> Reviewed-by: Sungjong Seo <sj1557.seo@samsung.com>
> Signed-off-by: Sunmin Jeong <s_min.jeong@samsung.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Thanks,
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel
next prev parent reply other threads:[~2026-06-22 12:41 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20260622052831epcas1p205548491ce904c0cfda685ed05fe7cab@epcas1p2.samsung.com>
2026-06-22 5:28 ` [PATCH v2] f2fs: fix to round down start offset of fallocate for pin file Sunmin Jeong
2026-06-22 5:28 ` [f2fs-dev] " Sunmin Jeong
2026-06-22 12:41 ` Chao Yu [this message]
2026-06-22 12:41 ` Chao Yu via Linux-f2fs-devel
2026-06-22 20:00 ` patchwork-bot+f2fs--- via Linux-f2fs-devel
2026-06-22 20:00 ` patchwork-bot+f2fs
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=41cbc896-016c-411a-bb6e-950e8400ff41@kernel.org \
--to=chao@kernel.org \
--cc=jaegeuk@kernel.org \
--cc=linux-f2fs-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=s_min.jeong@samsung.com \
--cc=sj1557.seo@samsung.com \
--cc=stable@vger.kernel.org \
--cc=youngjin.gil@samsung.com \
--cc=yunji0.kang@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.