From nobody Sat Feb 7 15:21:40 2026 Received: from mail-dy1-f180.google.com (mail-dy1-f180.google.com [74.125.82.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1DEED258EDB for ; Mon, 26 Jan 2026 22:28:08 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.180 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769466490; cv=none; b=QkSXqKKxMMSHH4eQyMIegOFrVahsF54kwuEBKWFtyirzGx2uVpVrM8zvRpKebPF512OoOXP8XJ68zhyCDNmxuL9f2BtS584dloG08cUPIF445FFvNCD0FwO5hXCDdU5KsgOxEkt/1noOcE6LjRvZCJOAv5vlUnF5sFMIxUUyagA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769466490; c=relaxed/simple; bh=UFpz6Y2OJGCk4JtQMm/nLzth9R+kCMb+9bzpMRmqYvs=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Jd/C3yJB3VVUfU73J6Dpa3aHfuJEo3Ll70oQR5tQ0tIjy3r35TBny3F0jnOkSkESgUC6kbygfL6/qTzPzZfB6aakmA3sR1+T8l4U4eEFOCRYBFUBIQXpQbOPB/NAQ1aTrmpzOKKnT3kffm4q3VQeV/W7cFPf2VwecnvMwRxjatE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=Z5Cv8xai; arc=none smtp.client-ip=74.125.82.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="Z5Cv8xai" Received: by mail-dy1-f180.google.com with SMTP id 5a478bee46e88-2ae2eb49b4bso11631611eec.0 for ; Mon, 26 Jan 2026 14:28:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1769466488; x=1770071288; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=r/YQUW79tWj3TANvJnFZMqHkLodLunhydJd79kJoIgs=; b=Z5Cv8xaiOUISI80Xe/lDLh1f/LPxZ9BNJ8qa4ri/0E4ImcxIspJkRqd6tqjDKv67OJ rAt/EYUD6i3XNdU7LcZDt94LiyhNYcMXVQI4m+WtyO0pUkmpANKzA8PKoOdL0Dn8+WA1 BPmBBKQ5rMAJc6pwi+VylrlO0b4hzpf8cZSJ+rPp9fyvKkzYmN/RTbTz2cGVyaI8ChVX Y6vtEtL+NAx10PWkyFm3Dn9QcSfwujnhH20c1zI7k3NVftp8NUxS0ZTTL2ne2kEUZE2Q xIiaMSPlvuFd1Q8fKHmlgzulg1XFngdZJSnsFMx4zPJuVkgUgNbkUkawcxlNPIWJHwN0 w0PQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769466488; x=1770071288; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=r/YQUW79tWj3TANvJnFZMqHkLodLunhydJd79kJoIgs=; b=w09C/0X09cxmURDRiOFRzDR1kGJE/dITaPwMLh30BaiRkGAe6rtVxa8VgIzigNYJMI dzA1iAPimWazaE6urTLsOSYCu6/mI6hHXhvVCuxW132hBakbSg8w0ITdMF4nB3/ukijP dHmM27wwsPZ1HzexogCg6dxxz2F8gO4G0Obg+bubVSuFKfdll3KTjE1f+xe5LVjmlkOh HwBbz6+tgTGt1WcuuVX0YLlrMyRD3Y5nQ5o0XYdElDAdA0GvTCPUjh2N5g/IjQijzOLu E0juzvo0TIr8Nr6FKb+Ni8BhbzJp3ckLSENyV3KARdIWadrWXiLgzck1YSnYO8krwgms Ep+A== X-Gm-Message-State: AOJu0YyexwJ9qTEx/Z7UrVFKOURAY75dLgwJx/kDyvYlWA3BcSs7FGqM sAWSh8ipaOq4pE2hH/74OWEHH45MMaC97bGAg3KDc36VbvBgM6SAc1u8O7k1vg== X-Gm-Gg: AZuq6aJ+DRM/MP36bTQFmaXv3eDGdk0OH3pxuGhbB2k9HowmmJMXIIZDFf8Hh75+XXY FrIOen7PRTF7EEQypTruOxUYPHirHtKclPlSQgflSxrYGO9PeDDdXiX8zugiaMYCqZ0t7o7Tetu mX410piBKBaAqx3fjOwN9wSMoUQCGBIys4cJNNdllE5+MwJVF/opov3yOIXuJLiHrE1w+uITJbj Ia9LAj+BRNN5rVcDJPJ3PbLFNnKZONOUR9qvLxBp+Bkrpoei4MUFna1TshhfN16JGI7iM3XgVlm 0f3QyjIdsx0SYtX81A7VX3FLZlaKutn7ZmHeqSVzmPQl2AkTrYILlt/tC9EOymGNngXRmfDiEWI eotnJZ2GgyzhzjhARnnvv5RSmoU7AvTvyrXI6vJSpUrkB0mo3uANDKPccOUNjJ+aAdDgvlKb7Dh xi3/FZd/xSsMQHehQjqSJeREuwY/XBLW53e8X5VCmuHD67nQ5JYTNByINvfSKqx5PznZnOncGhX ZQHcd95ovi5K1MpPe5wnd5GI9RxCOHvJyrmf0s= X-Received: by 2002:a05:693c:3009:b0:2a4:3592:cf83 with SMTP id 5a478bee46e88-2b76483aaf4mr3221663eec.39.1769466487881; Mon, 26 Jan 2026 14:28:07 -0800 (PST) Received: from daehojeong-desktop.mtv.corp.google.com ([2a00:79e0:2e7c:8:533d:ee0f:5a8a:2ece]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2b73a6b6227sm15058201eec.8.2026.01.26.14.28.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Jan 2026 14:28:07 -0800 (PST) From: Daeho Jeong To: linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net, kernel-team@android.com Cc: Daeho Jeong , Chris Mason Subject: [PATCH] f2fs: fix incomplete block usage in compact SSA summaries Date: Mon, 26 Jan 2026 14:28:01 -0800 Message-ID: <20260126222801.2229197-1-daeho43@gmail.com> X-Mailer: git-send-email 2.52.0.457.g6b5491de43-goog Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Daeho Jeong In a previous commit, a bug was introduced where compact SSA summaries failed to utilize the entire block space in non-4KB block size configurations, leading to inefficient space management. This patch fixes the calculation logic to ensure that compact SSA summaries can fully occupy the block regardless of the block size. Reported-by: Chris Mason Fixes: e48e16f3e37f ("f2fs: support non-4KB block size without packed_ssa f= eature") Signed-off-by: Daeho Jeong Reviewed-by: Chao Yu --- fs/f2fs/segment.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/fs/f2fs/segment.c b/fs/f2fs/segment.c index 00870a8fe387..6a97fe76712b 100644 --- a/fs/f2fs/segment.c +++ b/fs/f2fs/segment.c @@ -2674,12 +2674,12 @@ int f2fs_npages_for_summary_flush(struct f2fs_sb_in= fo *sbi, bool for_ra) valid_sum_count +=3D f2fs_curseg_valid_blocks(sbi, i); } =20 - sum_in_page =3D (sbi->sum_blocksize - 2 * sbi->sum_journal_size - + sum_in_page =3D (sbi->blocksize - 2 * sbi->sum_journal_size - SUM_FOOTER_SIZE) / SUMMARY_SIZE; if (valid_sum_count <=3D sum_in_page) return 1; else if ((valid_sum_count - sum_in_page) <=3D - (sbi->sum_blocksize - SUM_FOOTER_SIZE) / SUMMARY_SIZE) + (sbi->blocksize - SUM_FOOTER_SIZE) / SUMMARY_SIZE) return 2; return 3; } @@ -4324,7 +4324,7 @@ static int read_compacted_summaries(struct f2fs_sb_in= fo *sbi) s =3D (struct f2fs_summary *)(kaddr + offset); sum_entries(seg_i->sum_blk)[j] =3D *s; offset +=3D SUMMARY_SIZE; - if (offset + SUMMARY_SIZE <=3D sbi->sum_blocksize - + if (offset + SUMMARY_SIZE <=3D sbi->blocksize - SUM_FOOTER_SIZE) continue; =20 @@ -4497,7 +4497,7 @@ static void write_compacted_summaries(struct f2fs_sb_= info *sbi, block_t blkaddr) *summary =3D sum_entries(seg_i->sum_blk)[j]; written_size +=3D SUMMARY_SIZE; =20 - if (written_size + SUMMARY_SIZE <=3D PAGE_SIZE - + if (written_size + SUMMARY_SIZE <=3D sbi->blocksize - SUM_FOOTER_SIZE) continue; =20 --=20 2.52.0.457.g6b5491de43-goog