linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Martin Steigerwald <Martin@lichtvoll.de>
To: linux-btrfs@vger.kernel.org
Cc: "Frédéric COIFFIER" <frederic.coiffier@free.fr>
Subject: Re: How to recover uncorrectable errors ?
Date: Sat, 16 Mar 2013 19:16:54 +0100	[thread overview]
Message-ID: <201303161916.55185.Martin@lichtvoll.de> (raw)
In-Reply-To: <6033676.gK0GbPgrpE@athlonxp>

Am Freitag, 8. März 2013 schrieb Frédéric COIFFIER:
> Hi,

Hi Frédéric,

> I'm using a Linux 3.7.6 (Gentoo Linux) with btrfs-progs-0.20_rc1_p56 and since few days, I have some uncorrectable errors :
> 
> # btrfs scrub status /
> scrub status for 6b6ea99b-edee-498d-bf07-f3a3f1cba2f3
>         scrub started at Thu Mar  7 20:12:31 2013 and finished after 515 seconds
>         total bytes scrubbed: 31.02GB with 6 errors
>         error details: csum=6
>         corrected errors: 0, uncorrectable errors: 6, unverified errors: 0
> 
> I don't know what has produced this error (maybe an hard reset or a power cut) but I use an old not-SSD hard-disk.

This disk is still fine? Is smartctl -a happy with it?

> I have discovered this problem thanks to several errors in dmesg when I try to access to a file :
> 
> [ 2985.163718] btrfs: sda2 checksum verify failed on 26326409216 wanted 59A31CB1 found DFB0FE7F level 0
> [ 2985.169191] btrfs: sda2 checksum verify failed on 26326409216 wanted 59A31CB1 found DFB0FE7F level 0
[…]
> If I restart a btrfs scrub, I get these messages :
> 
> [ 3047.835131] btrfs: checksum error at logical 272228352 on dev /dev/sda2, sector 548080: metadata leaf (level 0) in tree 5
> [ 3047.835134] btrfs: checksum error at logical 272228352 on dev /dev/sda2, sector 548080: metadata leaf (level 0) in tree 5
> [ 3047.835137] btrfs: bdev /dev/sda2 errs: wr 0, rd 0, flush 0, corrupt 20, gen 0
> [ 3047.953751] btrfs: unable to fixup (regular) error at logical 272228352 on dev /dev/sda2
[…]
> I tried a LiveCD to make a btrfsck [I have to check its version] but it segfaults during the test.
> 
> Today, I can't remove the file (and I can't delete its directory), updatedb runs during hours when it tries to read this file.
> So, what is the best way to recover these errors (as I think that some files are definitely lost) ?
> I would like to identify the corrupted files and to delete them.

I thought that with recent kernels BTRFS would report the file which is
affected, but here it doesn´t seem so.

I think its also possibe to find out the file from the block number. But I
do not remember the direct way to do it. I only know the other way around
with filefrag -v or hdparm --fibmap - well actually file thinking on it,
vice versa needs to have knowledge of filesystem structure… Maybe its
possible to map something in the output in btrfs-debug-tree to above output.

But I really think BTRFS displays the filename affected meanwhile. So
maybe if it does not, its some metadata being affected? So output of btrfsck
hints at that and that you can´t remove the file does as well. What happens
if you try to remove the file? Do you get an input/output error or
something like that?

Maybe someone else can help with that.

Aside from that: Thats uncorrectable errors for a reason :)

Thanks,
-- 
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA  B82F 991B EAAC A599 84C7

  parent reply	other threads:[~2013-03-16 18:16 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-08  8:54 How to recover uncorrectable errors ? Frédéric COIFFIER
2013-03-13  8:10 ` Frédéric COIFFIER
2013-03-16 18:16 ` Martin Steigerwald [this message]
2013-03-20 13:33   ` Frédéric COIFFIER
2013-03-20 18:19     ` Chris Murphy
2013-03-20 19:24       ` Roman Mamedov
2013-03-20 20:17         ` Chris Murphy
2013-03-21  8:57         ` Frédéric COIFFIER
2013-03-21 15:09           ` Chris Murphy
2013-03-20 18:59     ` Martin Steigerwald
2013-03-20 19:06       ` cwillu
2013-03-21  8:36       ` Frédéric COIFFIER
2013-03-21 13:27         ` Martin Steigerwald
2013-03-16 18:19 ` Martin Steigerwald

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=201303161916.55185.Martin@lichtvoll.de \
    --to=martin@lichtvoll.de \
    --cc=frederic.coiffier@free.fr \
    --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;
as well as URLs for NNTP newsgroup(s).