Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'

From: Geert Uytterhoeven
Date: Mon Jul 08 2019 - 16:19:56 EST


Hi GÃnter,

CC Greg

On Mon, Jul 8, 2019 at 9:45 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> On Mon, Jul 08, 2019 at 09:13:02PM +0200, Geert Uytterhoeven wrote:
> > On Mon, Jul 8, 2019 at 7:06 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> > > I see the following build error in -next:
> > >
> > > kernel/dma/direct.o: In function `dma_direct_alloc_pages':
> > > direct.c:(.text+0x4d8): undefined reference to `arch_dma_prep_coherent'
> > >
> > > Example: m68k:allnoconfig.
> > >
> > > Bisect log is ambiguous and points to the merge of m68k/for-next into
> > > -next. Yet, I think the problem is with commit 69878ef47562 ("m68k:
> > > Implement arch_dma_prep_coherent()") which is supposed to introduce
> > > the function. The problem is likely that arch_dma_prep_coherent()
> > > is only declared if CONFIG_MMU is enabled, but it is called from code
> > > outside CONFIG_MMU.
> >
> > Thanks, one more thing to fix in m68k-allnoconfig (did it really build
> > before?)...
> >
> > Given you say "example", does it fail in real configs, too?
>
> Yes, it does. All nommu builds fail. allnoconfig and tinyconfig just
> happen to be among those.
>
> Building m68k:allnoconfig ... failed
> Building m68k:tinyconfig ... failed
> Building m68k:m5272c3_defconfig ... failed
> Building m68k:m5307c3_defconfig ... failed
> Building m68k:m5249evb_defconfig ... failed
> Building m68k:m5407c3_defconfig ... failed
> Building m68k:m5475evb_defconfig ... failed
>
> Error is always the same.

Thanks!

> The error started with next-20190702. Prior to that, builds were fine,
> including m68k:allnoconfig and m68k:tinyconfig.

Yeah, it started when I queued up the DMA rework.
I didn't double-check when Greg said it was OK for him, as it wouldn't affect
Coldfire or mmu. Sorry for that.
And that has just been pulled by Linus... Oops...

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds