[ECOS] JFFS2 on ARM target

Doyle, Patrick WPD@dtccom.com
Wed Mar 8 20:00:00 GMT 2006

I'm confused by something I'm seeing with JFFS2 on my arm target, and I was
wondering if anybody else had seen anything similar.

Basically, what I see is that when JFFS2 goes through and marks a block as
being erased, it seems to me that it should be writing 'JFFS2_MAGIC_BITMASK'
(0x1985) to the marker for the block.  What I'm seeing is that 0x2003 gets
written into the marker field.

Staring at disassembled code for a couple of hours makes me believe that
this is, in fact, exactly what the opcodes are telling the CPU to do,
despite what one would expect from looking at the C code.

So now I'm curious... are there known bugs with gcc 3.2.1 for the ARM that
make it a terrible candidate for processing linux-like code that includes
constructs such as:

struct jffs2_unknown_node marker = {
	.magic =	cpu_to_je16(JFFS2_MAGIC_BITMASK),
	.nodetype =	cpu_to_je16(JFFS2_NODETYPE_CLEANMARKER),
	.totlen =	cpu_to_je32(c->cleanmarker_size)

I've been using 3.2.1 for years without problems, but I've been using it in
eCos to do eCos related stuff.  Since JFFS2 was originally designed for
Linux, it looks more Linux-like than eCos-like.

I notice I've been using 3.4.5 for my Linux builds.


Patrick Doyle
Manager, Digital Systems Group
DTC Communications, Inc.
Phone: (603) 546-2179
Fax: (603) 880-6965
Email: wpd@dtccom.com


This communication is from DTC Communications, Inc. and is intended to be
confidential and solely for the use of the persons or entities addressed
above.  If you are not an intended recipient, be aware that the information
contained herein may be protected from unauthorized use by privilege or law,
and any copying, distribution, disclosure, or other use of this information
is prohibited.  If you have received this communication in error, please
contact the sender by return e-mail or telephone the above number
immediately and delete or destroy all copies.  Thank you for your

Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

More information about the Ecos-discuss mailing list