linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
@ 2019-07-08 17:06 Guenter Roeck
  2019-07-08 19:13 ` Geert Uytterhoeven
  0 siblings, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2019-07-08 17:06 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Geert Uytterhoeven, linux-kernel, Stephen Rothwell, linux-m68k

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.

Guenter

---
# bad: [d58b5ab90ee7528126fd5833df7fc5bda8331ce8] Add linux-next specific files for 20190708
# good: [6fbc7275c7a9ba97877050335f290341a1fd8dbf] Linux 5.2-rc7
git bisect start 'HEAD' 'v5.2-rc7'
# bad: [ba30fb6d5d6464bd7d3759408ea7f178d8c9fe87] Merge remote-tracking branch 'crypto/master'
git bisect bad ba30fb6d5d6464bd7d3759408ea7f178d8c9fe87
# bad: [4226c2bec4757a3acbf86bb836375d3966ab72ce] Merge remote-tracking branch 'i2c/i2c/for-next'
git bisect bad 4226c2bec4757a3acbf86bb836375d3966ab72ce
# good: [e41aad4a290783ec7d3730542cbed0e99b2dcb4a] Merge remote-tracking branch 'tegra/for-next'
git bisect good e41aad4a290783ec7d3730542cbed0e99b2dcb4a
# bad: [e495984468b15cb8fa276b63fff3986111a513a5] Merge remote-tracking branch 'ceph/master'
git bisect bad e495984468b15cb8fa276b63fff3986111a513a5
# bad: [8e8fefda572360f00854547f3458a9c2cf932ff5] Merge remote-tracking branch 'powerpc/next'
git bisect bad 8e8fefda572360f00854547f3458a9c2cf932ff5
# bad: [01fd0e565283d69adf0ff1da95cab5bb4cb58acb] Merge remote-tracking branch 'm68k/for-next'
git bisect bad 01fd0e565283d69adf0ff1da95cab5bb4cb58acb
# good: [7dcbe273f9c61b83e398a19152f6529d1676751d] Merge branch 'clk-allwinner' into clk-next
git bisect good 7dcbe273f9c61b83e398a19152f6529d1676751d
# good: [59f375866fa68888fedc7bcd2dad381ceb6ba4dc] Merge branch 'clk-sprd' into clk-next
git bisect good 59f375866fa68888fedc7bcd2dad381ceb6ba4dc
# good: [49193327486022abc85b24d058aefa666367ffff] Merge branch 'clk-lochnagar' into clk-next
git bisect good 49193327486022abc85b24d058aefa666367ffff
# good: [7b4e6f9a4b8daa37a86cd7bca46bf70b522dbb62] csky: Add new asid lib code from arm
git bisect good 7b4e6f9a4b8daa37a86cd7bca46bf70b522dbb62
# good: [c6d41a2a548b8b684a006ab77d42c73815105011] Merge remote-tracking branch 'csky/linux-next'
git bisect good c6d41a2a548b8b684a006ab77d42c73815105011
# good: [69878ef47562f32e02d0b7975c990e1c0339320d] m68k: Implement arch_dma_prep_coherent()
git bisect good 69878ef47562f32e02d0b7975c990e1c0339320d
# good: [ccd1eda4ac7a73806ccc6afa899bb58e00c7772f] Merge remote-tracking branch 'h8300/h8300-next'
git bisect good ccd1eda4ac7a73806ccc6afa899bb58e00c7772f
# first bad commit: [01fd0e565283d69adf0ff1da95cab5bb4cb58acb] Merge remote-tracking branch 'm68k/for-next'

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 17:06 m68k build failures in -next: undefined reference to `arch_dma_prep_coherent' Guenter Roeck
@ 2019-07-08 19:13 ` Geert Uytterhoeven
  2019-07-08 19:45   ` Guenter Roeck
  0 siblings, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2019-07-08 19:13 UTC (permalink / raw)
  To: Guenter Roeck
  Cc: Christoph Hellwig, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k

Hi Günter,

On Mon, Jul 8, 2019 at 7:06 PM Guenter Roeck <linux@roeck-us.net> 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?

