diff options
| author | Chao Yu <chao@kernel.org> | 2024-10-18 09:26:36 +0300 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-07-10 17:04:59 +0300 |
| commit | ffbbe11577b7eec86d70a32f3ff0eb42f99f09ea (patch) | |
| tree | 2944adddbb786bc6a9cec856128955298b8f3c10 /fs/f2fs/segment.c | |
| parent | 58330262213aa3fb6b0ec807f6329572902f91ef (diff) | |
| download | linux-ffbbe11577b7eec86d70a32f3ff0eb42f99f09ea.tar.xz | |
f2fs: zone: introduce first_zoned_segno in f2fs_sb_info
[ Upstream commit 5bc5aae843128aefb1c55d769d057c92dd8a32c9 ]
first_zoned_segno() returns a fixed value, let's cache it in
structure f2fs_sb_info to avoid redundant calculation.
Signed-off-by: Chao Yu <chao@kernel.org>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
Stable-dep-of: dc6d9ef57fcf ("f2fs: zone: fix to calculate first_zoned_segno correctly")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'fs/f2fs/segment.c')
| -rw-r--r-- | fs/f2fs/segment.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index 3db89becdbfc..c7919b9cebcd 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -2719,7 +2719,7 @@ static int get_new_segment(struct f2fs_sb_info *sbi, if (sbi->blkzone_alloc_policy == BLKZONE_ALLOC_PRIOR_CONV || pinning) segno = 0; else - segno = max(first_zoned_segno(sbi), *newseg); + segno = max(sbi->first_zoned_segno, *newseg); hint = GET_SEC_FROM_SEG(sbi, segno); } #endif @@ -2731,7 +2731,7 @@ find_other_zone: if (secno >= MAIN_SECS(sbi) && f2fs_sb_has_blkzoned(sbi)) { /* Write only to sequential zones */ if (sbi->blkzone_alloc_policy == BLKZONE_ALLOC_ONLY_SEQ) { - hint = GET_SEC_FROM_SEG(sbi, first_zoned_segno(sbi)); + hint = GET_SEC_FROM_SEG(sbi, sbi->first_zoned_segno); secno = find_next_zero_bit(free_i->free_secmap, MAIN_SECS(sbi), hint); } else secno = find_first_zero_bit(free_i->free_secmap, |
