Received: by 2002:a05:6358:16cc:b0:ea:6187:17c9 with SMTP id r12csp2704730rwl; Fri, 6 Jan 2023 09:51:38 -0800 (PST) X-Google-Smtp-Source: AMrXdXvqWCw8JZWQ13D+mhah0q+ZxtkUKhuXXvWAUhy6HpS584f/60Zul+1SvoQ7a3jXgRhM4MDs X-Received: by 2002:a17:907:d50e:b0:81f:fc05:2ba0 with SMTP id wb14-20020a170907d50e00b0081ffc052ba0mr48201617ejc.2.1673027498495; Fri, 06 Jan 2023 09:51:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673027498; cv=none; d=google.com; s=arc-20160816; b=LDQiIPyN3RW+vRxJTKEw2wN5Vho9LOaN31NGTT1xJ7qAHcGhOHCCp8LhO0ypWcUiSx Lj8bHND8EX/IdOz8WGQWtfZI/qNVQdDmlzSbdXPYayLsk41QpkDFJ1uHlFz929jl4a7R iXxYvx5QBJmPXe0J+eKzKJGMxtEyUsTYuer6SfYL6bxWD98cB8nELmr317PFakkvsmLq E6EHn1OuxEhlbs3wQlB4i03oCKsz5WmJ5TXOMg5yW3wCL1MoEf6lZEmegCHTM31Gw0Ez VZiu0+EQnWzUHioSfMkEAH6Zc3eyTJnoDtJNFmFGugv6ONj1WGfMeIszbj5g+qoqbtwi UIXg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=56aQxLMNNXht4lUJaV0pcXj992G0NW6dt9R3o7I+KkI=; b=0WAB4c9lDnJG9Uk2tbLXPmDKQiPXHFGbRK0jTZlv2lvIKhwKqLPwD4+ZEVD6/OvZfd rY9K+SUSPvz55zZm26QvNDr0NG2wSaRPNs6bIshZFcoGARgd+TbnEBMa5m1N+WGte3pk jIBfx4ZtwE3VTgZ6N9ydFykIwuaXkhqAI5RsA0KndeEFGAwmXWjopl/ZEFVI/LycSlDw Nra9GnpmavSMEydxH2GjBxltzCqTX1cphCo72/chPaUNYq47SwWfaalnMOCzEb5FdFVl V61zEz6sNvZQb7g2I770BgzW3X4pPvU9KaVReRuLUXnOOhgwuI17k3taOfe3Jo2mtxvj XM4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=NXZXYzIz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o5-20020a170906974500b007763cc7093csi1875009ejy.884.2023.01.06.09.51.25; Fri, 06 Jan 2023 09:51:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=NXZXYzIz; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234465AbjAFRke (ORCPT + 56 others); Fri, 6 Jan 2023 12:40:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36238 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230497AbjAFRkc (ORCPT ); Fri, 6 Jan 2023 12:40:32 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A9ABD7D9DC; Fri, 6 Jan 2023 09:40:31 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 4CA4F616F5; Fri, 6 Jan 2023 17:40:31 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id DAC3CC433EF; Fri, 6 Jan 2023 17:40:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1673026830; bh=RPl7e2yBo83c5bpefsyB/x5AStixSmvwCt6OqN8mVRA=; h=From:To:Cc:Subject:Date:From; b=NXZXYzIz+4ecrSUefmPBaOBbALJel/O/I56Yx+vNVLtvvGtgf94GV1QFNHD6OR3I6 i0GyyTkuKlVocoLBOqq50sdu/aj0RGLCZQQGq0eeDZOgBS1WJbFl7nB+/Alqr6eRfC uvUP/EUfkOQjMyV2e31sJWCdpo13LLjLtdfx//WtynQZE6FL68aYh45dJwALkyPfqj B9vGPTfQVeZUQMdGN8tiOq2V5qDa3+AeBncTri0dCoSdXqRp9Tmyhp9/xGMkWGvohs gQlzaWNk2/L8YwsNRRwssuwjPlp5u8iFDA/rLIvSqqbbIFZSLKTLYdUBFs/ixfvZSt d9h5NGQ00D4xg== From: SeongJae Park To: Andrew Morton Cc: SeongJae Park , willy@infradead.org, Xiubo Li , Ilya Dryomov , Jeff Layton , linux-mm@kvack.org, ceph-devel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/3] add folio_headpage() macro Date: Fri, 6 Jan 2023 17:40:25 +0000 Message-Id: <20230106174028.151384-1-sj@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The standard idiom for getting head page of a given folio is '&folio->page'. It is efficient and safe even if the folio is NULL, because the offset of page field in folio is zero. However, it makes the code not that easy to understand at the first glance, especially the NULL safety. Also, sometimes people forget the idiom and use 'folio_page(folio, 0)' instead. To make it easier to read and remember, add a new macro function called 'folio_headpage()' with the NULL case explanation. Then, replace the 'folio_page(folio, 0)' calls with 'folio_headpage(folio)'. SeongJae Park (3): include/linux/page-flags: add folio_headpage() mm: use folio_headpage() instead of folio_page() fs/ceph/addr: use folio_headpage() instead of folio_page() fs/ceph/addr.c | 2 +- include/linux/page-flags.h | 8 ++++++++ mm/shmem.c | 4 ++-- mm/slab.c | 6 +++--- mm/slab_common.c | 4 ++-- mm/slub.c | 4 ++-- 6 files changed, 18 insertions(+), 10 deletions(-) -- 2.25.1