From patchwork Thu May 2 08:45:59 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kairui Song X-Patchwork-Id: 13651429 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D72D9C4345F for ; Thu, 2 May 2024 08:47:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3EA986B0087; Thu, 2 May 2024 04:47:25 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 398F46B0089; Thu, 2 May 2024 04:47:25 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 23ABD6B008A; Thu, 2 May 2024 04:47:25 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 03B446B0087 for ; Thu, 2 May 2024 04:47:24 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 60378C0CD0 for ; Thu, 2 May 2024 08:47:24 +0000 (UTC) X-FDA: 82072826808.18.F1C6029 Received: from mail-pf1-f181.google.com (mail-pf1-f181.google.com [209.85.210.181]) by imf22.hostedemail.com (Postfix) with ESMTP id 8DED9C0003 for ; Thu, 2 May 2024 08:47:22 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Gsvv5I9K; spf=pass (imf22.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.210.181 as permitted sender) smtp.mailfrom=ryncsn@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1714639642; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=dKeW621Yklmzy6NXiq7Wct3/1VaKARCv12uVKwULRiw=; b=0xUxRcoHWY2I5qWTmCp9yI3EJxDzyAAc0BZ21+nwRDRSnPN6DfE3lGRFf/quA81rbUYUJl CI4wS+i6AWmZ8sP2+pWf/qslO9/iafI4DIIxoolEJ3Rkv4cL5n5qs+i+NyA4GRxDR6YBu2 irGyWk5vcqYCPJGTxzsBcwKBjL/vwZA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1714639642; a=rsa-sha256; cv=none; b=NCHGCnufmrZawdbc/tEHyc5+e2EXRwP0nyMLAffNOLnHDwpWpACdb40s5ojF+GcGKRT3VZ xDSKLubKFFvzc1V7cH5pn54hhBJ4Q+6IfYJyE5/d6H9qnU1LbcISEpv7auQ+SrxjMGK1pI EHmvDs+u7QmwSn7WcM0ASqY6VbmWsvA= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=Gsvv5I9K; spf=pass (imf22.hostedemail.com: domain of ryncsn@gmail.com designates 209.85.210.181 as permitted sender) smtp.mailfrom=ryncsn@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pf1-f181.google.com with SMTP id d2e1a72fcca58-6eff9dc1821so7070399b3a.3 for ; Thu, 02 May 2024 01:47:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714639641; x=1715244441; darn=kvack.org; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=dKeW621Yklmzy6NXiq7Wct3/1VaKARCv12uVKwULRiw=; b=Gsvv5I9KV6RLx82P1l5vah/SVxOZeh/3M0ck4MB1gPaArwRq4wHddUskRzA/rDSsNl wC4vfdC+MfjnDNWG/LzQ+9HpLg8AKu8RVPozAK4L8iggdjYlJblw2rZaGplNtWgXO3ma yb634upBvDFCfv7802DjfIt2AfwWpr3a28+CKW5BFJCFqeoPiXYWj+NVue0wKzlsphLA w8mCPmqzCFSvjhA+MbdTf7WKQc2Wi95wP4th57PUYxqwnECrVXLF/lj8avbDgLYhDJ3X mn5Zlk3G51IldcDxZ17LzvHj0BtxAjhUYW+rvRJOolN4CDmqJguMkZMJnqW8aVsgr7yl qp0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714639641; x=1715244441; h=content-transfer-encoding:mime-version:reply-to:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=dKeW621Yklmzy6NXiq7Wct3/1VaKARCv12uVKwULRiw=; b=KA4hvSoOVfkOoGfZWrywlpLMq4M0C3Vg9uF7aOogKLui0Y+vFnD/M5ISYZs9EeykkF N3gbA310Nf4sku4yc5+pviR3GqWRnqsVEnijRylZwqX9jGCRBs0Pjm82R+RPj/iBlu3u wQLALszFr20vaDzn/FE41gZ2RddnsP8TD8DQETb7y/I4cdG967M3oIzCPcCcfAeGaRII sorxNS4rR9tqyer4pZOQnWZ5jx9ZagNmz3aWGm4Na9v4JR5Eap8KeHN97OxEI56W/L2+ XVmPOXtb43ty0TWNhKdTP0AGcRkX5KB0Ez0G0F2IQo+0Kaybfjtueq+0vbN18m6L7X77 9SVA== X-Gm-Message-State: AOJu0YzoNS/TuKLF0xWFFOaJvuXOBDK/So/ZbyQXtCfO8dv0yEv5BHl9 pYAUPv+eHZEMYmfc7QxPQvYhdF89ZJhV/UhFOd3inJm2fWbg5z72juxQyCDqDCk= X-Google-Smtp-Source: AGHT+IFw7DPiHNZRifdJPZ097xuBBnwfxycsF06NxKzZyaEaRqiuEdjNax8xBn+KkdLO8zdGBCA7rg== X-Received: by 2002:a05:6a21:338f:b0:1af:66aa:f968 with SMTP id yy15-20020a056a21338f00b001af66aaf968mr6570426pzb.20.1714639640628; Thu, 02 May 2024 01:47:20 -0700 (PDT) Received: from KASONG-MB2.tencent.com ([1.203.116.31]) by smtp.gmail.com with ESMTPSA id q6-20020a17090a938600b002b273cbbdf1sm686805pjo.49.2024.05.02.01.47.16 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 02 May 2024 01:47:20 -0700 (PDT) From: Kairui Song To: linux-mm@kvack.org Cc: Andrew Morton , "Huang, Ying" , Matthew Wilcox , Chris Li , Barry Song , Ryan Roberts , Neil Brown , Minchan Kim , Hugh Dickins , David Hildenbrand , Yosry Ahmed , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Kairui Song , Ryusuke Konishi , linux-nilfs@vger.kernel.org Subject: [PATCH v4 02/12] nilfs2: drop usage of page_index Date: Thu, 2 May 2024 16:45:59 +0800 Message-ID: <20240502084609.28376-3-ryncsn@gmail.com> X-Mailer: git-send-email 2.44.0 In-Reply-To: <20240502084609.28376-1-ryncsn@gmail.com> References: <20240502084609.28376-1-ryncsn@gmail.com> Reply-To: Kairui Song MIME-Version: 1.0 X-Rspam-User: X-Stat-Signature: mmgwsq68tds1r5rn31xyarxcwfz6d3ub X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: 8DED9C0003 X-HE-Tag: 1714639642-985444 X-HE-Meta: U2FsdGVkX1+NOQirBpd2Oc5GTxFTLJm7lpwWdfXOP7YwsZvKxClcc6Erz9QCGYf7T+o3N2B2x5fpR1GDMESBMkGy6+d8cyFRGgFh/nIcE4mD6jpaUvC9EX19lNg/JAgC+C6pgOY2STyW8CT5W9b0eeTE/S1hZiwQ0/PW+gHkcqipqPPfZdgEE6DxKq/QA7uPU+1qoMX64rxLQFaVmcPvkPX2NjO8WTHlDxFurPWQpwmj4IT3L/Lr8POw/CUeK2bX9odEh5cIYUxCNRp7u5sNU+/GkDWZJFlr6qeM9WZIirrMTqzQoWYm2OPfLm5ICmM7BDNEpN5QByoOpnoKwvoYQyAzbGH2msxWtAWW9V8VNyD7WiG/xxfFSvby1ku8UlzDVehuSzjMMmbKhwaLrzuqwwNeE9fZ4zqZVgu1AlNG7LIDxzTol8NsrRTndKk3iBtdyj0akVz20KnXUFGC6tS5glglkpudMRh9iOAMlk7oBj82x+G16Svtm7MxyAzBZrx6xUgXu1Y4s/RPAAJ687b84Q8sKfWkbSj0EvWUh1scmf6HPXkdTilkDPlcfwz6LYJccG9MaTFKDKHrXClEQAuPMr4v0S54xKryAklzajbKMPBGMUO4YN5VRaAHVfu7eTBWuGR/vFKTwRcXnecFW1g8RND0QtrnXn9CF0ttgeLWfob8A1o31TQW+kd0IbVTMEdrKb5BR11nHvsOUTRFgEDGO//7R20J9KOfHBVINrsItCZyzf2VOBaKo0kam0dK5/gNQA/sk3n876qdAa5wtGV56la0cBrB3XFAPmwQ7iqhcDkSvOQkZgXuk2VdU3e5yV/r1Ce2bhu8wX/OX9rMMtTcNOPhUJOG7j8/LpJGalqp47b5ofThyhlL9q/sCnbFX0/JhKqM2WgzHuOhmUywiLJRCDPdZV/acVpb/j2z8Qby5ysGmeLTjfOqcV4ixXYp2WobR7Ha4OSTP5mJCPONKKQ XC4iwN99 hseZqVZTeG2VE2uAeUUXW7yHehFZwDzdJrUi7rvTemdTROtNoK+PAISgrmkB3fN9LPq4SNyJyK+CJOfY9FzmhG8+ZzH3HH1dUXq8KGk7JoxW8IAqFUjnj82RETg/0/b5nvVkaxp6n9PoJrF6B2KQ1YQOeK+dpRa1PpkfrBQJTknvgNI1INjx52mZxBZtNRunhUuCu88mleGARzk9LXLja4xZCFM+bhwqiHhpFxSlUUvlDLmWsEN0oURFIrs24Qycg/89+nzv7816C78a0YwgMdLaW1tS8X/fhNHIUupA97lvHdn67kPiDiTSqkqDI15GfYplY/TgCoS/6rPQNSkfgpmhzt+Cm8XQmaJjlG6jRh7L81ZZt6gLCReqUacnHoiccIann6+lc1cCAPLcnfAmyJ81vyCEyS6Xg9oc9fjUOEHXfezcFJA6XruT5NgCmAgbUmXXEKQ+YjLqXVIH3Pt9tevTz2OsdAOCfZ4K2jID7kFRxVxZK4LL+LzIrb/Dqdj/Yb4TF/7L+Sx1UBkzG61FXpPUV7U6HB1q3TGjx0xuPTd4Zw3nOg6+CvlFTx9eFHucpsg5QuiZjAo9+CsVoxel/pYqChTW5LkbnFYQlXnSFY472rKpUeSiRStnp92ReXnrbNAE25362EYds4vzzrCmd9PQUsZyskPnqtZRg1VimxzXYkBfHudzU5qxU3bePiMDo5eojv+uHp7vYk28ttSStqE+wXhaYpU0YiPr6ka4UeH6jz8VxzrTcHwLv8T29NnLmOqTAQ0CjL3dU1fy4+Z+qLFEFEQIHC0bOTjhkdG0MEhjKjdabABp8pqGUKC9Q0Tx3a0rOzSoYBcvuwxMdP+ZLJGfXK8PZtP5SI1OSw+OMAI2qkJQ731KqewFsq0JNcNRddGBp X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Kairui Song page_index is only for mixed usage of page cache and swap cache, for pure page cache usage, the caller can just use page->index instead. It can't be a swap cache page here (being part of buffer head), so just drop it. And while we are at it, optimize the code by retrieving the offset of the buffer head within the folio directly using bh_offset, and get rid of the loop and usage of page helpers. Suggested-by: Matthew Wilcox Signed-off-by: Kairui Song Cc: Ryusuke Konishi Cc: linux-nilfs@vger.kernel.org Acked-by: Ryusuke Konishi --- fs/nilfs2/bmap.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/fs/nilfs2/bmap.c b/fs/nilfs2/bmap.c index 383f0afa2cea..cd14ea25968c 100644 --- a/fs/nilfs2/bmap.c +++ b/fs/nilfs2/bmap.c @@ -450,15 +450,9 @@ int nilfs_bmap_test_and_clear_dirty(struct nilfs_bmap *bmap) __u64 nilfs_bmap_data_get_key(const struct nilfs_bmap *bmap, const struct buffer_head *bh) { - struct buffer_head *pbh; - __u64 key; + loff_t pos = folio_pos(bh->b_folio) + bh_offset(bh); - key = page_index(bh->b_page) << (PAGE_SHIFT - - bmap->b_inode->i_blkbits); - for (pbh = page_buffers(bh->b_page); pbh != bh; pbh = pbh->b_this_page) - key++; - - return key; + return pos >> bmap->b_inode->i_blkbits; } __u64 nilfs_bmap_find_target_seq(const struct nilfs_bmap *bmap, __u64 key)