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

From: Guenter Roeck
Date: Mon Jul 08 2019 - 13:06:52 EST


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'