On Tuesday 18 December 2007 13:29:11 Jeff Dike wrote:
> On Tue, Dec 18, 2007 at 12:45:23PM -0600, Rob Landley wrote:
> > There's a way to make a loopback device look like a flash device, letting
> > you loopback mount jffs2, but it involves recompiling the kerenel to add
> > support for it, and of course I went "User Mode Linux"... Except
> > that UML disables the flash menu entirely.
> >
> > Suggestions?
>
> I see this in menuconfig:
>
> Symbol: MTD [=n]
> Prompt: Memory Technology Device (MTD) support
> Defined at drivers/mtd/Kconfig:3
> Depends on: BROKEN && HAS_IOMEM
>
> You could try removing the dependencies on BROKEN and HAS_IOMEM and
> see what happens...
Actually, in -rc4 (what I have lying around), the depends is just on HAS_IOMEM,
and the include in arch/um/Kconfig is guarded by "if BROKEN".
Building it, I hit the same darn error I've been patching my way around for
months:
> CC arch/um/kernel/smp.o
> In file included from include/asm/arch/tlb.h:9,
> from include/asm/tlb.h:4,
> from arch/um/kernel/smp.c:8:
> include/asm-generic/tlb.h: In function ‘tlb_flush_mmu’:
> include/asm-generic/tlb.h:76: error: implicit declaration of function
> ‘release_pages’ include/asm-generic/tlb.h: In function ‘tlb_remove_page’:
> include/asm-generic/tlb.h:105: error: implicit declaration of function
> ‘page_cache_release’ make[1]: *** [arch/um/kernel/smp.o] Error 1
> make: *** [arch/um/kernel] Error 2
Patch that, and then it breaks with:
> CC drivers/mtd/chips/chipreg.o
> In file included from drivers/mtd/chips/chipreg.c:13:
> include/linux/mtd/map.h: In function ‘inline_map_read’:
> include/linux/mtd/map.h:378: error: implicit declaration of function
> ‘__raw_readb’ include/linux/mtd/map.h:380: error: implicit declaration of
> function ‘__raw_readw’ include/linux/mtd/map.h:382: error: implicit
> declaration of function ‘__raw_readl’ include/linux/mtd/map.h:385: error:
> implicit declaration of function ‘__raw_readq’ include/linux/mtd/map.h:388:
> error: implicit declaration of function ‘memcpy_fromio’
> include/linux/mtd/map.h: In function ‘inline_map_write’:
> include/linux/mtd/map.h:406: error: implicit declaration of function
> ‘memcpy_toio’ make[3]: *** [drivers/mtd/chips/chipreg.o] Error 1
> make[2]: *** [drivers/mtd/chips] Error 2
> make[1]: *** [drivers/mtd] Error 2
All I enabled was CONFIG_MTD_BLOCK.
To reproduce what I did, yank these lines:
diff -ru linux-2.6.24-rc4/arch/um/Kconfig linux-temp/arch/um/Kconfig
--- linux-2.6.24-rc4/arch/um/Kconfig 2007-12-03 22:26:10.000000000 -0600
+++ linux-temp/arch/um/Kconfig 2007-12-18 15:28:49.000000000 -0600
@@ -280,9 +280,7 @@
source "drivers/md/Kconfig"
-if BROKEN
source "drivers/mtd/Kconfig"
-endif
#This is just to shut up some Kconfig warnings, so no prompt.
config INPUT
diff -ru linux-2.6.24-rc4/arch/um/kernel/smp.c linux-temp/arch/um/kernel/smp.c
--- linux-2.6.24-rc4/arch/um/kernel/smp.c 2007-12-03 22:26:10.000000000
-0600
+++ linux-temp/arch/um/kernel/smp.c 2007-12-18 15:30:49.000000000 -0600
@@ -5,6 +5,7 @@
#include "linux/percpu.h"
#include "asm/pgalloc.h"
+#include "linux/pagemap.h"
#include "asm/tlb.h"
/* For some reason, mmu_gathers are referenced when CONFIG_SMP is off. */
diff -ru linux-2.6.24-rc4/drivers/mtd/Kconfig linux-temp/drivers/mtd/Kconfig
--- linux-2.6.24-rc4/drivers/mtd/Kconfig 2007-12-03 22:26:10.000000000
-0600
+++ linux-temp/drivers/mtd/Kconfig 2007-12-18 15:24:41.000000000 -0600
@@ -2,7 +2,6 @@
menuconfig MTD
tristate "Memory Technology Device (MTD) support"
- depends on HAS_IOMEM
help
Memory Technology Devices are flash, RAM and similar chips, often
used for solid state file systems on embedded devices. This option
And then configure and build like so:
cat > mini.conf << EOF
CONFIG_BINFMT_ELF=y
CONFIG_HOSTFS=y
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_STDERR_CONSOLE=y
CONFIG_UNIX98_PTYS=y
CONFIG_EXT2_FS=y
CONFIG_MTD=y
CONFIG_MTD_BLOCK=y
EOF
make ARCH=um allnoconfig KCONFIG_ALLCONFIG=mini.conf
make ARCH=um
Rob
--
"One of my most productive days was throwing away 1000 lines of code."
- Ken Thompson.
-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel