[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20150120160738.edfe64806cc8b943beb1dfa0@linux-foundation.org>
Date: Tue, 20 Jan 2015 16:07:38 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: josh@...htriplett.org
Cc: Kim Phillips <kim.phillips@...escale.com>,
Johannes Weiner <hannes@...xchg.org>,
Minchan Kim <minchan@...nel.org>,
Joonsoo Kim <iamjoonsoo.kim@....com>,
Rik van Riel <riel@...hat.com>,
Sasha Levin <sasha.levin@...cle.com>,
Al Viro <viro@...iv.linux.org.uk>,
Konstantin Khlebnikov <k.khlebnikov@...sung.com>,
Jens Axboe <axboe@...com>, linux-mm@...ck.org,
linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
Akinobu Mita <akinobu.mita@...il.com>
Subject: Re: [PATCH 2/2] mm: fix undefined reference to `.kernel_map_pages'
on PPC builds
On Tue, 20 Jan 2015 15:01:50 -0800 josh@...htriplett.org wrote:
> On Tue, Jan 20, 2015 at 02:02:00PM -0600, Kim Phillips wrote:
> > It's possible to configure DEBUG_PAGEALLOC without PAGE_POISONING on
> > ppc. Fix building the generic kernel_map_pages() implementation in
> > this case:
> >
> > LD init/built-in.o
> > mm/built-in.o: In function `free_pages_prepare':
> > mm/page_alloc.c:770: undefined reference to `.kernel_map_pages'
> > mm/built-in.o: In function `prep_new_page':
> > mm/page_alloc.c:933: undefined reference to `.kernel_map_pages'
> > mm/built-in.o: In function `map_pages':
> > mm/compaction.c:61: undefined reference to `.kernel_map_pages'
> > make: *** [vmlinux] Error 1
> >
> > Signed-off-by: Kim Phillips <kim.phillips@...escale.com>
> > ---
> > mm/Makefile | 1 +
> > 1 file changed, 1 insertion(+)
> >
> > diff --git a/mm/Makefile b/mm/Makefile
> > index 4bf586e..2956467 100644
> > --- a/mm/Makefile
> > +++ b/mm/Makefile
> > @@ -46,6 +46,7 @@ obj-$(CONFIG_SLOB) += slob.o
> > obj-$(CONFIG_MMU_NOTIFIER) += mmu_notifier.o
> > obj-$(CONFIG_KSM) += ksm.o
> > obj-$(CONFIG_PAGE_POISONING) += debug-pagealloc.o
> > +obj-$(CONFIG_DEBUG_PAGEALLOC) += debug-pagealloc.o
>
> Does it work correctly to list the same object file twice? Doesn't seem
> like it would. Shouldn't this do something like the following instead:
>
> ifneq ($(CONFIG_DEBUG_PAGEALLOC)$(CONFIG_PAGE_POISONING),)
> obj-y += debug-pagealloc.o
> endif
>
I expect it's a Kconfig problem. DEBUG_PAGEALLOC should be selecting
PAGE_POISONING.
config DEBUG_PAGEALLOC
bool "Debug page memory allocations"
depends on DEBUG_KERNEL
depends on !HIBERNATION || ARCH_SUPPORTS_DEBUG_PAGEALLOC && !PPC && !SPARC
depends on !KMEMCHECK
select PAGE_EXTENSION
select PAGE_POISONING if !ARCH_SUPPORTS_DEBUG_PAGEALLOC
Culprits cc'ed!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists