[Aboriginal] kernel build problem for m68k

Rob Landley rob at landley.net
Mon Jul 11 07:05:42 PDT 2011


On 07/10/2011 02:43 AM, Matthew J Fletcher wrote:
> Hi,
> 
> Using aboriginal 1.0.2
> 
> ----
> In file included from arch/m68k/kernel/dma.c:4:
> arch/m68k/kernel/dma_no.c: In function 'dma_sync_single_for_cpu':
> arch/m68k/kernel/dma_no.c:44: error: implicit declaration of function
> 'flush_dcache_range'
> ----

That's either a 2.6.39 bug or my m68k config needs to change for 2.6.39.

> I dont often look in the linux kernel arch stuff, but here goes..
> 
> flush_dcache_range() is a #define in cacheflush_no.h, so it looks like
> <asm/cacheflush.h> is not including cacheflush_no.h
> 
> looking at arch/m68k/include/asm/cacheflush.h there is a big fat #ifdef
> __uClinux__ i guess thats not being fulfilled ?

That should never have gone upstream into Linus's tree, uClinux is a
distro that focuses on nommu system development.  (M68000 processors are
obsolete, so most of the action these days is around a derivative called
"coldfire" that started life as a nommu system and is still mostly used
that way.)

So yeah, kernel bug.  But we need to fix it.

If you can fix it to make it build, make a "-p1" style patch (like git
diff generates, if you have to create 'em yourself diff the "linux"
directories between a vanilla version and your modified version).  Put
the patch in the "sources/patches" directory with a "linux-*.patch"
style name, and then re-run the build.  It should pick it up automatically.

The FAQ has a long, drawn out explanation of the package cache if you
care.  It makes building lots of targets faster, doesn't do so much for
building just one target:

  http://landley.net/aboriginal/FAQ.html#debug_source

Rob



More information about the Aboriginal mailing list