Thanks again!

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 19:13 ` Geert Uytterhoeven
@ 2019-07-08 19:45   ` Guenter Roeck
  2019-07-08 20:19     ` Geert Uytterhoeven
  0 siblings, 1 reply; 10+ messages in thread
From: Guenter Roeck @ 2019-07-08 19:45 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Christoph Hellwig, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k

On Mon, Jul 08, 2019 at 09:13:02PM +0200, Geert Uytterhoeven wrote:
> Hi Günter,
> 
> On Mon, Jul 8, 2019 at 7:06 PM Guenter Roeck <linux@roeck-us.net> 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.

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

Guenter

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 19:45   ` Guenter Roeck
@ 2019-07-08 20:19     ` Geert Uytterhoeven
  2019-07-08 20:22       ` Christoph Hellwig
  2019-07-08 20:42       ` Guenter Roeck
  0 siblings, 2 replies; 10+ messages in thread
From: Geert Uytterhoeven @ 2019-07-08 20:19 UTC (permalink / raw)
  To: Guenter Roeck
  Cc: Christoph Hellwig, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k, Greg Ungerer

Hi Günter,

CC Greg

On Mon, Jul 8, 2019 at 9:45 PM Guenter Roeck <linux@roeck-us.net> 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@roeck-us.net> 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@linux-m68k.org

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:19     ` Geert Uytterhoeven
@ 2019-07-08 20:22       ` Christoph Hellwig
  2019-07-08 20:36         ` Geert Uytterhoeven
  2019-07-08 20:42       ` Guenter Roeck
  1 sibling, 1 reply; 10+ messages in thread
From: Christoph Hellwig @ 2019-07-08 20:22 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Guenter Roeck, Christoph Hellwig, Linux Kernel Mailing List,
	Stephen Rothwell, linux-m68k, Greg Ungerer

On Mon, Jul 08, 2019 at 10:19:41PM +0200, Geert Uytterhoeven wrote:
> 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...

The fix should have been in your inbox for a while..

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:22       ` Christoph Hellwig
@ 2019-07-08 20:36         ` Geert Uytterhoeven
  2019-07-08 20:37           ` Christoph Hellwig
  0 siblings, 1 reply; 10+ messages in thread
From: Geert Uytterhoeven @ 2019-07-08 20:36 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Guenter Roeck, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k, Greg Ungerer

Hi Christoph,

On Mon, Jul 8, 2019 at 10:22 PM Christoph Hellwig <hch@lst.de> wrote:
> On Mon, Jul 08, 2019 at 10:19:41PM +0200, Geert Uytterhoeven wrote:
> > 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...

Note that the build failure is more subtle: both m5307c3_defconfig and
m5475evb_defconfig build fine in m68k/for-linus, but fail in
next-20190708.  So it fails when combined with other changes, going
in through a different tree (the DMA tree?).

> The fix should have been in your inbox for a while..

Thanks, your patch fixes that.
Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:36         ` Geert Uytterhoeven
@ 2019-07-08 20:37           ` Christoph Hellwig
  2019-07-08 20:38             ` Christoph Hellwig
  0 siblings, 1 reply; 10+ messages in thread
From: Christoph Hellwig @ 2019-07-08 20:37 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Christoph Hellwig, Guenter Roeck, Linux Kernel Mailing List,
	Stephen Rothwell, linux-m68k, Greg Ungerer

On Mon, Jul 08, 2019 at 10:36:05PM +0200, Geert Uytterhoeven wrote:
> Note that the build failure is more subtle: both m5307c3_defconfig and
> m5475evb_defconfig build fine in m68k/for-linus, but fail in
> next-20190708.  So it fails when combined with other changes, going
> in through a different tree (the DMA tree?).

Yes, the dma tree adds the stub for the symbol and adds code relying
on that.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:37           ` Christoph Hellwig
@ 2019-07-08 20:38             ` Christoph Hellwig
  2019-07-08 20:40               ` Geert Uytterhoeven
  0 siblings, 1 reply; 10+ messages in thread
