From nobody Fri Sep 25 23:10:21 2026 Received: from mx0b-00364e01.pphosted.com (mx0b-00364e01.pphosted.com [148.163.139.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F265735BDC7 for ; Mon, 7 Sep 2026 20:20:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812428; cv=none; b=LIb+hnfmfxpL8NZHuZ06dtDplHrnW/PhLkuwig0lceeGaLGqqfUZO0PxMKZxFiMSxdOZ9Y+Kfvg5UQGuU/O+nkbmzpxmWFTapvrm5Ziad3NsmgZlQa7tYJf+7zTyka8PXP4HuEwYJ/lIaOoi0mRQ91LemEu2MmAB02OqovfvQhk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812428; c=relaxed/simple; bh=7CrZNHHkxIkuOJo45Q3XSFmINtwFQy/yCbxiey+tcdU=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=MFvs7I8hvd7nwobh+F3vLMw9ThSUZyzaDUw/DCj4z06yInftOk20OCQIRQA4/SWsfQ96HM+wbKxLxGPkNPp54z2/SWK7pnXQk7fgNqG9QCIxP8i36FuHZajCbar2U5tjwi29kiod2971GTXfFOXaiTWzA6cjSpCzsVvtKxeVR6s= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=mTIroMZ9; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=5YpBJbDq; arc=none smtp.client-ip=148.163.139.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="mTIroMZ9"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="5YpBJbDq" Received: from pps.filterd (m0167077.ppops.net [127.0.0.1]) by mx0b-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IYESk2944957 for ; Mon, 7 Sep 2026 16:20:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=e/8X t8rVJr6lIvOnjb1t9hnUD7gb2SHMXo5XIPyUSv4=; b=mTIroMZ9VSQDHSfFIKun wnxVGlayuUoRMfa7SKWG+pYEFE21IfX/KHvFXmC68aG0rOzp3w3cn44nE/ZY96i1 8PsrLwDQYHPFzVXbkVxA811BR51/iUq05Vw9w0sohqNWOzcDUt/u+B19GSUplmUN 4LK7BhXcOReIj5ElzSsJumDc9eUI5cXWQ9PIZxjLLEJ+RfMWVB4drLz/byeLneGS gANXnJlFsCU87BtXnYyO6BcxQ3iP/YEK5rfqVzvMDXZDntPBP80xwR4SSelIsS8j mup+R4E+lvT8u91utx+f3a7/kJy7DTuRj6cNB39WeIgC6fMRRUjlY6LdyoETKCkF 7g== Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by mx0b-00364e01.pphosted.com (PPS) with ESMTPS id 4ghepk5ejf-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:23 -0400 (EDT) Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-52fc3bff8bdso69168281cf.3 for ; Mon, 07 Sep 2026 13:20:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812423; x=1789417223; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=e/8Xt8rVJr6lIvOnjb1t9hnUD7gb2SHMXo5XIPyUSv4=; b=5YpBJbDqi2sF0Q7c27P9G1LZuER82OjJg8+2hh1DXlcQ4EwnmQw4ujtElBzni9tU6F I9IwuvwymW3xjySKqJvij5jhS/FiXhg2qVwOsnOGifUxKjKfm6sUzdrLamRmhLZp7vk5 zo8iQXPN94t2vkJPyPt2S/4KnrpFOcfkHZkXMCapypRWRhEpyFDkKpvwgZ6HLb6JgiXv ecP3FwMvDgxw/T2blK/QhTaG1yBcJqZ/ISyk3uF98J8EREg5fszLNw7JYzkZvejMIfUr Lv9vvcb6GsITzdRe2tQrZkbyc9YTPOeqe6NXLxPbDrGsX5OhY3ZzsCesubHnH1MmbOqo 85+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812423; x=1789417223; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=e/8Xt8rVJr6lIvOnjb1t9hnUD7gb2SHMXo5XIPyUSv4=; b=Bf2WihxgkIuI3r2Acq9iMBBIOiox4Vsz3IMzSA2BqwjEwVF7lPSSeANMpBnp0ULqLW xBO31T682sk8jodYb0JyMxI82V65NN302YJEceXb20wa5axT+9RvPnNR4Udcekg4iA2C YE1tuX/nSUo2dUFvOL+fAH9z+F5ifYzvBw7UJybv7Ac5ZDfgU+iNw4JMohS8V2E2u579 vr+C4q8JnqFJyGr0pV1qS/WoYwZSg7zfq0P+ohM3SY1Fzdv4iJErUXNCFRt8GUtUyAF8 eOV/+nBwR0mm6fRquaT64THKNmF2d+Kgm8+fEFPM8lCUU/Tmhro9xdjpXjiBEUdvCEdx CQYA== X-Forwarded-Encrypted: i=1; AKwUvBxYSyhKndEOa7gbaUL2+4DwgOyyGba9kUWBcNOX6yqL7QWSajqAGO7uNenBGHriHgaeRgL8idtRMTTZusg=@vger.kernel.org X-Gm-Message-State: AFuF++n4GYx+ZbEseqBpKpFZGc5nKaKW7UQSKlhKAWkoZc/XRKFYJS/b Wp812hGdbrRwY7oXj3+GCoAfUjAQWiZr/+V7BJBbaIWWSestsjrAXbQuqjR1tqi2KJPtUSjVqvB 7jFbtc6KgVzW2Syj+F9+abbtaSZ3tXbTx9+A4CX1uY06+VLg8rKef3r6P1sq2pA== X-Gm-Gg: AYBFou1cBjK+bgDtKDnsE1l9NQkkDvYluU/MkwMkvyahyENcjZaS695cvy/cL9Z+oTU ZrDTxFwEXA6aOjcPpN80hff+vLb2XRpXGcVloIlIM8hi6xUGl1Cb6MtI5bRLhsiCgR28nH+17mQ bYXglJEEqvVEzm4y4obSsAixkMerYqZIRX7HX+qgT2fcZ/iiP8RycJOKQv3h33ZbWoK3D4Y0fTS xuT52/FDXRMQOZDc8OCrBAFVr6x4xGFzG0Q+XMijY4oYLxDZVOjfIYrW5pJnQ6bT9H6EqhJ6qLn 7x0z3MiTUU7tGnKyoM6JBI7Z4cBdcszAgDjcsqz5Ftqm4YO0Er3RtDuHKxsbv4OrvezTs0T440t dDOgKh9mGB/4KPvzzSqnO7OJHmCHA81/AW0o+buNdKNE= X-Received: by 2002:a05:622a:2483:b0:517:580c:bcd3 with SMTP id d75a77b69052e-5305484e5bbmr272939021cf.19.1788812422949; Mon, 07 Sep 2026 13:20:22 -0700 (PDT) X-Received: by 2002:a05:622a:2483:b0:517:580c:bcd3 with SMTP id d75a77b69052e-5305484e5bbmr272938451cf.19.1788812422567; Mon, 07 Sep 2026 13:20:22 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:22 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:19:55 -0400 Subject: [PATCH v2 1/7] btrfs: tests: rename process_page_range() to process_folio_range() Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-1-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=2514; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=7CrZNHHkxIkuOJo45Q3XSFmINtwFQy/yCbxiey+tcdU=; b=lUibCyWOXiDPqjCmfOUjNQsuqs5O9ACYkEL544lHBSuJaExgYa0Sz++VVb27Q5qzJgNoTUVlh IXovoCjp9O7CV2jA/QkcycZcHLCSu/8ZjlPyeK/mSt289NbyizFJkbB X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Authority-Analysis: v=2.4 cv=Wc48rUhX c=1 sm=1 tr=0 ts=6a9f1c87 cx=c_pps a=EVbN6Ke/fEF3bsl7X48z0g==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=QOCMdifcju39GKoXhKua:22 a=iox4zFpeAAAA:8 a=VvYWPSha7RrLN2mrkrMA:9 a=QEXdDO2ut3YA:10 a=a_PwQJl-kcHnX1M80qC6:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-ORIG-GUID: RVP2LW-dJpJ8WNPe8pg4ykXp0LFUhmNW X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfXwttQD+Q4yTqZ iifkh4YNBOtmSzaev6ifZ8UKw/7mNrwxyLE+Y8tKJSV3OWpqSC1GClxanMfqcDO2IydBzGZLK98 J24vGNo0lbMD8TsihJyHloGieoP5i6IznlZvioaCsxf2typoy+Jc X-Proofpoint-GUID: RVP2LW-dJpJ8WNPe8pg4ykXp0LFUhmNW X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX+ngBYKwY73xO scK2W5hdXg4wCPoTmYolIVt/OPKUv9q0RKysL8UhF/7PaSW150wSg1VU8iZbt6NV3LDzSC4lc3J 5ppNqRsWDVX8obHyNG66uKYywFbuLC2IDc0AVkYnKWLHyJPTXylc8FoZEOhoiZqy+/JO/0ysrrc uBe5vopD9dGengLbG6cnCa9+5vh75crMyA+avLARjEqDSnoGTDnza/6SH9ijQB5KaHhwgn0+PQh Mk4dJ23aYA89xTBDTghgoWsNGtda7zD6d2LRMKFm+aDPJd2heLVrWk3Jza/dkGNBBnETnFwxdul +F47fFpdRYbre2ZRzQ5j2bhavZZwdnpVh/O+ZBWQ4VsWg4aISIqG2wP/wtTLEvEiXUK/WLJN4KZ pu/Uq9viiBvJUwksIlo7wafuSf70lqFPksrvcxvBu5X82xLed1y3RcmHhrywqZgqzboMdV40MFA rSO8vCYO4yVseZWXyfA== X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 malwarescore=0 spamscore=0 lowpriorityscore=10 bulkscore=10 suspectscore=0 clxscore=1015 adultscore=0 impostorscore=10 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 It already operates on folios. No functional change. Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/tests/extent-io-tests.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/fs/btrfs/tests/extent-io-tests.c b/fs/btrfs/tests/extent-io-te= sts.c index 23459cd4e503..6eb55bfb2bd4 100644 --- a/fs/btrfs/tests/extent-io-tests.c +++ b/fs/btrfs/tests/extent-io-tests.c @@ -18,8 +18,8 @@ #define PROCESS_RELEASE (1U << 1) #define PROCESS_TEST_LOCKED (1U << 2) =20 -static noinline int process_page_range(struct inode *inode, u64 start, u64= end, - unsigned long flags) +static noinline int process_folio_range(struct inode *inode, u64 start, u6= 4 end, + unsigned long flags) { int ret; struct folio_batch fbatch; @@ -221,8 +221,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) test_start, max_bytes - 1, start, end); goto out_bits; } - if (process_page_range(inode, start, end, - PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { + if (process_folio_range(inode, start, end, + PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { test_err("there were unlocked pages in the range"); goto out_bits; } @@ -276,8 +276,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) test_start, total_dirty - 1, start, end); goto out_bits; } - if (process_page_range(inode, start, end, - PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { + if (process_folio_range(inode, start, end, + PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { test_err("pages in range were not all locked"); goto out_bits; } @@ -317,8 +317,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) test_start, test_start + PAGE_SIZE - 1, start, end); goto out_bits; } - if (process_page_range(inode, start, end, PROCESS_TEST_LOCKED | - PROCESS_UNLOCK)) { + if (process_folio_range(inode, start, end, PROCESS_TEST_LOCKED | + PROCESS_UNLOCK)) { test_err("pages in range were not all locked"); goto out_bits; } @@ -330,8 +330,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) out: if (locked_page) put_page(locked_page); - process_page_range(inode, 0, total_dirty - 1, - PROCESS_UNLOCK | PROCESS_RELEASE); + process_folio_range(inode, 0, total_dirty - 1, + PROCESS_UNLOCK | PROCESS_RELEASE); iput(inode); out_root_info: btrfs_free_dummy_root(root); --=20 2.39.5 From nobody Fri Sep 25 23:10:21 2026 Received: from mx0b-00364e01.pphosted.com (mx0b-00364e01.pphosted.com [148.163.139.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 52ECB3F6C21 for ; Mon, 7 Sep 2026 20:20:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812430; cv=none; b=NCy2jsOZSPBpJ7936n2gdrCtceH1A36yTRS+XdlkWK1Rs91cEoZ5brXbGv8mHdWPWE3HeC7GSuK4wC3BOfxd2GwaHVsXFn4Np3TuD9TH+0yKP4aw5w0OWURa8yI2Q3JeNsy6DFSIDFxaZrKGDMLbA3A43+1TSuhIVc+vi2nRvX0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812430; c=relaxed/simple; bh=avES3bG48BLV1EAoCdOHxxuCdmO1REtwTj45aoG+V+0=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=cJb6j9VufSenQMqoan5qJ865MKeItvpjERrEFlzJLk2BQX18jWJxHkaUQNkf06vY1FyHg4GJ80dKl059iURqgCLzgiVkfJMJg9Qrq/UGGRosU52SCNXLI3Sk+d6w+wG5VG9iVtYKbl/ySjeoZY+EppPeLBSKBRsAzU/HVGHndDI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=F7ykB1aW; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=tVITpLer; arc=none smtp.client-ip=148.163.139.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="F7ykB1aW"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="tVITpLer" Received: from pps.filterd (m0167077.ppops.net [127.0.0.1]) by mx0b-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IYRNT2945177 for ; Mon, 7 Sep 2026 16:20:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=tgPL 3vWXO3hhdRWSeoslHgoDQM0KiG0xJ73uDx2uH0Y=; b=F7ykB1aWB8Sd51fi1N62 6Zn6Xd1AKTyAVV3R06c2AehkbLf6ip/arw4FlV6JGAJu0txRm3+dUZRvPVAb3Vvl jdMJede5LUStSiONd937U5aP7iH7rs2RvNc5e42ItzmPg1H+JCPdCwbguEZGF4o4 Hlax3EyAkl2gPMKsiTncg9shaMtB779VtnA+kkRP0zuwc3mno3jpajOnImW4ukYW Z/lgMIwZs/k+6d7W1dd4GVHPsq0RAPukuZUX7777dd0Ag74+JFqHLK6xMXDuoU6O GZvWEiY367QeSgP6cqbmmGUevWQtkj/DqrxqMi3H01y9+gCWRirBomFq8V4Bcrjg Qg== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0b-00364e01.pphosted.com (PPS) with ESMTPS id 4ghepk5ejs-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:24 -0400 (EDT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-52fc0097865so101253101cf.2 for ; Mon, 07 Sep 2026 13:20:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812424; x=1789417224; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=tgPL3vWXO3hhdRWSeoslHgoDQM0KiG0xJ73uDx2uH0Y=; b=tVITpLerDJj7Mkh1878bt8vagalozRV1iDZBjE/KduJn+PUyb5Q5jEeQF2nEZNUHOe Z7tOPEalyAfP8YZmdcR7DZF/JAwDsvGIYMIjVb8eF3Z5QsQeVP9V63nwamZCxyukthEG kWp9ijFn/sJwz7FVNyNdm6/8Eg7LHUvntgNhC8Ow3t3H6Gv9aPA+o3afVhyBOpRXip77 E5Ipe8BJrgBVUAP63c5JoE3pS7VscmI64dyQcOZjEv1drg2fUdJccbdl/9FgQDNSF3I8 9Xk4JZ2w9w8UAzQN/IHxXgFsFRnyyTasi6+cNeEWqn0o4Fj1FsezKhpUQxkHLOVs/2ra /Brg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812424; x=1789417224; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=tgPL3vWXO3hhdRWSeoslHgoDQM0KiG0xJ73uDx2uH0Y=; b=Zm2TNxkzVCXlPD41wBY81F0RykBny3VTQ0zgPbOHA/rJoTrAnLBRSu+DWAYRWcAL9O i06VyiRuwvU9GdqPebbk371ymBeidCCfvoHz9RngV7hHTAcR3RPIBIqLP7YPATsKcm3s gmhKK4LFsjMWjO+i5anV6/JbfluBsPlKq/gkPhCMecZuLIEvqQiLnT6vIF9D1x23HSCl tJW7k55CAt0vnp38Z669pQro9CTlBy9P6HagFo9NGlRiPP7NbU8po3ZanrFZQZFAdrxX tZp3jtFAIxck9DhwaC+v9ox7GAg5Bw0uu0pfyfdP6c/QDFVpuNwFsM9Tzi9ciGe5Nvio q5dw== X-Forwarded-Encrypted: i=1; AKwUvBwnW19ruBsAoBtfr9AGjgclOB7TT6Bts20QohAfZyWTcZGcJUZ1VolVRk2IkXb8EsA0GgsVG2ZmXQgt04g=@vger.kernel.org X-Gm-Message-State: AFuF++kVo9eTMYHC16qmc6eLQRPZx62zVG/4rB7pp/4vKQWEHBC2DU9e T7c1jcS/oVEK0Hrv1o+lNvy3C/xZBe4A8kt/kDuMs628GRzflCm7P6hJGjeIH2ViP/MIA48UVmN g3qzyEuAkVG1ZwQzZuICMw93MfIE+6fLJerPacbznktJmDXDLEV7+h8GG0S/gPA== X-Gm-Gg: AYBFou2DgxT7hX6eTZdw7xkn0ap2VxJdWgkYiL3pQXcfNJVzmFKNETIpIj779dmP4WG HL7sMS1Taxc312qHouTxiur0wsmgqOAOwqjTc8ikd86OFwBxKsaU5YbA3/+Vy5INdOVLN/SXmha GmO5jDyruscfRS5EbxWaPvQLEkyBmcESqaeB7/s0oz/USmesSwwuP022kVVNdfFic6QA94sz4ce 6mKG7VK8Fpyh9YfGEcHGxwia6ogtlSRokEjOgwdqeqQYHB0AyckGqV97XnBKjfGxy9f+1PrDdGP llcZJWQQgwUmnpuy/ij8JgleXbGJuA38gnaDC+K8cirOGiK0wjzk7HOGuk8wMO1B1RP9pyTkhsq tgqoi2af4VURsXsR6RF8PFjJcwTgBpl/qbOEJ1vyM14Q= X-Received: by 2002:a05:622a:d19:b0:530:74c2:2a59 with SMTP id d75a77b69052e-53074c26c9dmr131540881cf.37.1788812423900; Mon, 07 Sep 2026 13:20:23 -0700 (PDT) X-Received: by 2002:a05:622a:d19:b0:530:74c2:2a59 with SMTP id d75a77b69052e-53074c26c9dmr131540311cf.37.1788812423425; Mon, 07 Sep 2026 13:20:23 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:22 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:19:56 -0400 Subject: [PATCH v2 2/7] btrfs: tests: convert test_find_delalloc() to use folios Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-2-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=8635; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=avES3bG48BLV1EAoCdOHxxuCdmO1REtwTj45aoG+V+0=; b=u6Z/NPXQqwpX9Hxw2oRzDdYGukmK5kzfapX6Oxaso1TnfRrJgYfbRicx7YCy5KNoytDTDShhu Y0zOj0toVa7BaQL5HW4srwnGl6ll7TSY8EfT+2MY45ANzrPkuBpQN0x X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Authority-Analysis: v=2.4 cv=Wc48rUhX c=1 sm=1 tr=0 ts=6a9f1c88 cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=QOCMdifcju39GKoXhKua:22 a=GGKBf0zGomX5QsxccnIA:9 a=QEXdDO2ut3YA:10 a=dawVfQjAaf238kedN5IG:22 X-Proofpoint-ORIG-GUID: dp00c6PYZ1smzjSP_Vf3u5qkfDSFXPXs X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX15S6L3be9xh/ NQij3ZK266x/uSyQjA9E3qm+362XKORFNtqDYCUq/h1GuPnJIXz///61/EOGG6lyFDuUHLBNuZu WR2/TZZPPOPCA3s6lGsXikp5DnwBix+CKwbf3uMU5k2aJ9aMXbxl X-Proofpoint-GUID: dp00c6PYZ1smzjSP_Vf3u5qkfDSFXPXs X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX/0fEIlCpKGBo sk5EumDKrJ1hc2cNmAPLUipUg+qQQSQ6T3PZ4nIwWSbyLfswd6erzrpo9B/4oXQVj9H+dYXRcGv h24cdolEWysIeK6RGzs3CsXhgEWe0M6pBSAaKUKa5zjEs7t98yca+NcV0x6dmvB+Qfdt7PJAZvM +7z+wMu1v9JE133rmgOFXokfwe1pNkNZOgvVZDovto99zzFAwtllmT3o+wiiuFkexzlKZE27CnW XEFQW8eqOo4k2rcTZbFJz+muJeDfaZ5O3PeoEXOAuzbFgemZ+Sq6y4Iod+vyeITENV917VeBIjp ZxCqHr2Zagq2m31JuXlz54S+7MAf60rQsJ/zcZqZDK/bB3ktB/Poxqa6isqyE9H6W/MpdegpzlW ZuhbkhHHuQKcAfHJa7L5rDB/6aHE7PBi81C0/0EW1YkSOTqVMtK/PC1C6PyJXNEgr4PPKyS2Qd7 kLyVXciLW5at+KkREhA== X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 malwarescore=0 spamscore=0 lowpriorityscore=10 bulkscore=10 suspectscore=0 clxscore=1015 adultscore=0 impostorscore=10 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 This removes the last btrfs callers of find_or_create_page(), find_lock_page(), SetPageDirty(), ClearPageDirty(), and get_page(), and 15 calls to compound_head(). The folio lookups return an ERR_PTR instead of NULL, so adjust the error handling. Update the comments and test messages accordingly. The test still works in PAGE_SIZE units, which relies on the test inode never getting large folios, so assert that the folios are order-0 where that matters. Signed-off-by: Tal Zussman Reviewed-by: Qu Wenruo --- fs/btrfs/tests/extent-io-tests.c | 99 +++++++++++++++++++++---------------= ---- 1 file changed, 51 insertions(+), 48 deletions(-) diff --git a/fs/btrfs/tests/extent-io-tests.c b/fs/btrfs/tests/extent-io-te= sts.c index 6eb55bfb2bd4..e7aa8bc04706 100644 --- a/fs/btrfs/tests/extent-io-tests.c +++ b/fs/btrfs/tests/extent-io-tests.c @@ -112,8 +112,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) struct btrfs_root *root =3D NULL; struct inode *inode =3D NULL; struct extent_io_tree *tmp; - struct page *page; - struct page *locked_page =3D NULL; + struct folio *folio; + struct folio *locked_folio =3D NULL; /* In this test we need at least 2 file extents at its maximum size */ u64 max_bytes =3D BTRFS_MAX_EXTENT_SIZE; u64 total_dirty =3D 2 * max_bytes; @@ -152,23 +152,26 @@ static int test_find_delalloc(u32 sectorsize, u32 nod= esize) btrfs_extent_io_tree_init(NULL, tmp, IO_TREE_SELFTEST); =20 /* - * First go through and create and mark all of our pages dirty, we pin - * everything to make sure our pages don't get evicted and screw up our + * First go through and create and mark all of our folios dirty, we pin + * everything to make sure our folios don't get evicted and screw up our * test. */ for (pgoff_t index =3D 0; index < (total_dirty >> PAGE_SHIFT); index++) { - page =3D find_or_create_page(inode->i_mapping, index, GFP_KERNEL); - if (!page) { - test_err("failed to allocate test page"); - ret =3D -ENOMEM; + folio =3D __filemap_get_folio(inode->i_mapping, index, + FGP_LOCK | FGP_ACCESSED | FGP_CREAT, GFP_KERNEL); + if (IS_ERR(folio)) { + test_err("failed to allocate test folio"); + ret =3D PTR_ERR(folio); goto out; } - SetPageDirty(page); + /* The ranges below assume page sized folios. */ + ASSERT(folio_order(folio) =3D=3D 0); + folio_set_dirty(folio); if (index) { - unlock_page(page); + folio_unlock(folio); } else { - get_page(page); - locked_page =3D page; + folio_get(folio); + locked_folio =3D folio; } } =20 @@ -179,8 +182,7 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) btrfs_set_extent_bit(tmp, 0, sectorsize - 1, EXTENT_DELALLOC, NULL); start =3D 0; end =3D start + PAGE_SIZE - 1; - found =3D find_lock_delalloc_range(inode, page_folio(locked_page), &start, - &end); + found =3D find_lock_delalloc_range(inode, locked_folio, &start, &end); if (!found) { test_err("should have found at least one delalloc"); goto out_bits; @@ -191,8 +193,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) goto out_bits; } btrfs_unlock_extent(tmp, start, end, NULL); - unlock_page(locked_page); - put_page(locked_page); + folio_unlock(locked_folio); + folio_put(locked_folio); =20 /* * Test this scenario @@ -201,17 +203,18 @@ static int test_find_delalloc(u32 sectorsize, u32 nod= esize) * |--- search ---| */ test_start =3D SZ_64M; - locked_page =3D find_lock_page(inode->i_mapping, - test_start >> PAGE_SHIFT); - if (!locked_page) { - test_err("couldn't find the locked page"); + locked_folio =3D filemap_lock_folio(inode->i_mapping, + test_start >> PAGE_SHIFT); + if (IS_ERR(locked_folio)) { + test_err("couldn't find the locked folio"); + locked_folio =3D NULL; goto out_bits; } + ASSERT(folio_order(locked_folio) =3D=3D 0); btrfs_set_extent_bit(tmp, sectorsize, max_bytes - 1, EXTENT_DELALLOC, NUL= L); start =3D test_start; end =3D start + PAGE_SIZE - 1; - found =3D find_lock_delalloc_range(inode, page_folio(locked_page), &start, - &end); + found =3D find_lock_delalloc_range(inode, locked_folio, &start, &end); if (!found) { test_err("couldn't find delalloc in our range"); goto out_bits; @@ -223,12 +226,12 @@ static int test_find_delalloc(u32 sectorsize, u32 nod= esize) } if (process_folio_range(inode, start, end, PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { - test_err("there were unlocked pages in the range"); + test_err("there were unlocked folios in the range"); goto out_bits; } btrfs_unlock_extent(tmp, start, end, NULL); - /* locked_page was unlocked above */ - put_page(locked_page); + /* locked_folio was unlocked above */ + folio_put(locked_folio); =20 /* * Test this scenario @@ -236,16 +239,17 @@ static int test_find_delalloc(u32 sectorsize, u32 nod= esize) * |--- search ---| */ test_start =3D max_bytes + sectorsize; - locked_page =3D find_lock_page(inode->i_mapping, test_start >> - PAGE_SHIFT); - if (!locked_page) { - test_err("couldn't find the locked page"); + locked_folio =3D filemap_lock_folio(inode->i_mapping, + test_start >> PAGE_SHIFT); + if (IS_ERR(locked_folio)) { + test_err("couldn't find the locked folio"); + locked_folio =3D NULL; goto out_bits; } + ASSERT(folio_order(locked_folio) =3D=3D 0); start =3D test_start; end =3D start + PAGE_SIZE - 1; - found =3D find_lock_delalloc_range(inode, page_folio(locked_page), &start, - &end); + found =3D find_lock_delalloc_range(inode, locked_folio, &start, &end); if (found) { test_err("found range when we shouldn't have"); goto out_bits; @@ -265,8 +269,7 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) btrfs_set_extent_bit(tmp, max_bytes, total_dirty - 1, EXTENT_DELALLOC, NU= LL); start =3D test_start; end =3D start + PAGE_SIZE - 1; - found =3D find_lock_delalloc_range(inode, page_folio(locked_page), &start, - &end); + found =3D find_lock_delalloc_range(inode, locked_folio, &start, &end); if (!found) { test_err("didn't find our range"); goto out_bits; @@ -278,36 +281,36 @@ static int test_find_delalloc(u32 sectorsize, u32 nod= esize) } if (process_folio_range(inode, start, end, PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { - test_err("pages in range were not all locked"); + test_err("folios in range were not all locked"); goto out_bits; } btrfs_unlock_extent(tmp, start, end, NULL); =20 /* - * Now to test where we run into a page that is no longer dirty in the + * Now to test where we run into a folio that is no longer dirty in the * range we want to find. */ - page =3D find_get_page(inode->i_mapping, - (max_bytes + SZ_1M) >> PAGE_SHIFT); - if (!page) { - test_err("couldn't find our page"); + folio =3D filemap_get_folio(inode->i_mapping, + (max_bytes + SZ_1M) >> PAGE_SHIFT); + if (IS_ERR(folio)) { + test_err("couldn't find our folio"); goto out_bits; } - ClearPageDirty(page); - put_page(page); + ASSERT(folio_order(folio) =3D=3D 0); + folio_clear_dirty(folio); + folio_put(folio); =20 /* We unlocked it in the previous test */ - lock_page(locked_page); + folio_lock(locked_folio); start =3D test_start; end =3D start + PAGE_SIZE - 1; /* - * Currently if we fail to find dirty pages in the delalloc range we + * Currently if we fail to find dirty folios in the delalloc range we * will adjust max_bytes down to PAGE_SIZE and then re-search. If * this changes at any point in the future we will need to fix this * tests expected behavior. */ - found =3D find_lock_delalloc_range(inode, page_folio(locked_page), &start, - &end); + found =3D find_lock_delalloc_range(inode, locked_folio, &start, &end); if (!found) { test_err("didn't find our range"); goto out_bits; @@ -319,7 +322,7 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) } if (process_folio_range(inode, start, end, PROCESS_TEST_LOCKED | PROCESS_UNLOCK)) { - test_err("pages in range were not all locked"); + test_err("folios in range were not all locked"); goto out_bits; } ret =3D 0; @@ -328,8 +331,8 @@ static int test_find_delalloc(u32 sectorsize, u32 nodes= ize) dump_extent_io_tree(tmp); btrfs_clear_extent_bit(tmp, 0, total_dirty - 1, (unsigned)-1, NULL); out: - if (locked_page) - put_page(locked_page); + if (locked_folio) + folio_put(locked_folio); process_folio_range(inode, 0, total_dirty - 1, PROCESS_UNLOCK | PROCESS_RELEASE); iput(inode); --=20 2.39.5 From nobody Fri Sep 25 23:10:21 2026 Received: from mx0b-00364e01.pphosted.com (mx0b-00364e01.pphosted.com [148.163.139.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8A01441A545 for ; Mon, 7 Sep 2026 20:20:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812433; cv=none; b=uqgQrwYB5v8BplDMR72HWVr7jg+dCuAg0w4rkNiQO25T9IofZKrbGkIxf4UP3lFyCJVgI3lh5Xw5Bo98F8ZZ7kBbFlzMXlt4A2Hfb+iy8AvMonCKWhZQ/zzPnfBzC6cm/DM0YI9vitKI2YL8JT/P7H9n4h/oDQke/1cMu5pTTYs= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812433; c=relaxed/simple; bh=D3OoCLzA/WlOhaCyWWm23X95M6jgekSWZ6V3R3jvD8I=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=IjyuUh8/Aa36m/lbNu0FPUG2cbyhxfzWQl906ZbsvX5L+/00KD0R1+TtCW6gr2t56GbeXK/qe7XTexJRQlM3XIKI12F2PIT/qTg3nNf2EV4n1VkkZviLZfsVJhLUaoY9z8LFx1K+2/U9G5YOSftWqH2D1E7wTnN6eSTHOP4ghAQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=Pr4HMSDX; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=er9XSFpK; arc=none smtp.client-ip=148.163.139.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="Pr4HMSDX"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="er9XSFpK" Received: from pps.filterd (m0167077.ppops.net [127.0.0.1]) by mx0b-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IYMNx2945068 for ; Mon, 7 Sep 2026 16:20:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=hoZN 7B/J8KWpxSnwN7ipdzq/CJN/u6peLjXlm5haPME=; b=Pr4HMSDXFtAozv5UdcG4 SATaRJrwIHzMiyuwmYtwklrdo/oi/xsEr1NgUOaB+Zz1P5ZH8Fpwo2wCYgUzvCZO O5IeiWk6yz8tPV47biZV0nYHhU7ut2rcQNVacoLzRAq1ClCnraVWyRT93tFY9ptC mUrHlfp9IK4QF+f3Qo6BsPjFf5stFjuG3QfzDY84LQxrD09vbBj0vxZjzqmq7WEz XioQIiDM/VQ+vGjYWxO5SUWg69M69+hJ5nmPjOqRplyjrEkm2B+IPQgKAj+tovt/ VE6piwDl4XNGsGzX4ljGIVx6SN8JeJAZ1S6A42sVRPg4NSpuCq/JrIg8FKWEjcCl UQ== Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by mx0b-00364e01.pphosted.com (PPS) with ESMTPS id 4ghepk5ek8-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:25 -0400 (EDT) Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-52dcf1bb6e9so77749351cf.1 for ; Mon, 07 Sep 2026 13:20:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812425; x=1789417225; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=hoZN7B/J8KWpxSnwN7ipdzq/CJN/u6peLjXlm5haPME=; b=er9XSFpK6tZOL7+K8DYbq8ZhIZO5kejWu69Xfhj0n62Mb36KkOzNvSpaagc5k1A5Wj dSaKs8Fw3Q8MID2+vf3QvS4gXYZOidghFt7F3md3l/AJRK9NkcenhOtSf3QjEjekwrME TwuA34Py5Ksb7DE74j0H8FKtyUMNtkToIJnIEcSwc5h5aC6CCJMU/e+Mt1o2W+TP5XrK FfN2ZQb15YAoH0dwp99kZOFV+ZurfZ/6/vZ5PYeIjSA0hmJ9Wb0kR6eTT5KTTZF2ssiP gsYG3BA0XUXXGBDA8b3HlrzTzF6+NjMjlA537JhCps5BLE3hT4OgKg2Cr0tXER5M4tE+ X8hg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812425; x=1789417225; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=hoZN7B/J8KWpxSnwN7ipdzq/CJN/u6peLjXlm5haPME=; b=Zbv5zq7xetb84rfNavAUisVaLZ7+L82YXwxDj/Mchr2+xv5iB8bVcr+8exVfGUChEg QnMsowJSAT16BFKZzixd8hzy2c1cWi40YN8OYg6g7oHyXIY/NhupbJomfC1XVypepbk8 2VlBMe//D0/pgTclcuUDv+nQQd90IrOIdbF2KvEAcv+3Z7WNcZV+lmzfLeXtnVoF2sDe pTY7yIlYqD8rnhvJXOGaGzWDiHWjF8uNa92kRCWswc+6KR9CDAFiFi8Rztiqo1XqWc2+ C3ci7ccccN+6rQagsdqTWhwtwsh8CnC3UqqTWrFC2AGn6iht+hNlttASLkAxkAd3WI6F DA5w== X-Forwarded-Encrypted: i=1; AKwUvByLyxyZV2A8SOc3/BHbsYAZIsZMqimGF1XB6NCoGNj2g34sWf8Wm8SQkb7fVm88HJBuEfZv6QxfXdBKQVs=@vger.kernel.org X-Gm-Message-State: AFuF++n4+Rtz7JYwrJ4IMunX5FNSjAOPj8Ymz+8fThB05vV7rOrjBhvX TqaOv6GyQbhn6S2QAYI0QakZ33GUjS8myRB7Hqt21o5UZeC97Eo6N3k07SGyTMvlj2nXTKWpXho 6LnBQcpbIfhy1PuJMzgK85hwviL11UGsjE8ztrpTcBRlyFhPZgr7MBy8+/PBi2A== X-Gm-Gg: AYBFou3NIFFGyQvJvVuG5CMoK/ujelDAS6TRrIWdcpP1J9w7FHwfja8Cy0m/h8IDBwH kRAl2JZsWlOpw86zOBgUYJZCkomSqARh1NZdHfOvTLLgRvoBnzvRi27EKpAC5hkH20lxnXDNl0r amVDIJYsExq3nFOOjDwuNZ2ezIV2KULVvNRRtsRIzuNkxrr0kUfY4QKB7QQujpOqx4+xi2ETWPg aw+in0x9QWWnsjAKKR+azpNoxXpTWwdq1yaB1YgEW50nsS45kRV/oU34WUOeukMigs8QNKMB3Fz q+ZZYfkIj7x4DEvHk6h05GEIzyZcfLia6GWkWJbseIlxogrX7Z6lzsLlHSC5QewCYym7KMF4nOF 5EBUk4LvEp1SrmcUMeKp75vx2XMhRrNyu7v9KY8avWCI= X-Received: by 2002:a05:622a:1106:b0:530:514f:3c3d with SMTP id d75a77b69052e-5309121d7fdmr30809821cf.11.1788812425401; Mon, 07 Sep 2026 13:20:25 -0700 (PDT) X-Received: by 2002:a05:622a:1106:b0:530:514f:3c3d with SMTP id d75a77b69052e-5309121d7fdmr30809441cf.11.1788812424859; Mon, 07 Sep 2026 13:20:24 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:23 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:19:57 -0400 Subject: [PATCH v2 3/7] btrfs: tests: use eb folio helpers in extent buffer memory checks Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-3-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=2069; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=D3OoCLzA/WlOhaCyWWm23X95M6jgekSWZ6V3R3jvD8I=; b=/Y5DThE71Fqh4Inl9uJz9mS6vyWbyH++5OFw3vN3dRa9ojK/V9gBE4fmJf+FPqf6Nue9Rggdb oCNsgGJrUBJDAOHXheVo9mmHgXL2lM9dbnVs2Q3kgcYSszDh45vE67P X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Authority-Analysis: v=2.4 cv=Wc48rUhX c=1 sm=1 tr=0 ts=6a9f1c89 cx=c_pps a=EVbN6Ke/fEF3bsl7X48z0g==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=QOCMdifcju39GKoXhKua:22 a=iox4zFpeAAAA:8 a=Vu0au1qQRFuq_hTP11wA:9 a=QEXdDO2ut3YA:10 a=a_PwQJl-kcHnX1M80qC6:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-ORIG-GUID: MzNAuiPPFN5XPiEWvAZMuURVBvNDTWIb X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX2BTyxeSNY5Xr M9V0vYONuc5sNcAtbrr0sWlX4AHVgSK5BFZ5a4VxRRBCjlfZcdhjzAFrdaY12hUl+mFZaeCKMwG WWcVP/v9vn3bDswDM98JNNec30sljkJQh6lHBXwZgHyKCkx5roxG X-Proofpoint-GUID: MzNAuiPPFN5XPiEWvAZMuURVBvNDTWIb X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX+IuTpykHhYtF WGhWtrKLF6HAlWchJfgEmk6dj4fe9doxKymwc5zSCtD48yX+M1ZIA+WP5P4/Fhy6pE8VZdwS952 NkgZGvWK90ISdPOiPBKjm016Cq338JMFf8Xl/ZOZ2pUJau1Sqjbtq/W6/vUINKL03ovfujMUfOa DhvFFVuyTjWwbBf23FUZvR6jzD0LDmaIzQpv0mjDYGgqc/tQyf7d7x90AHp7loH1c9/PH/WJZMG /ON8lDFsZa/HpfISHbZ+tcOernkhV2g5CfXKDHPt3tIxe1NTTPmGIT7jJLQNluZoQ+gVAnoTO6D 4vvhsgAjDCFDaBTqoMxE7xuhoyJlcSaAXOyyJky4WDS+jOlqsMkjynuN+dW9MB+YB+Ck1rCfrNi IZ9FN+9Pzbuup1Lp604ieEtCdP1nGw8uZ1QJxi2ZoVfdjyxZoxl+pdz32gx3kR5WYFqA3bnjew5 deX5YHUoNvDhtvprl/Q== X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 priorityscore=1501 malwarescore=0 spamscore=0 lowpriorityscore=10 bulkscore=10 suspectscore=0 clxscore=1015 adultscore=0 impostorscore=10 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 dump_eb_and_memory_contents() and verify_eb_and_memory() hardcode one page per folio instead of using get_eb_folio_index() and get_eb_offset_in_folio() like the rest of the extent buffer code. Use the helpers and folio_address(). This removes the last struct page usage in the file. No functional change. The tests only run with sectorsize =3D=3D PAGE_SIZE, and the test extent buffers are backed by order-0 folios. Assisted-by: Claude:claude-fable-5-1 Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/tests/extent-io-tests.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/tests/extent-io-tests.c b/fs/btrfs/tests/extent-io-te= sts.c index e7aa8bc04706..777caace717e 100644 --- a/fs/btrfs/tests/extent-io-tests.c +++ b/fs/btrfs/tests/extent-io-tests.c @@ -674,8 +674,9 @@ static void dump_eb_and_memory_contents(struct extent_b= uffer *eb, void *memory, const char *test_name) { for (int i =3D 0; i < eb->len; i++) { - struct page *page =3D folio_page(eb->folios[i >> PAGE_SHIFT], 0); - void *addr =3D page_address(page) + offset_in_page(i); + const unsigned long idx =3D get_eb_folio_index(eb, i); + void *addr =3D folio_address(eb->folios[idx]) + + get_eb_offset_in_folio(eb, i); =20 if (memcmp(addr, memory + i, 1) !=3D 0) { test_err("%s failed", test_name); @@ -690,9 +691,12 @@ static int verify_eb_and_memory(struct extent_buffer *= eb, void *memory, const char *test_name) { for (int i =3D 0; i < (eb->len >> PAGE_SHIFT); i++) { - void *eb_addr =3D folio_address(eb->folios[i]); + const unsigned long offset =3D i << PAGE_SHIFT; + const unsigned long idx =3D get_eb_folio_index(eb, offset); + void *eb_addr =3D folio_address(eb->folios[idx]) + + get_eb_offset_in_folio(eb, offset); =20 - if (memcmp(memory + (i << PAGE_SHIFT), eb_addr, PAGE_SIZE) !=3D 0) { + if (memcmp(memory + offset, eb_addr, PAGE_SIZE) !=3D 0) { dump_eb_and_memory_contents(eb, memory, test_name); return -EUCLEAN; } --=20 2.39.5 From nobody Fri Sep 25 23:10:21 2026 Received: from mx0b-00364e01.pphosted.com (mx0b-00364e01.pphosted.com [148.163.139.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D27C41D4EF for ; Mon, 7 Sep 2026 20:20:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812432; cv=none; b=omqBW8hOBTHnYoHzoWPi5MnyvbjuIo6k+OYnyI7J2Uh3CKJE7Oj4RXdxUOK/9WJAdW+AIi5fQ8/oqKTck/rgwEmX627+7zQ9ekmBDvREsMMxZK9JJLMD6zcm5gXl0RYgrrtMeLlNoMeICC3ulR2HaXbVB29OcNoyOOggVpq4vYk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812432; c=relaxed/simple; bh=Q8ljCQeoaeoN+ae43nM2Vv6Q0j+dQccM2ug41NNICUI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=L24fDwIdYDdAj1k9SO+ENiw2uv+HdrllWj1OO00auUhQILH3pX996CpNncliSPBG1c8OKn4T8gpK8AZRsmZU6DVGi5yce5erFPZhyra66ciTXGVMGZX41O4FsJhm3GR/qg7DXejhvtMj6PSNMTZmb0/BuLxzVhoVGebtQK6Hf7I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=Ol6vKf75; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=xgoRXZf7; arc=none smtp.client-ip=148.163.139.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="Ol6vKf75"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="xgoRXZf7" Received: from pps.filterd (m0499198.ppops.net [127.0.0.1]) by mx0b-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IYhUL3506780 for ; Mon, 7 Sep 2026 16:20:27 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=XJQN 0uKsYlPtSkjrcSF9XbS467Wd3IrFH8lDz1PZ5Zk=; b=Ol6vKf75F4xp2P+zi7Co LUaNmpH6lhq6p1fumZkEBryc1duoY2ZRB94Q5yE43JpDobCHrF05uM4Zh3F92jE2 zo2kBlAyb234m4wxrD0MAGVgQBhuRwKgF5WhQXnq3BMp+gp4E/HB2z79rXehLvo8 k5V7ZmEwXe6KZfhOBStbeYYVvPMhiTOHviA7eoyv8LjdLi5WxgGba5sPfnzmcI3R rzs1BA8K4w1zrVL3GNqwGRVIPOr+gM40Na32s59afScRTQhq400o0x/u/2QlAR2/ vGqWKK97qW+hiti0F5lQgaIQBBPsIRmwsu5sXbX1XHlM2QnzNTEPIpaq0yQM6gEz Ow== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0b-00364e01.pphosted.com (PPS) with ESMTPS id 4ghxx21yhy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:26 -0400 (EDT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-52f9e903b02so59295551cf.0 for ; Mon, 07 Sep 2026 13:20:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812426; x=1789417226; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=XJQN0uKsYlPtSkjrcSF9XbS467Wd3IrFH8lDz1PZ5Zk=; b=xgoRXZf70J2ihezYa15K4VNEi43+z9Vit/bxl60nkSaYMDgRLk68DSC+WBlViT8nZe o+OGo83UWVPIioZjBAh7Yc7hkiaYBrz4QsmgfSGtjpp2B2TNHMkGTZUR6CbDaMZMNm1m KSTaEzaxR8MJeexR6M7Nqny1+to0khIBYjm1e7pMfYgc/rHbVwP6d11avZW2DMzlkiL8 ynLZGyHN9ypbTw8lacZo8Zi8DtQsIG17wUrVSpCBPKyZiwbvSq7f+JSCoATSCvivo6+w FLxLPWNcwi0LJw40fsoYxZN6TRf7P5zrR67kBsF2GPdXKeCG8hAB9lertpuJfdMlM1rr EEqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812426; x=1789417226; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=XJQN0uKsYlPtSkjrcSF9XbS467Wd3IrFH8lDz1PZ5Zk=; b=FEtrCJOZoYtQlhpKNVBP2CSagT2sQgStVIxYfXxg7WAyK5zYZ334YrMYlusdGH9RMB +LDhLS93g19YjvtZneysQBgMIABCbhB0BQ3kbfvpmEKHYZu3kkZo3ZARu/fHf1AFZkHt 4bFgAi6mAEJ3LzPSRTAWKqZ+iCN8kYvMLsfK6CO2VP82VoP7xW8IgytEVk7MFC3rKMAh RoJm+B+mnGxZUrBGnOUwk8Lw+Bt1PJwU4s29Vh4KAuZDO9S3AyW+gJqBcf2h/JgzRc5S NydnDFUwcYGkS4D7aNAJtjzJ5QRTcQNA7QkMMmJu56ujPhkulTg1dnG5hyv2I3h9DD4e 41fg== X-Forwarded-Encrypted: i=1; AKwUvBxZTL7mqC4enaG0XDFtNoQePXMnQ+8u9B1VQTQQVUmUU/oLWvDXdTHz+kZXU9agnTH3LrO48RICqvRRO/A=@vger.kernel.org X-Gm-Message-State: AFuF++m5AEu9bM1t9okqSU/CutbkKIdOqRZh5/Uddxh023pVW5K+zoHm TTMiQKTnLVZxf595te9UFPjpezFTNC8+3mQjwHkpZMJcoSV/kkKvcAc9vq3dkVmV/8IVhK5DeJ9 8AVLl/vdOop5fr9ZASXewjiM0Dyufp/UV7ET+KkhGKlx+cqPNNqU8RYZDuh8UyA== X-Gm-Gg: AYBFou3qSRV4rJdPYSpDSH8juKWAyVRcMcIOr6doR9GJHpInOVYA99r4HIxKwPIkVAM Mdtl2UX80wKjDhxrDcvkFidhpsEoY2tWkreH+XIBsyzIEUFghxz3BoJHybkhaTnXVGLiUowUZrD qiwYfJkcfABCY0geXqyXm7y687/hhA+Gsbm9FgOg9YFmNnV3W1kJPgDXQTdjEaOcaHNNIkJq3ea ELE8Nqce4zpcv1U/IAAFrXCXKmKZbBcFQGsgj0s24PACH5JTEIgDj2hpTYieTzTI6tu228ZrnhR 6haXWd/5NPxoRyz3Wf4sDxJey7zgZFBermue824B33txkx9NwH9cNw9q42teTFLGeZ6IPI3DGaj uN8a+1/JaENiSfW7He1bJDf3mb2rBQfnCSnrsIynpa10= X-Received: by 2002:ac8:5756:0:b0:530:4773:1142 with SMTP id d75a77b69052e-5304773137emr248442151cf.32.1788812426386; Mon, 07 Sep 2026 13:20:26 -0700 (PDT) X-Received: by 2002:ac8:5756:0:b0:530:4773:1142 with SMTP id d75a77b69052e-5304773137emr248441821cf.32.1788812425889; Mon, 07 Sep 2026 13:20:25 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:25 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:19:58 -0400 Subject: [PATCH v2 4/7] btrfs: convert btrfs_compr_pool_scan() to use folios Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-4-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=1104; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=Q8ljCQeoaeoN+ae43nM2Vv6Q0j+dQccM2ug41NNICUI=; b=2RXfdIhT6KuiqFb0u1aNi27qH93hxs1M9rXGGcYK2FV81QV9J1dkThrohMqPvhO7ztYr9AdCt S0qobHWeNoNAllmsgkxqYm3KvELi80dIIFXuMlPbKUYx4oO6RnU4h95 X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Authority-Analysis: v=2.4 cv=YcyNIQRf c=1 sm=1 tr=0 ts=6a9f1c8a cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=BpGzv1V74M3SfeTrGa8v:22 a=iox4zFpeAAAA:8 a=HJL5WrqY3U93294rNdcA:9 a=QEXdDO2ut3YA:10 a=dawVfQjAaf238kedN5IG:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-ORIG-GUID: Bgbaq3mWx38hhr8T5k1Kp2DNVJTiGb5d X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX/W98x2iaqYIs JCjMW4m++H8tlp+cssWjvyyPdCrO7JUADQnndYCF03rdHyll4rbHRpGvrRffRHSTwZydoJMqJfY 0eaWJX8EckXlJVnjGyU2GVn1eCSsRtEaEgje5aCqVc4fti22ZJXu X-Proofpoint-GUID: Bgbaq3mWx38hhr8T5k1Kp2DNVJTiGb5d X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfXwcqtnVF/g9ts 87QUsnYEYJAPkllnL5PZwk+F1y7JGyNjmV7bOS9kfyk4SaJ5FUQuSJMwFhc8TgWyVJC4FWcstz6 6mVOt6jlJC6YJgT0UkNcuUnR9+vOOXDgMsPcjKoUTFJladpM1IZp0K3/CNZMAU2GvjZdmFL+uDV 1IMwnx9DCnphO0MctnTDvOwVMeYj5nq7fZgZdmL3vVA7LNFDJDYCWYwxXci5D/8oLV/92B4s6A+ 2IMY7MG3IgYrdv4t7VnoIFeq9TF846DirHf0KbeU3RpAPm7SK/feE7u0nDHcj3azz/3ySxnqFAy B6GCPKG0SOg79x3wsDXN49ll5fE3oxacSHLfGAu9B7Jy/4DXYGzk1stk0FSnWMBG8YUrFcg62MM BFzJVETbnxARmIAybl5qFVvajS76aCXR7YjqCHhGlA4gJqWxDIqPO2jg5ZINlHo4xOAk18nlPF+ +TzNcHlgq0R4Ok6gfHA== X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 clxscore=1015 lowpriorityscore=10 bulkscore=10 malwarescore=0 impostorscore=10 suspectscore=0 spamscore=0 phishscore=0 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 The compression pool holds order-0 folios, but btrfs_compr_pool_scan() walks it as struct page through page->lru. Walk it as folios, matching the other compression pool functions. This removes the last use of page->lru in btrfs and saves a call to compound_head() per freed folio. Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/compression.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index c62b5148d5ac..979b2ffbd8fc 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -168,10 +168,10 @@ static unsigned long btrfs_compr_pool_scan(struct shr= inker *sh, struct shrink_co spin_unlock(&compr_pool.lock); =20 list_for_each_safe(tmp, next, &remove) { - struct page *page =3D list_entry(tmp, struct page, lru); + struct folio *folio =3D list_entry(tmp, struct folio, lru); =20 - ASSERT(page_ref_count(page) =3D=3D 1); - put_page(page); + ASSERT(folio_ref_count(folio) =3D=3D 1); + folio_put(folio); } =20 return freed; --=20 2.39.5 From nobody Fri Sep 25 23:10:21 2026 Received: from mx0a-00364e01.pphosted.com (mx0a-00364e01.pphosted.com [148.163.135.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5311F3ECBE5 for ; Mon, 7 Sep 2026 20:20:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812434; cv=none; b=Kn1aozDBm0o/O1+STyGY27izGLjm4CG7KTGKyq6JmhcU2s/plYAArpsE/ph3+4+ftqtb4CW3OOoEa+hqRqsw6BvDoeItYS8RdonV/jN445R/TAPudWbRLidqCBqOQGrkyD/gofFZPKCAFM1bVqj81+3jx1t9HLsR0RhiI9cKbWc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812434; c=relaxed/simple; bh=BcX8eAZRyTKOu9anIq4NjYeefUnKsXm3iDN26nTJMHo=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=JkBJVZkfpwb8yjWoaOrhx9pHjhqDGSg36oXYj4PQlLL45svjH3NPAOA+vn/FAg1A6wHnnYbPktU/tfrDkRPIiL6mdINwcK3ekZlw3rOl/gAXPxsdUWUu/l+rx8MJMVRU6uLc6Gr2auOLWZgWtltmWva1CX6+QSjxW6iLf+S0ASU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=nriSgN2A; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=thGtT2Y/; arc=none smtp.client-ip=148.163.135.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="nriSgN2A"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="thGtT2Y/" Received: from pps.filterd (m0167070.ppops.net [127.0.0.1]) by mx0a-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IZ95D2619558 for ; Mon, 7 Sep 2026 16:20:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=DZ1+ 6YkyruVGAe1XdJ5/MYgdff65UG0H/MQQoGU3q/A=; b=nriSgN2AxnwodQ+8Uo/9 fhAeiMtWlgegXFbCZ6mjydZu8+9dlRinqH0cBQq0qVUMlsVJKd5vqM/laPNtV8lZ GRF6G7FRrcj+p74B0kw2joQNWoIWsuWd3UpNY71pLJkQHpar9Pj9xUZm6zWfBjXO KqYzvDnbZI+z+1yIsHMw4kAfXWm8q7J+LcZ6g5NjvIFLJsnP25jQD/GnrwHiBeyY FDyZZ7G55BdtwenCq7uUUGg7B6FcoByCrnpGC3+7Xq8tRUDrGswCXyAyofQuW4c/ cOx0s124GWmVdJuiThGzB4hggo6QjrpW1y63lAm+Bb9NDjrEk9WVr4ItSso1k6Eh Zw== Received: from mail-qt1-f199.google.com (mail-qt1-f199.google.com [209.85.160.199]) by mx0a-00364e01.pphosted.com (PPS) with ESMTPS id 4ghdvq5tx8-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:28 -0400 (EDT) Received: by mail-qt1-f199.google.com with SMTP id d75a77b69052e-52fb8f67601so47418811cf.3 for ; Mon, 07 Sep 2026 13:20:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812427; x=1789417227; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=DZ1+6YkyruVGAe1XdJ5/MYgdff65UG0H/MQQoGU3q/A=; b=thGtT2Y/UMOYIhFcVSMZJD2oD25djin0eRh6sgAjD+Xta56AoV4E0EBlC/qKmjFDfp ov+w3eWm9iQnAR/X/F+0h48XhSc96rXPGAt4dSuJd/IKNQj7yjUQi/EJx3w3Umz1sf1m XSZoOgl/xbGYyMG4SsGTf4WWv+23sZlgtgbXn9UMdb+2wmR16loen46PqLzqOKYD2ET+ SxFb3M2fTvnpuOjx7NxR4rU09/fSyrVpYWIaQQqUvKuwJOdw47M/Yd1HVYlIuLT1XUe7 UGyLD9MsKqzjP8QvnnQsQE5KmQNvenLCTLKlvSXQFdn/Np7B3om7vw+l6yz8Ng/xfa26 pXpw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812427; x=1789417227; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=DZ1+6YkyruVGAe1XdJ5/MYgdff65UG0H/MQQoGU3q/A=; b=Ei1a21NKvNa6iA29VevVisQvUHfEfhlrrs3Ltq4U130GbUJRlN2qE36an4hlrH9U/J KB12ekE7lT/9+CNzWFSvhTtBrMFR/qaH+iu5/WpLO2z8tFVrBMLSpG1rDJxgntNlIoIW Byf6GmTtf+NsWprGeZEWuqWl1d1OWY8HCN7eNjnAuc7NLAPROslnWWiiSHNCrrMteY1q 9C0GZicvxLtKhHOctjPJPrifHRlfz3ARkpeFGOIy9tzURSDEiG98iYMVwIBtHUL/y7fH 8L7wx54RxIFmmvHcZkhwcFqZVelgo3dL574lXmhmlasMbrR2F4Tt0NTwgbJioyH2qIYC nuHw== X-Forwarded-Encrypted: i=1; AKwUvBw2fvb2aybR9myet7A5qjLU6FB9jiSu6VXuPV2+hsJNmxqPu13quecDQ8N9iZiVHzNVYUJxQW+jK0XLwck=@vger.kernel.org X-Gm-Message-State: AFuF++kLa4aK9HluIDX67zZDaYJq+4bp9TPRU0fxISKfYkMWjKUFaYuo Wn6usnDrlmrDjo5GDRD+CW6G4vmfgl7HkKznbUNhL7U/4kmJwPuuwQADsEYEXtrU8yglT4ev2D5 S7mbSJ45X3q37X2S5mChkxugtitZJCWqyefSsIKCAKBfNs8r6H3hRCeR76bRrkg== X-Gm-Gg: AYBFou32qgT08Wj06UafBhQn7YixYEsaDprbiQBpVqa7cavqqW/YShGqwubQGOGxq9x SB7op1IKKnVE4iEXQkU/B0hAJddUNYa+e/kS90IlWq/QZDTROSA16GxbupnE0Q1DMH+CcLARTDn 1V7Zwnw8u37laW0g4Xwiua+L7K9pm8xKQHaUp9vR/0K/xfr9aVboJdtAi+ZdLWpNU2dkvvYAADd MavnPPj29JqiUNE8e1A8Aa4B7Q6h1mslW2zevsPwdWmbla3Xpj+Gsq5JQqx3WLLi5oX0Vlzv5MQ cL7dCPRH8/IA2/GL87AtnXQpL/qBTQXR6Juf4+OQqPBGpY6lJgnO+DoneZ9uoNAJ2W818Zj1iuc DujRhwizynW1l79EwJIThUKQM6jlDoHEN2c4ebN3uCu0= X-Received: by 2002:a05:622a:a06:b0:52d:6c37:6853 with SMTP id d75a77b69052e-5305483db56mr276581941cf.16.1788812427328; Mon, 07 Sep 2026 13:20:27 -0700 (PDT) X-Received: by 2002:a05:622a:a06:b0:52d:6c37:6853 with SMTP id d75a77b69052e-5305483db56mr276581321cf.16.1788812426875; Mon, 07 Sep 2026 13:20:26 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:26 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:19:59 -0400 Subject: [PATCH v2 5/7] btrfs: convert heuristic_collect_sample() to use folios Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-5-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=1718; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=BcX8eAZRyTKOu9anIq4NjYeefUnKsXm3iDN26nTJMHo=; b=gs4Q17e52omuNOjSXOnvvJSvaHUJrhX1NAIyHnz9G84ICSi0uRS80PwzKfTt9PGXV42BB8f3l Rcow9nqNT+RDCMnmO8/6MAs/1G8EQHeIDsu2H2HI+733sgKpXd/TiiF X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX76MUExjOr6uR GhAYuLsbPEVf3f/NoiYmXAot4Gd/FC1W763BsPtV96pSpwD+IxM8oloHMjUQjtbYvIiFKzq3ksZ Ft/wMven0c62Q32wrjvJcBqeqwxGuJaeeix0zWuNyB8gPiRdfsOH X-Proofpoint-GUID: V_osxmMGxbVhJUeZkQqBEuAAm2Hv3ARG X-Authority-Analysis: v=2.4 cv=f+14wuyM c=1 sm=1 tr=0 ts=6a9f1c8c cx=c_pps a=WeENfcodrlLV9YRTxbY/uA==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=svvvyxlR1OQQkelhaPoB:22 a=iox4zFpeAAAA:8 a=Ih-HaCMmXATMOsCFYvIA:9 a=QEXdDO2ut3YA:10 a=kacYvNCVWA4VmyqE58fU:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfXwEDdJgwfiX+B 2xEWGSUUafDUN48NKKjzLpDDL0FDmdB0n2BswVHsS+KWH6HUOdU+T2nB6mykgJ79AY7+4bhdJq8 XeptCvQ897njYDOgj0u66qYoXiOXK3S+q5t3K1XSkr3p93zTRNyX6xBKC/eAb87GBwSrVWbbXur 61Ebr24VjAtFH8bFpUuiMXbadx5upgazvAYudellKNjPqIiOY8oAZxXnBY2oWni6Ieml6v/YKuo dKB3vxpqeWxV3kdyfrPVjFM7tT5EYGuacApxzwvkE8W9Kb7y37yUixUQOpcuheafMCG9FVqu80f 93/HI6+WCMfzR9yUTearfipFxGKkoS1mPjTUo9xBvYJ2cpbZ6llHw/wJuO5RW5iyP4Q4QHGRc0u X0m+O9bO0zzwNAlpaSWLGDMRze29t3VQG7scZM1MhpHQ8jkZ085NhNUKDYLsVUjZ7PgkJsvRGdx VDUK4ZWISxE6KmOz7Ig== X-Proofpoint-ORIG-GUID: V_osxmMGxbVhJUeZkQqBEuAAm2Hv3ARG X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 adultscore=0 clxscore=1015 malwarescore=0 phishscore=0 spamscore=0 lowpriorityscore=10 priorityscore=1501 impostorscore=10 bulkscore=10 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 Convert the sampling loop to folios. This removes the last caller of find_get_page() in btrfs and saves a call to compound_head() per sampled page. Document that the lookup is not supposed to fail with an ASSERT(). Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/compression.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index 979b2ffbd8fc..fa8b92592321 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -1488,7 +1488,7 @@ static bool sample_repeated_patterns(struct heuristic= _ws *ws) static void heuristic_collect_sample(struct inode *inode, u64 start, u64 e= nd, struct heuristic_ws *ws) { - struct page *page; + struct folio *folio; pgoff_t index, index_end; u32 i, curr_sample_pos; u8 *in_data; @@ -1514,8 +1514,10 @@ static void heuristic_collect_sample(struct inode *i= node, u64 start, u64 end, =20 curr_sample_pos =3D 0; while (index < index_end) { - page =3D find_get_page(inode->i_mapping, index); - in_data =3D kmap_local_page(page); + folio =3D filemap_get_folio(inode->i_mapping, index); + ASSERT(!IS_ERR(folio)); + in_data =3D kmap_local_folio(folio, + offset_in_folio(folio, (u64)index << PAGE_SHIFT)); /* Handle case where the start is not aligned to PAGE_SIZE */ i =3D start % PAGE_SIZE; while (i < PAGE_SIZE - SAMPLING_READ_SIZE) { @@ -1529,7 +1531,7 @@ static void heuristic_collect_sample(struct inode *in= ode, u64 start, u64 end, curr_sample_pos +=3D SAMPLING_READ_SIZE; } kunmap_local(in_data); - put_page(page); + folio_put(folio); =20 index++; } --=20 2.39.5 From nobody Fri Sep 25 23:10:21 2026 Received: from mx0b-00364e01.pphosted.com (mx0b-00364e01.pphosted.com [148.163.139.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 597A341C2FF for ; Mon, 7 Sep 2026 20:20:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.139.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812435; cv=none; b=jLxdmhkq09EXtyzHdolxWY/WBXs4oT2/G0qleUVgHM8ezY+plWw4COdoJdR2wiSQZ22Z9vcP7p0ScI7+n2r4lHtxhU+P1cZiiciwL1ewD7+Sg8AWAz5fmZHwLAO3o065qPng8ISWQjWL7aXgxXu4SBbKIOa3/C40G6sp2U/hlkY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812435; c=relaxed/simple; bh=g2CDSqBl/ImGg6f7xVyfdVp8st71N8auj/JHJ7GqwFk=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=cOTEBfZxiNT4/zBdfr+P2UjDfWAr/v3b8849zF8n1aZF3yxJt7TiLFWQ6Da9hoym4lKMu2hRFRn8Pjx+h6xxmkdxX5p/TPIlR/6iY1HpssUPHTiJRu3ImLERCv6YV/d/OZY35tvynKUie0BWfEEcBpfQo9KFE160N/NYK4nu/GI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=fA+em0+b; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=XVDD6eRA; arc=none smtp.client-ip=148.163.139.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="fA+em0+b"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="XVDD6eRA" Received: from pps.filterd (m0167075.ppops.net [127.0.0.1]) by mx0b-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IZZ4J2956685 for ; Mon, 7 Sep 2026 16:20:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=3Q0g Ra7dtg3Hs8zCimh8kJ/W2lm6+Rg5TzjBLCjf9Us=; b=fA+em0+bkZObRq19/DRE UN4XZKGLjycrxEGxHLn4EwjYYncZyRi8Tm5fHbAeia5ZwhfeUvL4shN9NRWUnXZA f/Vkfsezl2P7MZAVDJt+nt7aVkvt3mROWfdT6l87BsmrCjCC9+ZdnT8hhFPQMwVg NECJ2jEjLq5+TYUl9X9GaarYEhLoHnY73emx2GOdKQs54Yi1NzmPXV4jqJTRAV7w ByZdW/HdJTPb+eTA/SMMvCJ/CSlaoAhoakAlprB1G++WDCPIOg/vHj4Yl4aHF3CH CxK2z4ciUI1WPqE/rx/v+ywqyadICx+5J9ph/hdbLHWBfS4VW8LTBQosuvraCd3R XA== Received: from mail-qt1-f198.google.com (mail-qt1-f198.google.com [209.85.160.198]) by mx0b-00364e01.pphosted.com (PPS) with ESMTPS id 4ghf7kwd3d-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:29 -0400 (EDT) Received: by mail-qt1-f198.google.com with SMTP id d75a77b69052e-52ff59f2c47so91168161cf.1 for ; Mon, 07 Sep 2026 13:20:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812429; x=1789417229; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=3Q0gRa7dtg3Hs8zCimh8kJ/W2lm6+Rg5TzjBLCjf9Us=; b=XVDD6eRAkkyA5wRvNI2b8OkWCEDuvN5dFNHUIO6W4gc3bgMNzTcbn8tcsANoSd29D+ lB41ZAsTjb7NMZCUJ1jOR6Urt7zT0fTeGIzG3NPKHG/TT3Oso9/UAOm60nZUmECOz703 0AAFivnWLL7tnjQ9hev+yaW33mLdRrYQJWeZGGLvUVnlaRPT77YVxiX4oWFtDKyB8/Jy coCF0/u438eEsksFTLXX7cCX2p8GnYSvkcLSFNlDHK75x66LbqvQIhD6bxLS9wd8BSJ2 kfcMU+CHWT7Vk0gzMMFQB6P9dGPj9wL4x19ptCGZhkkDaRRQsmxnjAN8p5AQReJfqWbV uDZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812429; x=1789417229; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=3Q0gRa7dtg3Hs8zCimh8kJ/W2lm6+Rg5TzjBLCjf9Us=; b=mxxOx18jqkESw+8FtnNxTmWYCGYUR0OFSX3Uele1WrFhb+GwRBrOMu6QWCT83YiIcd gDl8WDAuDSmHUFvwkAfl0u0+rFLbDBk9jhBj2+Nhi6MsVCwAzSkBnmz7E6wGuWQfYCd/ aZm9vZm0azwvivIZssgGlDM3QFBgfqE9D3rMgsqudxn5she3IdrWH8IgK0qmtf2V+Apr +GXELUEBdE/iVh9ZroIf7jCfkobRNIxKm5v0tDL2J8xS5YQmhQzQW9X7aZPGH3evh/el QvfcGZo956+AN/zfE33Nc8pJzn5FYkpLY5Yy8gjqWMdnsFlGO76pkbt1ZdyJXzZzONcT 7xiQ== X-Forwarded-Encrypted: i=1; AKwUvBzjdBvTjWScdJjt67PyGDfL97eGBu6As/mkq2I1vr4HJqkZTittdDKgA3aEsLZU+IhnjOD+8H5TmhMojhs=@vger.kernel.org X-Gm-Message-State: AFuF++nyL1azgWMHN/RuP1ZZ6BydNO+CeU2jjtEupmry5NOqAFjP/4qO anjA6yec5wKgf2kfQG5Vv81gbRHWsINLDJb56kRBfpbYTpPiCSePs9i+3xjIeBmcR/ll+h/oLOo CCIvgMcIZ3rMJER6VLme8FCC6ytgpAdj70TQj5kcU2nTWUwR5n2+8d4f8UAoIJQ== X-Gm-Gg: AYBFou3NHgM95G2r4w+wZJHQHU4o668nC2cdAp/x0D7Aof7n4zFR0GPwVXRk47Q2Cis dreZQ+PyT1CPEWhyLNFPwbYnAkYOI3pyWAKG9vIADL2iWJJAAf44Vq9mczre8Zr0kUbUVZ17jvh MY3GaCHbvS2QQpOwo3S+t9NNKHXl10drKIVpknF9dKWGePYXhrjRfIgGylTlEgbWpZ28A9X6Gs8 UEy8IKNXPJOvvchTTFlba6Cm3D5ZSt/BnjTRCffu5OicdNR6MwN7YTxUPRYQOxOOzLS2nboVNg3 v2KDlRpwkjaajE4AM47AXRZWmHsLGS6gqXPNvUAJ2GQ9OUQh1wfQneChcKYrzK4UVGiVGvIBXK/ jtFMxy5CExI8jOltHUX5a4atyO8Tf6R0tdOVt/gyItpE= X-Received: by 2002:a05:622a:1f98:b0:530:42e5:f39b with SMTP id d75a77b69052e-53091348827mr40841371cf.23.1788812428378; Mon, 07 Sep 2026 13:20:28 -0700 (PDT) X-Received: by 2002:a05:622a:1f98:b0:530:42e5:f39b with SMTP id d75a77b69052e-53091348827mr40840811cf.23.1788812427764; Mon, 07 Sep 2026 13:20:27 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:27 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:20:00 -0400 Subject: [PATCH v2 6/7] btrfs: fix stale function references in compression comments Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-6-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=1315; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=g2CDSqBl/ImGg6f7xVyfdVp8st71N8auj/JHJ7GqwFk=; b=QGa2pMLlpq+DSLcMk7QnBSVbClmGfxhOaq3KwEPUvhHGJBO8hnwiP7nn1EEEYTU0zV66FhgYy NJYxeH3zc+/A0xk5FJjHdOAyFQ7lGYHoBhiRuGPHND5nM9WpoQWNjlV X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Proofpoint-ORIG-GUID: CfSelVj6DqRSCo-aB-ohA9pXzOZCw-O4 X-Authority-Analysis: v=2.4 cv=RrD16imK c=1 sm=1 tr=0 ts=6a9f1c8d cx=c_pps a=mPf7EqFMSY9/WdsSgAYMbA==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=HpS3TJQ9O3Ob1ozEcmik:22 a=iox4zFpeAAAA:8 a=wS94dJsgKqXJMQyBkfsA:9 a=QEXdDO2ut3YA:10 a=dawVfQjAaf238kedN5IG:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfXyAitDItSPOoq 3tjyAukgHajS2gIlhXF5GACUkuIzHEBx1iEIQ0KzMLi7OfDChKXedlXgo2kEIaqkYosItzX4lHS YpMT14eJn+vy6AgsJT32YbaBC7Y7jt5+3JpY1nWBWr0R8FUgBh4YEXWzqtPaAN14l/uoNZkYcuF etqetrHExQ3lOUikHEsnEqppvtuLs1Rhqk/RL2cYnuQveP6CYTMfItDql0Q2MyjKSo3QlnJpvIc aH3tdQwceTFvHEGWEbgduFt7CJWMxSGDvpNM7D7lxhevRh94N+Kq0i0pErqPXTgZShfTOopCfuU jeZtPOrIelC8eA0V+GFRhpAVwz5BKp3a4QYRxHDMJ/SsjAldO9YwWoYUiZdvMJBoo7fXqYfkqxB jG//sgEDZIw6p9vcZjAKCNbNTpmP9PNyIL65tdO/RjsurmqfoLyEKAIArPJFFBXawsS6pdOY6rF HoUdz8moayyVDnfK0+Q== X-Proofpoint-GUID: CfSelVj6DqRSCo-aB-ohA9pXzOZCw-O4 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX2Gn6mE7ptaaW 0TWKZYwBaunnihBWRETnsBkp+GQnj26NL8OKyn0DyWD+Rz/qgNvjm3VqK/uaq4HkIGMuZSeFQW5 P6gzzh9+YN8KzRizOj586/c4zFvEUwyUc3IsLDNYRadpyAnhmHrn X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=10 suspectscore=0 phishscore=0 bulkscore=10 priorityscore=1501 adultscore=0 clxscore=1015 malwarescore=0 lowpriorityscore=10 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 add_ra_bio_pages() was renamed to add_ra_bio_folios(), and btrfs_compress_filemap_get_folio() wraps filemap_get_folio(), not find_get_page(). Update the comments accordingly. Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/compression.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/btrfs/compression.c b/fs/btrfs/compression.c index fa8b92592321..20169d028961 100644 --- a/fs/btrfs/compression.c +++ b/fs/btrfs/compression.c @@ -431,7 +431,7 @@ static noinline int add_ra_bio_folios(struct inode *ino= de, u64 compressed_end, } =20 /* - * Since add_ra_bio_pages() is always speculative, suppress + * Since add_ra_bio_folios() is always speculative, suppress * allocation warnings. */ masked_constraint_gfp =3D mapping_gfp_constraint(mapping, constraint_gfp= ); @@ -960,7 +960,7 @@ bool btrfs_compress_level_valid(unsigned int type, int = level) return levels->min_level <=3D level && level <=3D levels->max_level; } =20 -/* Wrapper around find_get_page(), with extra error message. */ +/* Wrapper around filemap_get_folio(), with extra error message. */ int btrfs_compress_filemap_get_folio(struct address_space *mapping, u64 st= art, struct folio **in_folio_ret) { --=20 2.39.5 From nobody Fri Sep 25 23:10:22 2026 Received: from mx0a-00364e01.pphosted.com (mx0a-00364e01.pphosted.com [148.163.135.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E752C37F8A7 for ; Mon, 7 Sep 2026 20:20:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.135.74 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812435; cv=none; b=gH5ezL2p21uJOi7PUA+HGqrxNd5YQgzlD8ApJb3fVRIzvf0/LUyr4/1cqgh4m26a8s0QDVFTNrZYSQVk8ok6d8HilvmZqHzcDXv/tNDGGvOn7vbUao4275x8+GZy1dim1m7bjUWfJAS2THO9KAmAkYVofwsjB4Q/v6qLP3GCH4o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788812435; c=relaxed/simple; bh=RYBxJl93h958FQK8RkWgp+MkOua/aYnCMeTqxN34xTw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fg40ijf3Nux2lWwESI3Z9B8X7Imqko3BAiabgbMZdYpgSCxmDq5/QLR74c6mDkoVSQA3do1XFrramlOLvGXVbEf46eKWn54GaL+PGTCbHRelgtL+l7SaTuq0N3jSmJnBAf4c2uEOPhZcqk1QHmeZhIrYmFlqqwKggIMH6Pt/YuA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu; spf=pass smtp.mailfrom=columbia.edu; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=F4RN1cb8; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b=W8zfx/Tw; arc=none smtp.client-ip=148.163.135.74 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=columbia.edu Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=columbia.edu Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="F4RN1cb8"; dkim=pass (2048-bit key) header.d=columbia.edu header.i=@columbia.edu header.b="W8zfx/Tw" Received: from pps.filterd (m0499199.ppops.net [127.0.0.1]) by mx0a-00364e01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 687IYNpp2798233 for ; Mon, 7 Sep 2026 16:20:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pps01; bh=w3o/ sHf38x/eQVx++9WePfix9UGFsLhy3c0Xy3Gsc0g=; b=F4RN1cb8mQLXP7aUaDV7 yFGepUAn85Mn6TThwnkMl8J7V69TIKaHmqbzI9kxrDSiDhrSD7OLmUEIeWOtH/dF AHCYERrCv/9dx2dQLbamSmrq7Iw3ow4cufGWUYewkys3S7Bil0F+L9M+MP6WOutN YeLeVjkhmcRo9AA4os4ImoaYgRbWT4cDlefs+PMr6TjUvSRLb+1k34KMU0ePq8rL JCmHVn67BoppIJOc8a2O38ogh2Tmf14vN6bC9zbQdut2FDKlR20AgKbR2ihQRxGv h7Ni2qXdvACOK4qyzcvS60S9q9MbHXzOaN8dsPmGd6JbjH+2clqD2ooUumH4oGqH Zw== Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by mx0a-00364e01.pphosted.com (PPS) with ESMTPS id 4ghwvraek0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 07 Sep 2026 16:20:30 -0400 (EDT) Received: by mail-qt1-f200.google.com with SMTP id d75a77b69052e-52ffe24490bso84895781cf.1 for ; Mon, 07 Sep 2026 13:20:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=columbia.edu; s=lionmail; t=1788812429; x=1789417229; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=w3o/sHf38x/eQVx++9WePfix9UGFsLhy3c0Xy3Gsc0g=; b=W8zfx/Twx0H7+yLTcHQF5WBQR4FgpkjB2Wy6j6qQZXtbXQCPUenGN3Qu+BLg+iaD61 w8GM29v/Gzg9iNVC0VP6zPa8nK0LiDI6sxczj5zjRS5M3T96/bTMcT9at9qxKwcBSguW ObFcJMcPel3yoasjjOrT+NVwjNnPX4l110qXW85G5DXqhJ78RAeRrFaEALpr/3D6S8XB biXTBdZC/umDTqtSuaXVCes3xCuC1HAxSL/nNa/qg+yg2b5ppYLA3Vlo8YU3AWIHy0x/ GMMwtKEYBBebWb1dOGQxyjzOr6RSItjWo6JYNQX+XNRkozgZEm89k3qWp9G6NUxaMV/g Hpzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1788812429; x=1789417229; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :content-type:mime-version:subject:date:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=w3o/sHf38x/eQVx++9WePfix9UGFsLhy3c0Xy3Gsc0g=; b=DXBw9jz53uKq5yAQyhrkpwkBvCedXeZAi3ghf7kZlFXE3UB7HIum9heR+IlLLmB3FE 2QLjJDYJXBrTMMzIbe66azISmHUI/2sWvcfSrI921JLR8ddwvozlLEM34WtXIfZqbjXY pRRIQkA9+t50dfJANCg5k4maG374JYsDZjn+lJ57L2VN2uG7khB3Uw63DuLbmVVwUhYZ UA66oBuM89M52KdnANikJ6OMFF5LFIPKiImoGuzpHCBJVnUYbfgefT0kDbeD7MKtnIyT gvv/zuMJtvwpQM2dQCArnZuQsGBtFRzlltnmWzrezwcisn/FR7OAysbldPgcdfpoWvqu /u5g== X-Forwarded-Encrypted: i=1; AKwUvBzSkDoyZe77uCBCi+2Hx+ZMaL7bZdAQMbBuDUyEdn2FXQuYiDXJfagxSrlFTGCJCJlZA2u565iHbAFJVKo=@vger.kernel.org X-Gm-Message-State: AFuF++mD6qMpfst+EncMD8Actdr4FgDKglcLxgZ1owDcSCgbaPY/9Atb oI6Pz/tyYyA8jPXnnIXhM1ZRJ1YOVM92mMmK+cEfRkKW1wEuVQvHDO7TM/Z9cBRGu0lsXob9kq0 DUEjhLSMDsXCI3oMWR13NKUHCto0hOZNjx2rTEUdO4JrPqD5xI8OmtrN8PwtzYQ== X-Gm-Gg: AYBFou3Ap3D/ntJyn1/VU8HZJ4ooE437AhweD1/qgAc81bBxMgnyX2xjZ+3mriuhhPt TaaLzzC2gRO/iWS9NvhrtSmB9g9RXvOnUguFsoVVX90lfJwVO01gLrugDg/LQ7eyS9obJ+Kh1Hk ybNfkLGBkmkGHItY4oj/qizlj3DaTATlTwTnhnYfkbVZbg0042XcQztwkKhKhODTp1WYqj+gPVu 9CKLQZzcaMl+IT8+dSP6jFy2Fp9xO853eVIDkWhrDg1t9ziDFbepMrUzvQg2/nk9Ohen2u1kDJw +a/ksiz7Sm9AXi60NdhliKdkXVJNu/p+24oIp2SuMXh4MUEp2zqs1U4Ghaklb2LEv/JFO3xBV2f HoGls5EB0whpWw2+shRMHbWpqe4UNG6BRMRKw1QN/c8M= X-Received: by 2002:a05:622a:c84:b0:51b:f40b:2fb5 with SMTP id d75a77b69052e-5305482a9fcmr267886251cf.17.1788812429138; Mon, 07 Sep 2026 13:20:29 -0700 (PDT) X-Received: by 2002:a05:622a:c84:b0:51b:f40b:2fb5 with SMTP id d75a77b69052e-5305482a9fcmr267885621cf.17.1788812428647; Mon, 07 Sep 2026 13:20:28 -0700 (PDT) Received: from [127.0.1.1] (nat-128-59-176-3.net.columbia.edu. [128.59.176.3]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5305413ce9dsm95062351cf.11.2026.09.07.13.20.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Sep 2026 13:20:28 -0700 (PDT) From: Tal Zussman Date: Mon, 07 Sep 2026 16:20:01 -0400 Subject: [PATCH v2 7/7] btrfs: use folios for reading super blocks from the block device Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260907-btrfs-folio-conversions-v2-7-b5fe79f7607b@columbia.edu> References: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> In-Reply-To: <20260907-btrfs-folio-conversions-v2-0-b5fe79f7607b@columbia.edu> To: David Sterba , Chris Mason , Qu Wenruo Cc: "Matthew Wilcox (Oracle)" , linux-btrfs@vger.kernel.org, linux-kernel@vger.kernel.org, Tal Zussman X-Mailer: b4 0.17-dev-db0b7 X-Developer-Signature: v=1; a=ed25519-sha256; t=1788812420; l=3888; i=tz2294@columbia.edu; s=20250528; h=from:subject:message-id; bh=RYBxJl93h958FQK8RkWgp+MkOua/aYnCMeTqxN34xTw=; b=hz3WxTt80OAC0IjpP7autduLptHKjPXS6RtlplpD91GKIqF8ntxt0EezJrokIwP4pHx+TjdKF vcNcXO8TVCGCMVQmGB5C6brWo9z13UFaVIMOM92ZfrvsDK6DaaYlwF0 X-Developer-Key: i=tz2294@columbia.edu; a=ed25519; pk=BIj5KdACscEOyAC0oIkeZqLB3L94fzBnDccEooxeM5Y= X-Proofpoint-ORIG-GUID: DvZRr6AzvloIL-v-KnRw2VIb8JeKIr_j X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX8fD2lJm60Hqh BhteA8d4V3Tku2cKddNmf1+kp/gbkWNAdVrXPbibyWUAys20/gOMS/vs13l4OwXfLxmzAZNI47k 2vfRvS/6bEoOWwRYaHvgtcnJYwLLGigLV7aCFYhKB1e7BK3dpYCg2s+s7CPdRInsxTDwA+m7g8B JT+9MjsRdzM0e+Ez+rawKu6u3JfgXwuoRRCNXbyhIUiaQZJW6AbhSQzGPGNqzgEkUDNEH9fH3Rq GyS0p2aAxX+BqLHe1bV7b+WUQIsAvHm9/RDqXVK2iULnFRAju6dZaHAb0PsZFRHQ23+YPrmPTvf Fo80U0zrjHSkXZnvRTLCmB4LukkY8jJ0Pf7LXUuiO87bMti40mZNfpw0K/CTC1RJfXyp/D3Uvh5 OPUaMat+z8XzY4rCKiYOFu6yNAoBk7dRb5/v18w9sQql/NKNwh7QIKA6FHlbNRoswFaxzI/Ziy7 vlYI2eus/mXpAAOEyvw== X-Authority-Analysis: v=2.4 cv=RP2D2Yi+ c=1 sm=1 tr=0 ts=6a9f1c8e cx=c_pps a=JbAStetqSzwMeJznSMzCyw==:117 a=92j1mJcILCjWExuphHMrQw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=x7bEGLp0ZPQA:10 a=A0y_DWxS2BwA:10 a=VkNPw1HP01LnGYTKEx00:22 a=Da8U98TiO7q1upZEImrf:22 a=G--0XuH5328wxK7v7Suf:22 a=iox4zFpeAAAA:8 a=C-EEzzuqgLcvSd4iXwIA:9 a=QEXdDO2ut3YA:10 a=uxP6HrT_eTzRwkO_Te1X:22 a=WzC6qhA0u3u7Ye7llzcV:22 X-Proofpoint-GUID: DvZRr6AzvloIL-v-KnRw2VIb8JeKIr_j X-Proofpoint-Spam-Info: AW1haW4tMjYwOTA3MDIyNCBTYWx0ZWRfX4rNd5spxQlNv V0UP9j/QZ67U3yDipbpzz1Let0gPsMlZ1qxh632KfainJlaO1sxCgRvMOC3RY4sCtWInWTwQYNq a9PmhAArv4g8FrgtbOzryNuXklEybAbrsPjZ3A+UhG0kHsj4BnM+ X-Proofpoint-Virus-Version: vendor=nai engine=6900 definitions=11899 signatures=596817 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 suspectscore=0 clxscore=1015 adultscore=0 malwarescore=0 impostorscore=10 bulkscore=10 spamscore=0 priorityscore=1501 phishscore=0 lowpriorityscore=10 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2609070224 btrfs_read_disk_super() and the zoned super block log comparison go through read_cache_page_gfp() and page_address(), and btrfs_release_disk_super() recovers the page with virt_to_page(). Use mapping_read_folio_gfp(), folio_address(), and virt_to_folio() instead. This removes the last callers of read_cache_page_gfp() and put_page() in btrfs. Compute the super block address with offset_in_folio() as write_dev_supers() does, rather than assuming it is at the start of the page. Assisted-by: Claude:claude-fable-5-1 Reviewed-by: Qu Wenruo Signed-off-by: Tal Zussman --- fs/btrfs/volumes.c | 16 +++++++--------- fs/btrfs/zoned.c | 12 ++++++------ 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c index 949e40baff33..4ddabadc9188 100644 --- a/fs/btrfs/volumes.c +++ b/fs/btrfs/volumes.c @@ -1327,16 +1327,14 @@ int btrfs_open_devices(struct btrfs_fs_devices *fs_= devices, =20 void btrfs_release_disk_super(struct btrfs_super_block *super) { - struct page *page =3D virt_to_page(super); - - put_page(page); + folio_put(virt_to_folio(super)); } =20 struct btrfs_super_block *btrfs_read_disk_super(struct block_device *bdev, int copy_num, bool drop_cache) { struct btrfs_super_block *super; - struct page *page; + struct folio *folio; u64 bytenr, bytenr_orig; struct address_space *mapping =3D bdev->bd_mapping; int ret; @@ -1357,7 +1355,7 @@ struct btrfs_super_block *btrfs_read_disk_super(struc= t block_device *bdev, ASSERT(copy_num =3D=3D 0); =20 /* - * Drop the page of the primary superblock, so later read will + * Drop the folio of the primary superblock, so later read will * always read from the device. */ invalidate_inode_pages2_range(mapping, bytenr >> PAGE_SHIFT, @@ -1365,12 +1363,12 @@ struct btrfs_super_block *btrfs_read_disk_super(str= uct block_device *bdev, } =20 filemap_invalidate_lock_shared(mapping); - page =3D read_cache_page_gfp(mapping, bytenr >> PAGE_SHIFT, GFP_NOFS); + folio =3D mapping_read_folio_gfp(mapping, bytenr >> PAGE_SHIFT, GFP_NOFS); filemap_invalidate_unlock_shared(mapping); - if (IS_ERR(page)) - return ERR_CAST(page); + if (IS_ERR(folio)) + return ERR_CAST(folio); =20 - super =3D page_address(page); + super =3D folio_address(folio) + offset_in_folio(folio, bytenr); if (btrfs_super_magic(super) !=3D BTRFS_MAGIC || btrfs_super_bytenr(super) !=3D bytenr_orig) { btrfs_release_disk_super(super); diff --git a/fs/btrfs/zoned.c b/fs/btrfs/zoned.c index 08a15465a087..a1ef8caaacda 100644 --- a/fs/btrfs/zoned.c +++ b/fs/btrfs/zoned.c @@ -123,24 +123,24 @@ static int sb_write_pointer(struct block_device *bdev= , struct blk_zone *zones, } else if (full[0] && full[1]) { /* Compare two super blocks */ struct address_space *mapping =3D bdev->bd_mapping; - struct page *page[BTRFS_NR_SB_LOG_ZONES]; struct btrfs_super_block *super[BTRFS_NR_SB_LOG_ZONES]; =20 for (int i =3D 0; i < BTRFS_NR_SB_LOG_ZONES; i++) { u64 zone_end =3D (zones[i].start + zones[i].capacity) << SECTOR_SHIFT; u64 bytenr =3D ALIGN_DOWN(zone_end, BTRFS_SUPER_INFO_SIZE) - BTRFS_SUPER_INFO_SIZE; + struct folio *folio; =20 filemap_invalidate_lock_shared(mapping); - page[i] =3D read_cache_page_gfp(mapping, - bytenr >> PAGE_SHIFT, GFP_NOFS); + folio =3D mapping_read_folio_gfp(mapping, bytenr >> PAGE_SHIFT, + GFP_NOFS); filemap_invalidate_unlock_shared(mapping); - if (IS_ERR(page[i])) { + if (IS_ERR(folio)) { if (i =3D=3D 1) btrfs_release_disk_super(super[0]); - return PTR_ERR(page[i]); + return PTR_ERR(folio); } - super[i] =3D page_address(page[i]); + super[i] =3D folio_address(folio) + offset_in_folio(folio, bytenr); } =20 if (btrfs_super_generation(super[0]) > --=20 2.39.5