The patch titled mm: make some struct page's const has been added to the -mm tree. Its filename is mm-make-some-struct-pages-const.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find out what to do about this The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ ------------------------------------------------------ Subject: mm: make some struct page's const From: Ian Campbell <ian.campbell@xxxxxxxxxx> These uses are read-only and in a subsequent patch I have a const struct page in my hand... Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx> Cc: Rik van Riel <riel@xxxxxxxxxx> Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx> Cc: Mel Gorman <mel@xxxxxxxxx> Cc: Michel Lespinasse <walken@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/mm.h | 10 +++++----- mm/sparse.c | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff -puN include/linux/mm.h~mm-make-some-struct-pages-const include/linux/mm.h --- a/include/linux/mm.h~mm-make-some-struct-pages-const +++ a/include/linux/mm.h @@ -636,7 +636,7 @@ static inline pte_t maybe_mkwrite(pte_t #define SECTIONS_MASK ((1UL << SECTIONS_WIDTH) - 1) #define ZONEID_MASK ((1UL << ZONEID_SHIFT) - 1) -static inline enum zone_type page_zonenum(struct page *page) +static inline enum zone_type page_zonenum(const struct page *page) { return (page->flags >> ZONES_PGSHIFT) & ZONES_MASK; } @@ -664,15 +664,15 @@ static inline int zone_to_nid(struct zon } #ifdef NODE_NOT_IN_PAGE_FLAGS -extern int page_to_nid(struct page *page); +extern int page_to_nid(const struct page *page); #else -static inline int page_to_nid(struct page *page) +static inline int page_to_nid(const struct page *page) { return (page->flags >> NODES_PGSHIFT) & NODES_MASK; } #endif -static inline struct zone *page_zone(struct page *page) +static inline struct zone *page_zone(const struct page *page) { return &NODE_DATA(page_to_nid(page))->node_zones[page_zonenum(page)]; } @@ -717,7 +717,7 @@ static inline void set_page_links(struct */ #include <linux/vmstat.h> -static __always_inline void *lowmem_page_address(struct page *page) +static __always_inline void *lowmem_page_address(const struct page *page) { return __va(PFN_PHYS(page_to_pfn(page))); } diff -puN mm/sparse.c~mm-make-some-struct-pages-const mm/sparse.c --- a/mm/sparse.c~mm-make-some-struct-pages-const +++ a/mm/sparse.c @@ -40,7 +40,7 @@ static u8 section_to_node_table[NR_MEM_S static u16 section_to_node_table[NR_MEM_SECTIONS] __cacheline_aligned; #endif -int page_to_nid(struct page *page) +int page_to_nid(const struct page *page) { return section_to_node_table[page_to_section(page)]; } _ Patches currently in -mm which might be from ian.campbell@xxxxxxxxxx are mm-make-some-struct-pages-const.patch mm-use-const-struct-page-for-r-o-page-flag-accessor-methods.patch linux-next.patch mm-extend-memory-hotplug-api-to-allow-memory-hotplug-in-virtual-machines.patch mm-extend-memory-hotplug-api-to-allow-memory-hotplug-in-virtual-machines-fix.patch xen-balloon-memory-hotplug-support-for-xen-balloon-driver.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html