On Sun 20-08-17 17:36:41, David Rientjes wrote: > Fix build: > > mm/compaction.c: In function ‘isolate_freepages_block’: > mm/compaction.c:469:4: error: implicit declaration of function ‘pageblock_skip_persistent’ [-Werror=implicit-function-declaration] > if (pageblock_skip_persistent(page, order)) { > ^ > mm/compaction.c:470:5: error: implicit declaration of function ‘set_pageblock_skip’ [-Werror=implicit-function-declaration] > set_pageblock_skip(page); > ^ > > CMA doesn't guarantee pageblock skip will get reset when migration and > freeing scanners meet, and pageblock skip is a CONFIG_COMPACTION only > feature, so disable it when CONFIG_COMPACTION=n. > > Signed-off-by: David Rientjes <rientjes@xxxxxxxxxx> Yes, this passes the compilation test for me. > --- > include/linux/pageblock-flags.h | 11 +++++++++++ > mm/compaction.c | 8 +++++++- > 2 files changed, 18 insertions(+), 1 deletion(-) > > diff --git a/include/linux/pageblock-flags.h b/include/linux/pageblock-flags.h > --- a/include/linux/pageblock-flags.h > +++ b/include/linux/pageblock-flags.h > @@ -96,6 +96,17 @@ void set_pfnblock_flags_mask(struct page *page, > #define set_pageblock_skip(page) \ > set_pageblock_flags_group(page, 1, PB_migrate_skip, \ > PB_migrate_skip) > +#else > +static inline bool get_pageblock_skip(struct page *page) > +{ > + return false; > +} > +static inline void clear_pageblock_skip(struct page *page) > +{ > +} > +static inline void set_pageblock_skip(struct page *page) > +{ > +} > #endif /* CONFIG_COMPACTION */ > > #endif /* PAGEBLOCK_FLAGS_H */ > diff --git a/mm/compaction.c b/mm/compaction.c > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -322,7 +322,13 @@ static inline bool isolation_suitable(struct compact_control *cc, > return true; > } > > -static void update_pageblock_skip(struct compact_control *cc, > +static inline bool pageblock_skip_persistent(struct page *page, > + unsigned int order) > +{ > + return false; > +} > + > +static inline void update_pageblock_skip(struct compact_control *cc, > struct page *page, unsigned long nr_isolated, > bool migrate_scanner) > { -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>