[PATCH 04/11] mm: compaction: export some of the functions
mel at csn.ul.ie
Mon Dec 12 10:40:15 EST 2011
On Mon, Dec 12, 2011 at 03:41:04PM +0100, Michal Nazarewicz wrote:
> On Mon, 12 Dec 2011 15:29:07 +0100, Mel Gorman <mel at csn.ul.ie> wrote:
> >On Fri, Nov 18, 2011 at 05:43:11PM +0100, Marek Szyprowski wrote:
> >>From: Michal Nazarewicz <mina86 at mina86.com>
> >>This commit exports some of the functions from compaction.c file
> >>outside of it adding their declaration into internal.h header
> >>file so that other mm related code can use them.
> >>This forced compaction.c to always be compiled (as opposed to being
> >>compiled only if CONFIG_COMPACTION is defined) but as to avoid
> >>introducing code that user did not ask for, part of the compaction.c
> >>is now wrapped in on #ifdef.
> >>Signed-off-by: Michal Nazarewicz <mina86 at mina86.com>
> >>Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
> >> mm/Makefile | 3 +-
> >> mm/compaction.c | 112 +++++++++++++++++++++++--------------------------------
> >> mm/internal.h | 35 +++++++++++++++++
> >> 3 files changed, 83 insertions(+), 67 deletions(-)
> >>diff --git a/mm/Makefile b/mm/Makefile
> >>index 50ec00e..24ed801 100644
> >>--- a/mm/Makefile
> >>+++ b/mm/Makefile
> >>@@ -13,7 +13,7 @@ obj-y := filemap.o mempool.o oom_kill.o fadvise.o \
> >> readahead.o swap.o truncate.o vmscan.o shmem.o \
> >> prio_tree.o util.o mmzone.o vmstat.o backing-dev.o \
> >> page_isolation.o mm_init.o mmu_context.o percpu.o \
> >>- $(mmu-y)
> >>+ $(mmu-y) compaction.o
> >That should be
> >compaction.o $(mmu-y)
> >for consistency.
> >Overall, this patch implies that CMA is always compiled in.
> Not really. But yes, it produces some bloat when neither CMA nor
> compaction are compiled. I assume that linker will be able to deal
> with that (since the functions are not EXPORT_SYMBOL'ed).
The bloat exists either way. I don't believe the linker strips it out so
overall it would make more sense to depend on compaction to keep the
vmstat counters for debugging reasons if nothing else. It's not
something I feel very strongly about though.
More information about the linux-arm-kernel