public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: Jared Hulbert <jaredeh@gmail.com>
To: "Artem B. Bityuckiy" <dedekind@infradead.org>
Cc: David Woodhouse <dwmw2@infradead.org>,
	MTD List <linux-mtd@lists.infradead.org>
Subject: Re: JFFS3 & performance
Date: Wed, 12 Jan 2005 08:41:04 -0800	[thread overview]
Message-ID: <6934efce050112084111ef438c@mail.gmail.com> (raw)
In-Reply-To: <Pine.LNX.4.58.0501120913180.10617@phoenix.infradead.org>

Clarification on NOR technology.  Remember that the ability to run
code XIP is effectively a requirement for a NOR chip.  This means no
read errors can leave the chip.  I don't see this changing in the
foreseeable future.  Any read errors that do occur would probably be
caused by a failed/incomplete program.

We probably do want to be able to easily retire, reprogram, and/or
test those blocks/pages that get read errors.  That would have to be
done in the filesystem and the chip driver needs to be able report a
read error occured.

Any chance of being able store special files XIP in JFFS3? 
Uncompressed aligned page sized chunks, etc.


,Jared



On Wed, 12 Jan 2005 09:15:42 +0000 (GMT), Artem B. Bityuckiy
<dedekind@infradead.org> wrote:
> Hi Joern,
> 
> please, read the paper
> http://www.semicon.toshiba.co.jp/eng/prd/memory/doc/pdf/nand_applicationguide_e.pdf
> I like this paper. I've just reread it and now I have no doubts that CRCs
> are required on NAND. :-)
> 
> Shortly: errors are normal phenomena on NAND devices. Errors are mostly
> handled by NAND ECCs, but
> JFFS[23] MUST take care about failures and handle them properly. There
> are permanent and occasional
> errors exist. Blocks with permanent errors must be marked bad and it is
> good to recover data...
> 
> On Tue, 11 Jan 2005, [iso-8859-1] Jörn Engel wrote:
> > On Tue, 11 January 2005 12:29:33 +0000, Artem B. Bityuckiy wrote:
> > > Ferenc Havasi:
> > > >If I am right CRCs are not only against the effect of unclean reboots
> > > >but also to handle flash errors. On NAND flashes the ECC handles this
> > > >problem but NOR doesn't have any error detection system.
> > >
> > > Joern Engel wrote:
> > > >So either we can make sure this case never happens, or we can't.  It
> > > >depends on the type of flash, for sure, and it may be pretty hard with
> > > >some types.  But if it doesn't work at all, the flash is broken,
> > > >period.
> > >
> > > Hi, that is really interesting, *why* do we need CRCs in JFFS2?
> > >
> > > Do we need CRC *only* to handle unclean reboots? If so, we may possibly
> > > handle it another way, just putting some magic word at the end of node.
> > > Possibly, no need for CRC at all.
> > >
> > > Joern stands that if Flash got rotten, we *do not need* to do something
> > > special trying to recover data. Am I right?
> >
> > Pretty much.  Detecting the breakage is still a good thing, so we can
> > report an error.  There are non-embedded devices with flash and users
> > want to see the problem and replace their flash.  But apart from that,
> > don't try too hard to fix something that cannot be fixed.
> >
> > > I still think we need to do recovery in case of NAND, mark the rotten
> > > block bad and keep working, so we still need CRC. In case of NOR, we
> > > possibly should just report error and do nothing (we can't mark block bad
> > > there). Do not know about ECC NOR.
> > >
> > > Comments?
> >
> > Ok, here is my approach.
> >
> > Claim: No mtd has problems with lost data due to bad blocks.  This is
> > a complete non-issue and jffs[23] doesn't care.
> >
> > "No" means that less than .001% (add or remove some digits, depending
> > on your needs) of all devices have this problem.  In those cases, the
> > system just won't work and will be replaced.  Business as usual.
> >
> > Now, if any particular flash doesn't match this requirement, the mtd
> > driver is supposed to mirror all blocks.  If either copy rots away,
> > the data can still be read back from the other block.  After GC, the
> > block can be marked as bad and everyone lives on happily ever after.
> >
> > Capacity is half the original, but that's better than losing
> > /sbin/init now and then, right?  And maybe the flash is cheap enough
> > that noone cares.
> >
> > Sane?
> >
> > > P.S. By the way, we could put CRCs at the end of blocks (*after* data) -
> > > in this case CRC well be extremely strong detecting unclean reboots, isn't
> > > it?
> >
> > Interesting idea.  Will make the code slightly messy, but it should be
> > worth it.
> >
> > Jörn
> >
> > --
> > Do not stop an army on its way home.
> > -- Sun Tzu
> >
> 
> --
> Best Regards,
> Artem B. Bityuckiy,
> St.-Petersburg, Russia.
> 
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>

  reply	other threads:[~2005-01-12 16:41 UTC|newest]

