public inbox for linux-mtd@lists.infradead.org
 help / color / mirror / Atom feed
From: "Jörn Engel" <joern@wohnheim.fh-wedel.de>
To: "Artem B. Bityuckiy" <dedekind@infradead.org>
Cc: Linux MTD mailing list <linux-mtd@lists.infradead.org>
Subject: Re: JFFS3 & performance
Date: Mon, 10 Jan 2005 15:24:31 +0100	[thread overview]
Message-ID: <20050110142431.GA12520@wohnheim.fh-wedel.de> (raw)
In-Reply-To: <Pine.LNX.4.58.0501091138240.19297@phoenix.infradead.org>

On Sun, 9 January 2005 11:39:42 +0000, Artem B. Bityuckiy wrote:
> Joern Engel wrote:
> > 
> > static uint32_t adler32_tailcheck(const void *buf, size_t len)
> > {
> > 	uint32_t end = *(uint32_t*) (buf + len - 4); /* last word */
> > 	return adler32(end, buf, len);
> > }
> > 
> Looks like good idea!
> 
> We do not yet sure we're going to use adler32 CRC, may be engel32 or 
> reverse version. I hope test I've written will clarify this if people run 
> it on different platforms. But preliminary results show that 
> adler32/adler32r is the winner. Will wait and see.

Same trick should help engel32 as well.  Crc32 doesn't need it,
although it might be an idea to pick a non-zero initial value.
Rationale for that was in the excellent link you passed.

> By the way, I added your name to test Copyright, as you asked :-) If you 
> mention some inconsistency/bug there, fill free to change it yourself :-)

Thanks. :)
Work has started again, so don't expect too much from me for a while.

> > Correct, although I don't care too much.  If you pull the power while
> > writing, you'll lose data.  Yes, with some care you lose less data,
> > but some extra milliseconds of power would have done the same.
> I suppose you are right if we speak about errors due to unclean reboots.

We do.

> But if we speak about errors due to Flash media corruptions? This is 
> typical for NAND if bad blocks appear from time to time. I do not know 
> exactly how does this happen. But if we suppose when it happens - just 
> several bits on some page(es) become permanently bogus, there is big 
> difference if we recover good data from these pages or not. If we do not, 
> we loose much more. For example, we may loose direntry of some important 
> file (and file will disappear).

That is the GAU for jffs2, no doubt.  If at all possible, we MUST make
sure that data is moved from the bad blocks BEFORE they rot away!
As soon as we start to lose data due to rotten flash, the design is
broken.  Users might care enough to recover as much data as possible,
embedded systems can simply be put into the nearest trash bin.

So, I don't care much about how gracefully we handle this case.  Maybe
there is a 99% chance that only redundant/obsolete data is lost.
Doesn't matter.  The same thing will happen again and after 70 such
incidents, you're down to 50%.  So all you gained is some time before
the hardware hits the bin.  Oh golly!

...

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.

Same with hard drives.  They also rot over time, but their internal
logic is good enough to hide that fact from you.  Until - one fine day
- there has been too much rot going on and it fails completely.  You
can protect against that with backups, raids or simply buying a new
driver every other year.  No fs will ever help you.

Jörn

-- 
He who knows others is wise.
He who knows himself is enlightened.
-- Lao Tsu

  reply	other threads:[~2005-01-10 14:24 UTC|newest]

Thread overview: 196+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-12-16 13:20 JFFS3 & performance 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 [this message]
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
  -- strict thread matches above, loose matches on Subject: below --
2005-01-11 12:29 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
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

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=20050110142431.GA12520@wohnheim.fh-wedel.de \
    --to=joern@wohnheim.fh-wedel.de \
    --cc=dedekind@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