The patch titled Subject: mm/compaction.c: fix "suitable_migration_target() unused" warning has been added to the -mm tree. Its filename is mm-compactionc-fix-suitable_migration_target-unused-warning.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-compactionc-fix-suitable_migration_target-unused-warning.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-compactionc-fix-suitable_migration_target-unused-warning.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 *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm/compaction.c: fix "suitable_migration_target() unused" warning mm/compaction.c:250:13: warning: 'suitable_migration_target' defined but not used [-Wunused-function] Reported-by: Fengguang Wu <fengguang.wu@xxxxxxxxx> Cc: Vlastimil Babka <vbabka@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/compaction.c | 45 +++++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff -puN mm/compaction.c~mm-compactionc-fix-suitable_migration_target-unused-warning mm/compaction.c --- a/mm/compaction.c~mm-compactionc-fix-suitable_migration_target-unused-warning +++ a/mm/compaction.c @@ -391,28 +391,6 @@ static inline bool compact_should_abort( return false; } -/* Returns true if the page is within a block suitable for migration to */ -static bool suitable_migration_target(struct page *page) -{ - /* If the page is a large free page, then disallow migration */ - if (PageBuddy(page)) { - /* - * We are checking page_order without zone->lock taken. But - * the only small danger is that we skip a potentially suitable - * pageblock, so it's not worth to check order for valid range. - */ - if (page_order_unsafe(page) >= pageblock_order) - return false; - } - - /* If the block is MIGRATE_MOVABLE or MIGRATE_CMA, allow migration */ - if (migrate_async_suitable(get_pageblock_migratetype(page))) - return true; - - /* Otherwise skip the block */ - return false; -} - /* * Isolate free pages onto a private freelist. If @strict is true, will abort * returning 0 on any invalid PFNs or non-free pages inside of the pageblock @@ -896,6 +874,29 @@ isolate_migratepages_range(struct compac #endif /* CONFIG_COMPACTION || CONFIG_CMA */ #ifdef CONFIG_COMPACTION + +/* Returns true if the page is within a block suitable for migration to */ +static bool suitable_migration_target(struct page *page) +{ + /* If the page is a large free page, then disallow migration */ + if (PageBuddy(page)) { + /* + * We are checking page_order without zone->lock taken. But + * the only small danger is that we skip a potentially suitable + * pageblock, so it's not worth to check order for valid range. + */ + if (page_order_unsafe(page) >= pageblock_order) + return false; + } + + /* If the block is MIGRATE_MOVABLE or MIGRATE_CMA, allow migration */ + if (migrate_async_suitable(get_pageblock_migratetype(page))) + return true; + + /* Otherwise skip the block */ + return false; +} + /* * Based on information in the current compact_control, find blocks * suitable for isolating free pages from and then isolate them. _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are origin.patch arch-alpha-kernel-systblss-remove-debug-check.patch i-need-old-gcc.patch ocfs2-make-mlog_errno-return-the-errno.patch mm.patch mm-migrate-mark-unmap_and_move-noinline-to-avoid-ice-in-gcc-473-fix.patch mm-migrate-mark-unmap_and_move-noinline-to-avoid-ice-in-gcc-473-fix-fix-fix.patch slub-bulk-allocation-from-per-cpu-partial-pages-fix.patch mm-cma-release-trigger-checkpatch-fixes.patch mm-cma-allocation-trigger-fix.patch mm-compaction-enhance-compaction-finish-condition-fix.patch page_writeback-cleanup-mess-around-cancel_dirty_page-checkpatch-fixes.patch mm-hide-per-cpu-lists-in-output-of-show_mem-fix.patch mm-clarify-__gfp_nofail-deprecation-status-checkpatch-fixes.patch mm-change-vunmap-to-tear-down-huge-kva-mappings-fix.patch mm-mempool-do-not-allow-atomic-resizing-checkpatch-fixes.patch mm-memory-failurec-define-page-types-for-action_result-in-one-place.patch include-linux-page-flagsh-rename-macros-to-avoid-collisions.patch document-interaction-between-compaction-and-the-unevictable-lru-fix.patch mm-memcg-sync-allocation-and-memcg-charge-gfp-flags-for-thp-fix.patch mm-vmalloc-occupy-newly-allocated-vmap-block-just-after-allocation.patch mm-mmapc-use-while-instead-of-ifgoto-fix.patch mm-hugetlb-introduce-pagehugeactive-flag-fix.patch mm-hugetlb-cleanup-using-pagehugeactive-flag-fix.patch mm-memblock-add-debug-output-for-the-memblock_add-fix.patch mm-uninline-and-cleanup-page-mapping-related-helpers-checkpatch-fixes.patch mm-cma-add-functions-to-get-region-pages-counters-fix.patch mm-cma_debugc-remove-blank-lines-before-define_simple_attribute.patch mm-memory-print-also-a_ops-readpage-in-print_bad_pte-fix.patch mm-compactionc-fix-suitable_migration_target-unused-warning.patch mm-vmscan-fix-the-page-state-calculation-in-too_many_isolated.patch x86-add-pmd_-for-thp-fix.patch sparc-add-pmd_-for-thp-fix.patch mm-support-madvisemadv_free-fix-2.patch mm-move-lazy-free-pages-to-inactive-list-fix-fix.patch mm-move-lazy-free-pages-to-inactive-list-fix-fix-fix.patch zram-add-dynamic-device-add-remove-functionality-fix.patch zram-introduce-automatic-device_id-generation-fix.patch zsmalloc-support-compaction-fix.patch kernel-conditionally-support-non-root-users-groups-and-capabilities-checkpatch-fixes.patch lib-vsprintf-add-%pcnr-format-specifiers-for-clocks-fix.patch lib-find__bit-reimplementation-fix.patch checkpatch-match-more-world-writable-permissions-fix.patch binfmt_misc-simplify-entry_status-fix.patch rtc-driver-for-conexant-digicolor-cx92755-on-chip-rtc-fix.patch rtc-omap-add-external-32k-clock-feature-fix.patch fs-fat-remove-unnecessary-includes-fix.patch kernel-forkc-avoid-division-by-zero-fix.patch kernel-forkc-avoid-division-by-zero-fix-fix.patch doc-sysctl-kerneltxt-document-threads-max-fix.patch mm-rcu-protected-get_mm_exe_file-fix-2.patch affs-kstrdup-memory-handling-fix.patch kconfig-use-macros-which-are-already-defined-fix.patch linux-next.patch linux-next-rejects.patch lib-kconfig-fix-up-have_arch_bitreverse-help-text.patch oprofile-reduce-mmap_sem-hold-for-mm-exe_file-fix.patch tomoyo-reduce-mmap_sem-hold-for-mm-exe_file-checkpatch-fixes.patch documentation-spi-spidev_testc-fix-warning.patch do_shared_fault-check-that-mmap_sem-is-held.patch journal_add_journal_head-debug.patch journal_add_journal_head-debug-fix.patch kernel-forkc-export-kernel_thread-to-modules.patch mutex-subsystem-synchro-test-module.patch slab-leaks3-default-y.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