Thread overview: 196+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-01-11 12:29 JFFS3 & performance Artem B. Bityuckiy
2005-01-11 14:37 ` Josh Boyer
2005-01-11 21:51 ` Jörn Engel
2005-01-12  0:06   ` Thomas Gleixner
2005-01-12 16:59     ` Jörn Engel
2005-01-12 17:37       ` Thomas Gleixner
2005-01-12 18:17         ` Jörn Engel
2005-01-12  9:15   ` Artem B. Bityuckiy
2005-01-12 16:41     ` Jared Hulbert [this message]
2005-01-12 17:02       ` Jörn Engel
2005-01-12 17:06         ` David Woodhouse
2005-01-12 17:11           ` Jörn Engel
2005-01-12 17:22         ` Jared Hulbert
2005-01-12 17:28           ` Artem B. Bityuckiy
2005-01-12 17:34           ` David Woodhouse
2005-01-12 17:45             ` Dan Post
2005-01-12 17:52               ` David Woodhouse
2005-01-12 17:14       ` Artem B. Bityuckiy
2005-01-12 22:30         ` Jared Hulbert
2005-01-12 22:43           ` Josh Boyer
2005-01-12 22:55             ` Jared Hulbert
2005-01-13 15:50               ` Josh Boyer
2005-01-13 18:30                 ` Jared Hulbert
2005-01-13 18:36                   ` David Woodhouse
2005-01-13 19:06                     ` Jörn Engel
2005-01-13 19:22                     ` Josh Boyer
2005-01-13 18:55                   ` Artem B. Bityuckiy
2005-01-13 19:10                     ` Brian Fox
2005-01-13 19:23                       ` Artem B. Bityuckiy
2005-01-28  6:08                   ` Eric W. Biederman
2005-01-13  7:54             ` David Woodhouse
2005-01-13  8:25           ` Artem B. Bityuckiy
2005-01-13 15:09           ` Jörn Engel
2005-01-12 18:10     ` Jörn Engel
2005-01-12 18:27       ` Thomas Gleixner
2005-01-12 18:40         ` Jörn Engel
2005-01-12 18:42           ` David Woodhouse
2005-01-12 18:43           ` Artem B. Bityuckiy
2005-01-12 19:16           ` Thomas Gleixner
2005-01-12 19:44             ` Jörn Engel
2005-01-12 19:53               ` Thomas Gleixner
2005-01-12 20:06                 ` Jörn Engel
2005-01-12 18:33       ` Artem B. Bityuckiy
2005-01-12 18:43         ` Jörn Engel
2005-01-12 18:45           ` Artem B. Bityuckiy
2005-01-12 18:58             ` Artem B. Bityuckiy
2005-01-12 19:50               ` Jörn Engel
2005-01-13 14:49   ` Artem B. Bityuckiy
2005-01-13 15:05     ` Artem B. Bityuckiy
2005-01-13 15:17       ` Jörn Engel
2005-01-13 15:22         ` Artem B. Bityuckiy
2005-01-13 15:40           ` Jörn Engel
2005-01-13 15:49             ` David Woodhouse
2005-01-13 15:53               ` Artem B. Bityuckiy
2005-01-13 16:13               ` Jörn Engel
2005-01-13 16:16                 ` Artem B. Bityuckiy
2005-01-13 16:21                   ` Jörn Engel
2005-01-13 16:22                     ` Artem B. Bityuckiy
2005-01-13 16:21                 ` Artem B. Bityuckiy
2005-01-14 13:46                   ` Jamey Hicks
2005-01-14 14:16                     ` Artem B. Bityuckiy
2005-01-18 15:50                       ` Joakim Tjernlund
2005-01-19 13:07                         ` Artem B. Bityuckiy
2005-01-19 15:24                           ` Jörn Engel
2005-01-19 15:27                             ` Artem B. Bityuckiy
2005-01-19 15:32                               ` Jörn Engel
2005-01-19 15:51                                 ` Artem B. Bityuckiy
2005-01-19 16:31                                   ` Jörn Engel
2005-01-19 19:58                                 ` Artem B. Bityuckiy
2005-01-20 14:35                                   ` Jörn Engel
2005-01-20 14:37                                     ` David Woodhouse
2005-01-20 14:40                                       ` Jörn Engel
2005-01-20 15:05                                     ` Artem B. Bityuckiy
2005-01-20 15:27                                       ` Jörn Engel
2005-01-20 15:37                                         ` Artem B. Bityuckiy
2005-01-20 16:13                                           ` Jörn Engel
2005-01-20 16:31                                             ` Artem B. Bityuckiy
2005-01-20 16:41                                               ` Jörn Engel
2005-01-20 17:08                                                 ` Artem B. Bityuckiy
2005-01-20 17:33                                                   ` Jörn Engel
2005-01-20 17:57                                                     ` Artem B. Bityuckiy
2005-01-21 12:44                                                       ` Jörn Engel
2005-01-21 13:13                                                         ` Artem B. Bityuckiy
2005-01-21 13:42                                                           ` Jörn Engel
2005-01-21 13:52                                                             ` Artem B. Bityuckiy
2005-01-21 14:00                                                               ` Jörn Engel
2005-01-21 14:04                                                             ` Artem B. Bityuckiy
2005-01-25 10:51                                                               ` Jörn Engel
2005-01-25 10:56                                                                 ` David Woodhouse
2005-01-25 11:13                                                                   ` Jörn Engel
2005-01-21 14:30                                                     ` Josh Boyer
2005-01-21 22:33                                     ` Jared Hulbert
2005-01-21 22:46                                   ` Jared Hulbert
2005-01-21 23:54                                     ` Josh Boyer
2005-01-22 13:03                                     ` Artem B. Bityuckiy
2005-01-22 22:04                                       ` David Woodhouse
2005-01-23 10:03                                         ` Artem B. Bityuckiy
2005-01-23 10:08                                           ` Artem B. Bityuckiy
2005-01-23 11:04                                           ` David Woodhouse
2005-01-23 11:55                                             ` Artem B. Bityuckiy
  -- strict thread matches above, loose matches on Subject: below --
2004-12-16 13:20 Joakim Tjernlund
2004-12-16 14:27 ` Artem B. Bityuckiy
2004-12-16 14:45   ` Joakim Tjernlund
2004-12-16 14:50     ` Artem B. Bityuckiy
2004-12-16 15:00       ` Joakim Tjernlund
2004-12-16 17:53     ` Jörn Engel
2004-12-16 18:42       ` Artem B. Bityuckiy
2004-12-16 19:15         ` Jörn Engel
2004-12-16 19:49           ` Jörn Engel
2004-12-16 19:58             ` Joakim Tjernlund
2004-12-16 20:46               ` Jörn Engel
2004-12-16 20:02             ` Joakim Tjernlund
2004-12-16 20:37               ` Thomas Gleixner
2004-12-16 20:51                 ` Jörn Engel
2004-12-16 21:02                   ` Thomas Gleixner
2004-12-16 21:06                   ` Joakim Tjernlund
2004-12-16 21:22                     ` Jörn Engel
2004-12-16 22:06                       ` Joakim Tjernlund
2004-12-17 10:25                         ` Jörn Engel
2004-12-17 10:44                           ` Joakim Tjernlund
2004-12-17 10:56                             ` Artem B. Bityuckiy
2004-12-17 10:46                               ` jasmine
2004-12-17 11:01                                 ` Artem B. Bityuckiy
2004-12-17 11:19                                   ` Joakim Tjernlund
2004-12-18 16:09                                     ` Jörn Engel
2004-12-18 16:26                                       ` Joakim Tjernlund
2004-12-18 16:52                                         ` Jörn Engel
2004-12-17 11:10                               ` Joakim Tjernlund
2004-12-17 11:20                                 ` Artem B. Bityuckiy
2004-12-22 13:36                                   ` Artem B. Bityuckiy
2004-12-22 14:03                                     ` Jörn Engel
2004-12-22 14:44                                       ` Artem B. Bityuckiy
2004-12-22 15:14                                         ` Jörn Engel
2004-12-22 15:25                                           ` Artem B. Bityuckiy
2004-12-22 16:08                                             ` Jörn Engel
2004-12-22 20:22                                             ` xemc
2004-12-22 20:43                                               ` xemc
2004-12-22 20:49                                                 ` Jasmine Strong
2004-12-22 15:30                                           ` Joakim Tjernlund
2004-12-22 15:37                                             ` Artem B. Bityuckiy
2004-12-22 15:47                                               ` Joakim Tjernlund
2004-12-22 15:56                                                 ` Artem B. Bityuckiy
2004-12-22 16:09                                                   ` Jörn Engel
2004-12-22 16:17                                                     ` Artem B. Bityuckiy
2004-12-22 16:43                                                       ` Joakim Tjernlund
2004-12-22 16:46                                                         ` Artem B. Bityuckiy
2004-12-22 17:26                                                       ` Jörn Engel
2004-12-22 18:14                                                         ` xemc
2004-12-22 18:20                                                           ` Artem B. Bityuckiy
2004-12-23 13:52                                                           ` Jörn Engel
2004-12-23 17:02                                                             ` Artem B. Bityuckiy
2005-01-07 11:10                                                               ` Artem B. Bityuckiy
2005-01-07 11:09                                                                 ` David Woodhouse
2005-01-07 11:27                                                                   ` jasmine
2005-01-07 11:43                                                                     ` Artem B. Bityuckiy
2005-01-07 14:23                                                                       ` Artem B. Bityuckiy
2005-01-07 14:27                                                                         ` jasmine
2005-01-07 14:33                                                                           ` Artem B. Bityuckiy
2005-01-07 14:37                                                                             ` jasmine
2005-01-07 14:43                                                                               ` Artem B. Bityuckiy
2005-01-07 14:55                                                                                 ` jasmine
2005-01-07 15:20                                                                                   ` Artem B. Bityuckiy
2005-01-07 15:24                                                                                     ` jasmine
2005-01-07 15:28                                                                                       ` Artem B. Bityuckiy
2005-01-07 15:31                                                                                         ` jasmine
2005-01-07 15:32                                                                                           ` Artem B. Bityuckiy
2005-01-07 17:57                                                                                       ` Artem B. Bityuckiy
2005-01-07 14:50                                                                               ` Artem B. Bityuckiy
2005-01-07 14:31                                                                         ` Artem B. Bityuckiy
2005-01-06 10:08                                                             ` Artem B. Bityuckiy
2005-01-08 20:14                                                               ` Jörn Engel
2005-01-09 11:39                                                                 ` Artem B. Bityuckiy
2005-01-10 14:24                                                                   ` Jörn Engel
2004-12-22 15:59                                                 ` jasmine
2004-12-22 16:19                                                   ` Jörn Engel
2004-12-22 16:21                                                   ` Artem B. Bityuckiy
2004-12-22 15:56                                             ` Jörn Engel
2004-12-22 16:39                                               ` Joakim Tjernlund
2004-12-22 17:33                                                 ` Jörn Engel
2004-12-17 11:20                               ` Jörn Engel
2004-12-18 12:23                                 ` Artem B. Bityuckiy
2004-12-21 14:45       ` Artem B. Bityuckiy
2004-12-21 16:03         ` Jörn Engel
2004-12-17 11:33 ` David Vrabel
2004-12-17 15:34   ` Joakim Tjernlund
2004-12-18 16:14   ` Jörn Engel
2004-12-18 16:25     ` Joakim Tjernlund
2004-12-18 16:39       ` Jörn Engel
2004-12-18 17:10     ` Joakim Tjernlund
2004-12-18 17:19       ` Jörn Engel
2004-12-18 17:51         ` Joakim Tjernlund
2004-12-18 17:59           ` Jörn Engel
2004-12-18 18:13             ` Joakim Tjernlund
2004-12-19  3:05               ` Jörn Engel
2004-12-18 18:09           ` Joakim Tjernlund
2004-12-21 14:38 ` Jörn Engel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6934efce050112084111ef438c@mail.gmail.com \
    --to=jaredeh@gmail.com \
    --cc=dedekind@infradead.org \
    --cc=dwmw2@infradead.org \
    --cc=linux-mtd@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox