Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp4158608pxy; Mon, 26 Apr 2021 20:32:33 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyK5RHMxkPg/XA87t21gLHXb9EQb4Tk5JImCyymRi4Rlauckd/S8ydnxfjC9/GljYXJmqMA X-Received: by 2002:a62:8804:0:b029:253:6745:908c with SMTP id l4-20020a6288040000b02902536745908cmr20579204pfd.16.1619494353379; Mon, 26 Apr 2021 20:32:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619494353; cv=none; d=google.com; s=arc-20160816; b=U3I2YzfGw1mUym6rC3Y46FTYfqqmobDQRT07GFktjIZwKMS7MaSkx63y0tUHXSbG9X zE/iX/pW+DnfZFfhMiNvsmBZQn371KcPWEu4qoFGw4Lhh+L3GyGA5fFfRo/mk/fScN++ L66WYNTnQvMgBa1g8lqkhCdYEnfa16medR/KXJZshcz1+o00C6TBxRpSTHJUoslYG/AH 2ICslphfvm/UwCq+uJs7kDf7CSraLlacUcjkLNNskdQNwBrPEjiyYN9NR2avNGC5jSWe Gfw1rbMiGT4LuCddOeuDxFU9n5sg5BhjhPYktCbvni2dhSD4MmUKfP73HGq+Vs68+XrL A1Tg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:references:cc :to:subject:from; bh=9sVDxZLSLpEYow82fmh72yCeU6f24a/MP2WqVYc2umY=; b=pPab4Zl/Cy2gWnnUMggE3sOggW6ZSFByd47cC/7ZpxvmPxOnx3wfy8+6aTuA49ZYgT zRKhljeoJDSaHSHfhcUqsBZh5FwKNgvIv8dKfgNlpCJMwFsY3BL9YLpbaD2BhGHe7DRw F0boJugDqCVljcEiKikxdxsPtkMGKiU1S+5iRPtSnDyR+YlCCgw4U8L6hBf3aJYIVTTJ N8DPW7bPxyfKClkiPhBMkGn/Zkn9szF7BscM1R3S4a7kqhYBc7n+rtmpeogDUQXiaF0l +XAfDVXphQmqgkuNFDVUBVu8sgkHyH6rxhnwuTwGQp4NCTJ7cQnPyCEFySx3PUP6wsKl jMeQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p5si2127342pjg.17.2021.04.26.20.32.20; Mon, 26 Apr 2021 20:32:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234384AbhD0DcI (ORCPT + 99 others); Mon, 26 Apr 2021 23:32:08 -0400 Received: from foss.arm.com ([217.140.110.172]:43416 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233909AbhD0DcI (ORCPT ); Mon, 26 Apr 2021 23:32:08 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C8F04D6E; Mon, 26 Apr 2021 20:31:25 -0700 (PDT) Received: from [10.163.75.249] (unknown [10.163.75.249]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 4D4023F694; Mon, 26 Apr 2021 20:31:24 -0700 (PDT) From: Anshuman Khandual Subject: Re: [PATCH 5/6] mm: Constify get_pfnblock_flags_mask and get_pfnblock_migratetype To: "Matthew Wilcox (Oracle)" , linux-mm@kvack.org Cc: Andrew Morton , linux-kernel@vger.kernel.org References: <20210416231531.2521383-1-willy@infradead.org> <20210416231531.2521383-6-willy@infradead.org> Message-ID: <88a0db1e-a26c-c5c2-bac1-a1bacaf01a02@arm.com> Date: Tue, 27 Apr 2021 09:02:16 +0530 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20210416231531.2521383-6-willy@infradead.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/17/21 4:45 AM, Matthew Wilcox (Oracle) wrote: > The struct page is not modified by these routines, so it can be marked > const. > > Signed-off-by: Matthew Wilcox (Oracle) > --- > include/linux/pageblock-flags.h | 2 +- > mm/page_alloc.c | 13 +++++++------ > 2 files changed, 8 insertions(+), 7 deletions(-) > > diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h > index fff52ad370c1..973fd731a520 100644 > --- a/include/linux/pageblock-flags.h > +++ b/include/linux/pageblock-flags.h > @@ -54,7 +54,7 @@ extern unsigned int pageblock_order; > /* Forward declaration */ > struct page; > > -unsigned long get_pfnblock_flags_mask(struct page *page, > +unsigned long get_pfnblock_flags_mask(const struct page *page, > unsigned long pfn, > unsigned long mask); > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index 0152670c6f04..4be2179eedd5 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -474,7 +474,7 @@ static inline bool defer_init(int nid, unsigned long pfn, unsigned long end_pfn) > #endif > > /* Return a pointer to the bitmap storing bits affecting a block of pages */ > -static inline unsigned long *get_pageblock_bitmap(struct page *page, > +static inline unsigned long *get_pageblock_bitmap(const struct page *page, > unsigned long pfn) > { > #ifdef CONFIG_SPARSEMEM > @@ -484,7 +484,7 @@ static inline unsigned long *get_pageblock_bitmap(struct page *page, > #endif /* CONFIG_SPARSEMEM */ > } > > -static inline int pfn_to_bitidx(struct page *page, unsigned long pfn) > +static inline int pfn_to_bitidx(const struct page *page, unsigned long pfn) > { > #ifdef CONFIG_SPARSEMEM > pfn &= (PAGES_PER_SECTION-1); > @@ -495,7 +495,7 @@ static inline int pfn_to_bitidx(struct page *page, unsigned long pfn) > } > > static __always_inline > -unsigned long __get_pfnblock_flags_mask(struct page *page, > +unsigned long __get_pfnblock_flags_mask(const struct page *page, > unsigned long pfn, > unsigned long mask) > { > @@ -520,13 +520,14 @@ unsigned long __get_pfnblock_flags_mask(struct page *page, > * > * Return: pageblock_bits flags > */ > -unsigned long get_pfnblock_flags_mask(struct page *page, unsigned long pfn, > - unsigned long mask) > +unsigned long get_pfnblock_flags_mask(const struct page *page, > + unsigned long pfn, unsigned long mask) > { > return __get_pfnblock_flags_mask(page, pfn, mask); > } > > -static __always_inline int get_pfnblock_migratetype(struct page *page, unsigned long pfn) > +static __always_inline int get_pfnblock_migratetype(const struct page *page, > + unsigned long pfn) > { > return __get_pfnblock_flags_mask(page, pfn, MIGRATETYPE_MASK); > } > Reviewed-by: Anshuman Khandual