diff options
Diffstat (limited to 'include/linux/mm.h')
-rw-r--r-- | include/linux/mm.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/include/linux/mm.h b/include/linux/mm.h index fb19bb92b809..b969efb03787 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/debug_locks.h> | 13 | #include <linux/debug_locks.h> |
14 | #include <linux/mm_types.h> | 14 | #include <linux/mm_types.h> |
15 | #include <linux/range.h> | 15 | #include <linux/range.h> |
16 | #include <linux/pfn.h> | ||
16 | 17 | ||
17 | struct mempolicy; | 18 | struct mempolicy; |
18 | struct anon_vma; | 19 | struct anon_vma; |
@@ -106,6 +107,9 @@ extern unsigned int kobjsize(const void *objp); | |||
106 | #define VM_PFN_AT_MMAP 0x40000000 /* PFNMAP vma that is fully mapped at mmap time */ | 107 | #define VM_PFN_AT_MMAP 0x40000000 /* PFNMAP vma that is fully mapped at mmap time */ |
107 | #define VM_MERGEABLE 0x80000000 /* KSM may merge identical pages */ | 108 | #define VM_MERGEABLE 0x80000000 /* KSM may merge identical pages */ |
108 | 109 | ||
110 | /* Bits set in the VMA until the stack is in its final location */ | ||
111 | #define VM_STACK_INCOMPLETE_SETUP (VM_RAND_READ | VM_SEQ_READ) | ||
112 | |||
109 | #ifndef VM_STACK_DEFAULT_FLAGS /* arch can override this */ | 113 | #ifndef VM_STACK_DEFAULT_FLAGS /* arch can override this */ |
110 | #define VM_STACK_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS | 114 | #define VM_STACK_DEFAULT_FLAGS VM_DATA_DEFAULT_FLAGS |
111 | #endif | 115 | #endif |
@@ -334,6 +338,7 @@ void put_page(struct page *page); | |||
334 | void put_pages_list(struct list_head *pages); | 338 | void put_pages_list(struct list_head *pages); |
335 | 339 | ||
336 | void split_page(struct page *page, unsigned int order); | 340 | void split_page(struct page *page, unsigned int order); |
341 | int split_free_page(struct page *page); | ||
337 | 342 | ||
338 | /* | 343 | /* |
339 | * Compound pages have a destructor function. Provide a | 344 | * Compound pages have a destructor function. Provide a |
@@ -591,7 +596,7 @@ static inline void set_page_links(struct page *page, enum zone_type zone, | |||
591 | 596 | ||
592 | static __always_inline void *lowmem_page_address(struct page *page) | 597 | static __always_inline void *lowmem_page_address(struct page *page) |
593 | { | 598 | { |
594 | return __va(page_to_pfn(page) << PAGE_SHIFT); | 599 | return __va(PFN_PHYS(page_to_pfn(page))); |
595 | } | 600 | } |
596 | 601 | ||
597 | #if defined(CONFIG_HIGHMEM) && !defined(WANT_PAGE_VIRTUAL) | 602 | #if defined(CONFIG_HIGHMEM) && !defined(WANT_PAGE_VIRTUAL) |