Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Feb 2006 11:02:04 -0800
From:      Bakul Shah <bakul@BitBlocks.com>
To:        "M. Warner Losh" <imp@bsdimp.com>
Cc:        hackers@freebsd.org
Subject:   Re: Bad block -> file mapping 
Message-ID:  <200602181902.k1IJ243D041278@gate.bitblocks.com>
In-Reply-To: Your message of "Sat, 18 Feb 2006 10:47:49 MST." <20060218.104749.104696960.imp@bsdimp.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>                                     However, I'd kinda like to know
> which file that is.  If it is a boring file (foo.o, say), I'd dd the
> bad block with 0's and then remove it.  If it is a non-boring file,
> I'd try to recover it a couple of times, etc.

So you want a function that does this?

    LBA -> slice/partition/offset -> fs/inode -> list of file names

Logic for the second step should be in fsck.

I haven't kept uptodate on disk stds so likely I am talking
through my hat but in ST506 there used to be a diagnostic
read function that returned the bad block and its CRC.  That
allows at least a chance of a manual correction.

> Once I have the file in BAD, I'd planned on overwriting it with 0's
> and then removing it if I could read the block again.

Why do you care?

> Maybe there's a better way to cope, maybe not.  I don't know.  Hence
> my question :-).
> 
> This is with an ata disk, btw.

My sympathies.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602181902.k1IJ243D041278>