From: Christoph Hellwig @ 2019-07-08 20:38 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Christoph Hellwig, Guenter Roeck, Linux Kernel Mailing List,
	Stephen Rothwell, linux-m68k, Greg Ungerer

On Mon, Jul 08, 2019 at 10:37:33PM +0200, Christoph Hellwig wrote:
> On Mon, Jul 08, 2019 at 10:36:05PM +0200, Geert Uytterhoeven wrote:
> > Note that the build failure is more subtle: both m5307c3_defconfig and
> > m5475evb_defconfig build fine in m68k/for-linus, but fail in
> > next-20190708.  So it fails when combined with other changes, going
> > in through a different tree (the DMA tree?).
> 
> Yes, the dma tree adds the stub for the symbol and adds code relying
> on that.

If you give me an ack I can add the fix to the dma-mapping pull request.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:38             ` Christoph Hellwig
@ 2019-07-08 20:40               ` Geert Uytterhoeven
  0 siblings, 0 replies; 10+ messages in thread
From: Geert Uytterhoeven @ 2019-07-08 20:40 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Guenter Roeck, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k, Greg Ungerer

Hi Christoph,

On Mon, Jul 8, 2019 at 10:38 PM Christoph Hellwig <hch@lst.de> wrote:
> On Mon, Jul 08, 2019 at 10:37:33PM +0200, Christoph Hellwig wrote:
> > On Mon, Jul 08, 2019 at 10:36:05PM +0200, Geert Uytterhoeven wrote:
> > > Note that the build failure is more subtle: both m5307c3_defconfig and
> > > m5475evb_defconfig build fine in m68k/for-linus, but fail in
> > > next-20190708.  So it fails when combined with other changes, going
> > > in through a different tree (the DMA tree?).
> >
> > Yes, the dma tree adds the stub for the symbol and adds code relying
> > on that.
>
> If you give me an ack I can add the fix to the dma-mapping pull request.

Thanks, done.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: m68k build failures in -next: undefined reference to `arch_dma_prep_coherent'
  2019-07-08 20:19     ` Geert Uytterhoeven
  2019-07-08 20:22       ` Christoph Hellwig
@ 2019-07-08 20:42       ` Guenter Roeck
  1 sibling, 0 replies; 10+ messages in thread
From: Guenter Roeck @ 2019-07-08 20:42 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Christoph Hellwig, Linux Kernel Mailing List, Stephen Rothwell,
	linux-m68k, Greg Ungerer, Linus Torvalds

On Mon, Jul 08, 2019 at 10:19:41PM +0200, Geert Uytterhoeven wrote:
> Hi Günter,
> 
> CC Greg
> 
> On Mon, Jul 8, 2019 at 9:45 PM Guenter Roeck <linux@roeck-us.net> 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@roeck-us.net> 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...
> 

Oh well, I would have hoped for another rc, not because of the state
of mainline but for the state of -next. The next release may be fun,
in a negative sense. From the build of next-20190705:

Build results:
	total: 158 pass: 147 fail: 11
Qemu test results:
	total: 364 pass: 41 fail: 323

People have been making lots of last-minute (ie in the week before
the commit window opens, and just before a holiday weekend) untested
changes. Unfortunately that happens a lot lately.

To be fair, most of the qemu failures are due to messed up btrfs
dependencies (or at least I hope so - hard to say with that many
failures), but still ...

Guenter

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-07-08 20:42 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-08 17:06 m68k build failures in -next: undefined reference to `arch_dma_prep_coherent' Guenter Roeck
2019-07-08 19:13 ` Geert Uytterhoeven
2019-07-08 19:45   ` Guenter Roeck
2019-07-08 20:19     ` Geert Uytterhoeven
2019-07-08 20:22       ` Christoph Hellwig
2019-07-08 20:36         ` Geert Uytterhoeven
2019-07-08 20:37           ` Christoph Hellwig
2019-07-08 20:38             ` Christoph Hellwig
2019-07-08 20:40               ` Geert Uytterhoeven
2019-07-08 20:42       ` Guenter Roeck

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).