All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vitaly Fertman <vitaly@namesys.com>
To: reiserfs-list@namesys.com
Subject: Re: Corrupted/unreadable journal: reiser vs. ext3
Date: Wed, 12 Feb 2003 19:25:56 +0300	[thread overview]
Message-ID: <200302121925.56902.vitaly@namesys.com> (raw)
In-Reply-To: <3452483515.20030212001747@tnonline.net>

On Wednesday 12 February 2003 02:17, Anders Widman wrote:
> >> I've used ReiserFS in the past, but have also used ext3 on my
> >> user's important
> >> data (/home) after a good chunk of one drive was converted to
> >> sparse/null files due to a screwup stemming from no 'badblocks' support
> >> in reiserfs.  Since then, i've used ext3 as well as Reiser but recently
> >
> > I can't comment on your experience, but personally if I have a drive with
> > any number of badblocks (which are showing up to the fs layer, not
> > invisibly re-mapped by the drive) then I take the drive back and get a
> > replacement, or bin the drive.
>
> However,  the FS SHOULD support handling of bad blocks/clusters at the
> FS  layer,  even  while running in a production system. Bad blocks can
> pop  up  at any give time for no particular reason, and it is at these
> times  you  (we) need a strong and reliable filesystem that can handle
> and logically remap broken blocks/sectors.
>
> Sure,  a  disk  with physical errors should be replaced, but until you
> find out about the error on the drive the FS HAS TO HANDLE these kinds
> of problems.

That is difficult to say if bad blocks should be handled at fs layer or not. 
It would be useful to have this problem solved somehow, but harddrives with 
their remappings looks like the proper part of doing this. And probably fs 
layer should just skilfully use some interface for such remapping. Well, 
remapping is probably not correct word here. Thus, Xuan Baldauf 
<xuan--reiserfs@baldauf.org> sent us his program once claimed that it recovered 
blocks w/out remapping. The explanations were the following:

> The problem is that often multiple adjacent blocks are bad. You'll have to detect
> them manually. Once you know the bad blocks, just trying to overwrite them usually
> does not succeed because the disk wants to seek to that block exactly (which does
> not work for the same reason the block is bad). But if the whole track is
> rewritten, the bad blocks usually are gone.
>
> I suspect track wandering for this: due to small misalignments at each write, a track (or more
> precisely, and arc of the track which contains the block to be written) slowly wanders. If the
> misalignments do not zero out each other, they add up to a bias. If an arc of an has been
> written many times, it will have wandered under these conditions. If the wandering has
> progressed too far, the wandering arc slowly reaches the next neighbouring track.
>
> Now imagine an access to the wandered track: if the head seeks to the original position of the
> wandered track, it may not be able to read the wandered arc because it is too far away (lower
> signal quality). If the head seeks to the new position of the wandered arc, the signal may be
> interfered by the neighbouring track.
>
> Both effects may occur, which one does not really matter, both makes parts of the wandered arc
> inaccessible
>
> The problem is: the individual wandered arc is no longer accessible, because the disk
> controller cannot sync to the block it is flying over because of the bad
> signal-to-noise-ratio. And if the wandered arc is accessible, another write will make it
> further wander up to inaccessibility.
>
> But if the seek to the track of the arc which should be overwritten occurs before the wandered
> arc, the disk controller actually can sync to the track and then write the whole track,
> effectivily creating the track new and only having the bias of the not-wandered part of the
> track. Thus, the wandered arc has not wandered anymore compared to the other arcs of the
> track.

Well, it worked. We had some bad blocks on a drive, write to them failed, after using 
this program there were no bad blocks anymore. 

So it would be possible to do some actions to 1) get some blocks back in the described 
way, 1.1) write to really bad blocks should have remaped them already here if there is 
a space in remap area 2) save bad blocks to badblock list in fs if they are still bad - 
out of remap area. 
Would be not bad to try to recover in this way already remapped blocks - do not know how 
to get the list of them only.

Ok, but what if the IO error you got is not a bad block, but a bad cable? Do you want 
the fs to work in the described way? trying to fix all automatically? I am not sure. 
Now about the user space. Using badblocks and some programs like Xuan Baldauf sent us
and just trying to write to bad blocks make them being remapped - that is how you can 
try to get rid of some amount of badblocks. Should a drive with amount of bad blocks 
which exceeds the remap area be used? It is a realy rare case that the amount of bad 
blocks of such a drive does not get increased - the case where you may want to continue 
using the drive - so this is why a proper support for bad blocks was not implemented 
in reiserfs yet. And probably it is not the most urgent thing to do. 

-- 

Thanks,
Vitaly Fertman

  parent reply	other threads:[~2003-02-12 16:25 UTC|newest]

Thread overview: 99+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-02-11 18:59 Corrupted/unreadable journal: reiser vs. ext3 Dirk Schenkewitz
2003-02-11 20:27 ` Hans Reiser
2003-02-11 21:30   ` Mike Hodson
2003-02-11 21:47     ` Hans Reiser
2003-02-11 21:58     ` Hans Reiser
2003-02-12  6:35       ` Oleg Drokin
2003-02-11 23:11     ` Adam Goryachev
2003-02-11 23:17       ` Anders Widman
2003-02-12  0:12         ` Hans Reiser
2003-02-12 10:23           ` Anders Widman
2003-02-12 10:47             ` Hans Reiser
2003-02-12 11:12               ` Adam Goryachev
2003-02-12 13:42                 ` Anders Widman
2003-02-12 14:15                   ` Russell Coker
2003-02-12 15:26                     ` Anders Widman
2003-02-12 16:22                       ` bscott
2003-02-12 16:28                       ` Russell Coker
2003-02-12 16:40                         ` Anders Widman
2003-02-13  3:42                       ` Zygo Blaxell
2003-02-13 10:13                         ` Anders Widman
2003-02-13 14:44                           ` Rudy Zijlstra
2003-02-13  3:31                     ` Zygo Blaxell
     [not found]                       ` <20030213113003.7ee7af6e.philippe.gramoulle@mmania.com>
