diff options
Diffstat (limited to 'include/linux/memory_hotplug.h')
| -rw-r--r-- | include/linux/memory_hotplug.h | 11 | 
1 files changed, 9 insertions, 2 deletions
diff --git a/include/linux/memory_hotplug.h b/include/linux/memory_hotplug.h index 8122018d3000..0b8e2a742600 100644 --- a/include/linux/memory_hotplug.h +++ b/include/linux/memory_hotplug.h @@ -68,12 +68,19 @@ static inline void zone_seqlock_init(struct zone *zone)  extern int zone_grow_free_lists(struct zone *zone, unsigned long new_nr_pages);  extern int zone_grow_waitqueues(struct zone *zone, unsigned long nr_pages);  extern int add_one_highpage(struct page *page, int pfn, int bad_ppro); -/* need some defines for these for archs that don't support it */ -extern void online_page(struct page *page);  /* VM interface that may be used by firmware interface */  extern int online_pages(unsigned long, unsigned long);  extern void __offline_isolated_pages(unsigned long, unsigned long); +typedef void (*online_page_callback_t)(struct page *page); + +extern int set_online_page_callback(online_page_callback_t callback); +extern int restore_online_page_callback(online_page_callback_t callback); + +extern void __online_page_set_limits(struct page *page); +extern void __online_page_increment_counters(struct page *page); +extern void __online_page_free(struct page *page); +  #ifdef CONFIG_MEMORY_HOTREMOVE  extern bool is_pageblock_removable_nolock(struct page *page);  #endif /* CONFIG_MEMORY_HOTREMOVE */  |