forked from mirrors/linux
		
	mm: make some struct page's const
These uses are read-only and in a subsequent patch I have a const struct page in my hand... [akpm@linux-foundation.org: fix warnings in lowmem_page_address()] Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Cc: Rik van Riel <riel@redhat.com> Cc: Andrea Arcangeli <aarcange@redhat.com> Cc: Mel Gorman <mel@csn.ul.ie> Cc: Michel Lespinasse <walken@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
		
							parent
							
								
									ee8f248d26
								
							
						
					
					
						commit
						33dd4e0ec9
					
				
					 2 changed files with 7 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -637,7 +637,7 @@ static inline pte_t maybe_mkwrite(pte_t pte, struct vm_area_struct *vma)
 | 
			
		|||
#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;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -665,15 +665,15 @@ static inline int zone_to_nid(struct zone *zone)
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
#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)];
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -718,9 +718,9 @@ static inline void set_page_links(struct page *page, enum zone_type zone,
 | 
			
		|||
 */
 | 
			
		||||
#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)));
 | 
			
		||||
	return __va(PFN_PHYS(page_to_pfn((struct page *)page)));
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#if defined(CONFIG_HIGHMEM) && !defined(WANT_PAGE_VIRTUAL)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,7 +40,7 @@ static u8 section_to_node_table[NR_MEM_SECTIONS] __cacheline_aligned;
 | 
			
		|||
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)];
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue