On 4/17/21 1:15 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) <willy@xxxxxxxxxxxxx> Reviewed-by: Vlastimil Babka <vbabka@xxxxxxx> > --- > 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); > } >