public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Gerald Nowitzky" <Nowitzky@igne.de>
To: <linux-btrfs@vger.kernel.org>
Subject: Re: single disk reed solomon codes
Date: Sat, 19 Jul 2008 17:18:04 +0200	[thread overview]
Message-ID: <0cb201c8e9b2$a4272b20$0a00a8c0@ALDI2> (raw)
In-Reply-To: 3da3b5b40807190521x35477489sc06195bb182a4561@mail.gmail.com

ECC codes like Reed-Solomon are very useful to recognize and locate random 
bit-errors. On a HDD as a unit, as it is seen from OS level, I don't think 
it will be of any help: When a HDD drive reads a sector from disk, it does a 
whole bunch of error recognition and correction measures. Usually there are, 
at least, two layers of error correction with different bit spreads on it. 
*If* this still isn't enough, it is very likely that the whole sector will 
come back completely spoiled, or, much more likely, won't come back at all 
and the drive will report a read error.

So, the only thing that could be done is to add some redundancy on 
sector-level with something like a "Intra-Disk-RAID5" by adding a number of 
parity sectors. A simple parity will be enough, as error recognition and 
location can be done by sector checksums. However, there will be a *huge* 
performance penalty, as every sector write will cause an additional seek and 
write for the parity sector.

In the end, you would add very little security by the price of -at least- 
cutting half your write performance. Thus, I don't think there is any point 
in adding redundancy to single disk systems.

Just my 2 cents...
(Gerald)

>Hi,
>Since btrfs is someday going to be the default FS for Linux, and will
>be on so many single disk PCs and laptops, I was thinking it should be
>a good idea to insert some redundancy in single disk deployments. Of
>course it can help with disk failures, since it's obviously a "single"
>disk, but it can help with bit-rot, and with hardware sector read
>errors. To get that we'd need to implement some kind of forward error
>correction, possibly reed solomon code. I am not sure why no
>filesystem seems to implement such scheme, although I believe at the
>hardware level, such schemes are being used (so the idea is
>applicable) ?
>Not that I am an expert on such matters, but I thought I'd drop that
>suggestion here, maybe at least I'll know why no one else seems to do
>that


  reply	other threads:[~2008-07-19 15:18 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-19 12:21 single disk reed solomon codes Ahmed Kamal
2008-07-19 15:18 ` Gerald Nowitzky [this message]
2008-07-19 22:15   ` Joe Peterson
2008-07-20  1:21     ` Bron Gondwana
2008-07-21  6:48   ` Tomasz Torcz
2008-07-21  7:40     ` Ahmed Kamal
2008-07-21 13:03       ` Chris Mason
2008-07-21 15:03       ` Dongjun Shin
2008-08-04  6:52         ` Ahmed Kamal
2008-08-04 11:31           ` Ric Wheeler
2008-07-19 16:50 ` David Woodhouse
2008-07-19 16:53   ` Ahmed Kamal
2008-07-21 13:05   ` Chris Mason

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='0cb201c8e9b2$a4272b20$0a00a8c0@ALDI2' \
    --to=nowitzky@igne.de \
    --cc=linux-btrfs@vger.kernel.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