2003-02-13 18:17                         ` rijndael loopback encryption was [Re: Corrupted/unreadable journal: reiser vs. ext3] Zygo Blaxell
2003-02-12 16:39                 ` Corrupted/unreadable journal: reiser vs. ext3 Sam Vilain
2003-02-12  5:12         ` Ross Vandegrift
2003-02-12  7:17         ` Oleg Drokin
2003-02-12 10:17         ` Alexander Lyamin
2003-02-12 10:19           ` Alexander Lyamin
2003-02-12 16:25         ` Vitaly Fertman [this message]
2003-02-12 16:56           ` Anders Widman
2003-02-12 17:13             ` Oleg Drokin
2003-02-12  1:02       ` Mike Hodson
2003-02-12  7:25         ` Oleg Drokin
2003-02-12  9:45         ` Hans Reiser
2003-02-12 16:09         ` Sam Vilain
2003-02-12 10:11 ` trolling Alexander Lyamin
2003-02-12 12:32   ` trolling Dirk Schenkewitz
2003-02-12 14:48   ` trolling Chris Mason
2003-02-13 19:54   ` trolling Zygo Blaxell
  -- strict thread matches above, loose matches on Subject: below --
2003-02-11 19:43 Corrupted/unreadable journal: reiser vs. ext3 berthiaume_wayne
2003-02-12 10:48 ` Dirk Schenkewitz
2003-02-12 10:59   ` Hans Reiser
2003-02-12 11:24     ` Frank Baumgart
2003-02-12 11:35       ` Stefan Traby
2003-02-12 11:54     ` Dirk Schenkewitz
2003-02-12 12:42       ` Hans Reiser
2003-02-12 13:25         ` Dirk Schenkewitz
2003-02-12 16:22 ` Sam Vilain
2003-02-12 16:53   ` Anders Widman
2003-02-12 17:19     ` Hans Reiser
2003-02-12 17:40       ` Anders Widman
2003-02-12 18:15         ` Dirk Mueller
2003-02-12 18:20           ` Anders Widman
2003-02-12 18:20         ` Chris Dukes
2003-02-13 20:08   ` Zygo Blaxell
2003-02-12 18:27 Anders Widman
2003-02-12 20:05 Dirk Schenkewitz
2003-02-13 22:49 ` Zygo Blaxell
2003-02-14  0:32   ` Hans Reiser
2003-02-14  8:18     ` Oleg Drokin
2003-02-14 10:13       ` Andreas Dilger
2003-02-14 10:17         ` Oleg Drokin
2003-02-14 10:50           ` Andreas Dilger
2003-02-14 10:59             ` Oleg Drokin
2003-02-14 13:34             ` Hans Reiser
2003-02-14 16:04               ` Rudy Zijlstra
2003-02-14 19:06               ` Andreas Dilger
2003-02-14 19:19                 ` Hans Reiser
2003-02-15 12:51                   ` Vitaly Fertman
2003-02-15 13:00                     ` Vitaly Fertman
2003-02-18 19:50                       ` Hans Reiser
2003-02-18 20:05                         ` Vitaly Fertman
2003-02-18 22:18                           ` Hans Reiser
2003-02-15 13:04                     ` Anders Widman
2003-02-15 13:23                       ` Oleg Drokin
2003-02-17 19:43                     ` Hans Reiser
2003-02-15 22:37                   ` Andreas Dilger
2003-02-18 18:21                     ` Hans Reiser
2003-02-18 19:22                       ` Oleg Drokin
2003-02-18 19:28                         ` Hans Reiser
2003-02-18 21:17                     ` Valdis.Kletnieks
2003-02-18 22:02                       ` Matthias Andree
2003-02-19  6:26                         ` Oleg Drokin
2003-02-18 22:23                       ` Hans Reiser
2003-02-12 20:57 Dirk Schenkewitz
2003-02-14  0:16 Sam Vilain
2003-02-23 23:10 ` Zygo Blaxell
2003-02-14  0:17 Sam Vilain
2003-02-14  0:18 Sam Vilain
2003-02-23 23:31 ` Zygo Blaxell
2003-02-24  1:14   ` Anders Widman
2003-02-14 14:20 Dirk Schenkewitz
2003-02-14 20:58 ` Valdis.Kletnieks
2003-02-14 14:30 Dirk Schenkewitz
2003-02-17 10:04 Dirk Schenkewitz
2003-02-20  1:27 ` Juan Quintela
2003-02-20  9:03   ` Anders Widman
2003-02-20  9:55 Dirk Schenkewitz
2003-02-20 10:20 ` Anders Widman

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=200302121925.56902.vitaly@namesys.com \
    --to=vitaly@namesys.com \
    --cc=reiserfs-list@namesys.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.