lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 24 Aug 2006 16:09:41 +0100
From:	Johan Groth <johan.groth@...ux-grotto.org.uk>
To:	Mark Lord <lkml@....ca>
CC:	linux-kernel@...r.kernel.org
Subject: Re: Scsi errors with Megaraid 300-8x

Mark Lord wrote:
> Johan Groth wrote:
>> Justin Piszcz wrote:
>>> Run badblocks in r+w mode on the bad disk and it will force the disk 
>>> to re-allocate the bad sector if it can.
>>>
>>> Justin.
>>
>> Is that possible to do in a non-destructive way? I don't want to loose 
>> all data and apparently I can't back it up either :(.
> 
> Yes, it is perfectly doable, but I don't think anyone has yet bothered
> to release a utility that actually does it.
> 
> OPPORTUNITY FOR FAME AND FORTUNE! (okay, maybe just some fame):
> =================================
> Hack the existing smartctl code to read out the failed sector numbers,
> and then issue single-sector read-overwrite to each of those bad sectors.
> 
> Very simple code.  I'll do it myself eventually, but please beat me to it!

Authors of badblocks already has with the -n option :). When I ran 
badblocks on the entire partition it wanted to check over 210 million 
blocks and when it finally came to the bad sector parts the controller 
lost the drive and the kernel started to spit out scsi errors! Buggy 
driver, hardware error? God knows. Unfortunately I don't have a log to 
show you as I was in single user mode.

I would like to run badblocks again but only around the damaged part. 
Thing is that I know which sector the kernel thinks is bad but badblocks 
wants to know which block to start and end at. How do I convert a sector 
number to block number. The partition is a standard XFS partition, ie I 
haven't made any changes to block sizes when I formatted it.

Got this from xfs_info:
meta-data=/dev/sda7              isize=256    agcount=16, agsize=3433014 
blks
          =                       sectsz=512   attr=1
data     =                       bsize=4096   blocks=54928224, imaxpct=25
          =                       sunit=0      swidth=0 blks, unwritten=1
naming   =version 2              bsize=4096
log      =internal               bsize=4096   blocks=26820, version=1
          =                       sectsz=512   sunit=0 blks
realtime =none                   extsz=65536  blocks=0, rtextents=0

There's another thing I would like know. How do I find out what file a 
sector belongs to?

Regards,
Johan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