Thanks for your reply, Jeff.

It turns out there are a couple things stopping MTD, and subsequently JFFS2, from being enabled in UML, and when I tweak things to enable MTD, sure enough the build fails.
 
First, arch/um/Kconfig has

if BROKEN
        source "drivers/mtd/Kconfig"
endif

so I need BROKEN set so I can enable MTD and subsequently JFFS2.  BROKEN is defined in init/Kconfig and as far as I can tell requires an edit to that file to change it.  Also, "BROKEN" is to be taken seriously.

Second, arch/um/Kconfig has
config NO_IOMEM
        def_bool y

and then in lib/Kconfig:
config HAS_IOMEM
        boolean
        depends on !NO_IOMEM
        default y

and then in drivers/mtd/Kconfig:
menuconfig MTD
        tristate "Memory Technology Device (MTD) support"
        depends on HAS_IOMEM

and since HAS_IOMEM is false, MTD can't be enabled.

I guess something has changed since JFFS2 apparently worked on  2.4.18-21um in 2002:
http://user-mode-linux.sourceforge.net/old/nesting.html

Oh well.  UML was really useful for another project I did, but I'll find another way for this one.

Thanks,
Tom.

On 9/28/07, Jeff Dike <jdike@addtoit.com> wrote:
On Thu, Sep 27, 2007 at 09:18:53PM -0700, atom ota wrote:
> I need to do some experiments with JFFS2 on a recent Linux kernel (2.6.22.6)
> and was hoping to use UML, with block2mtd or nandsim as my MTD, but either
> MTD configuration and consequently JFFS2 configuration isn't available in
> "make ARCH=um menuconfig", or I just can't find it.

Searching for JFFS2_FS in menuconfig gives me this:

Symbol: JFFS2_FS [=n]
Prompt: Journalling Flash File System v2 (JFFS2) support
   Defined at fs/Kconfig:1222
   Depends on: MTD
   Location:
     -> File systems
       -> Miscellaneous filesystems
   Selects: CRC32

                                Jeff

--
Work email - jdike at linux dot intel dot com