Re: Periodic RebuildStarted event

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 15, 2011 at 6:28 AM, Roberto Spadim <roberto@xxxxxxxxxxxxx> wrote:
> does mdadm have check? could it have check with a startup position?
> could the mdadm report last checked position?
> this could help partial checks..
Testing with loop devices shows it works.
limits are set:
root@nekotaz2:/storage/ovzs/keke# cat /sys/block/md5/md/sync_{min,max}
500000
700000

calling check & viewing status:
root@nekotaz2:/storage/ovzs/keke# echo check > /sys/block/md5/md/sync_action
root@nekotaz2:/storage/ovzs/keke# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md5 : active raid1 loop1[1] loop0[0]
      1048512 blocks [2/2] [UU]
      [====>................]  check = 24.2% (254608/1048512)
finish=5.7min speed=2304K/sec

Here 254608 is 500000/2 = 250000 + some progress for delay in between
of "echo check" & "cat /proc/mdstat"
In result, it stops on 350000 which is exactly 700000/2

root@nekotaz2:/storage/ovzs/keke# cat /proc/mdstat
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md5 : active raid1 loop1[1] loop0[0]
      1048512 blocks [2/2] [UU]
      [======>..............]  check = 33.3% (350000/1048512)
finish=76.4min speed=151K/sec

Speed & finish time are still being calculated though.

Also, see Nail's message.

>
> 2011/3/15 CoolCold <coolthecold@xxxxxxxxx>:
>> Hello!
>>
>> On Tue, Feb 8, 2011 at 3:25 AM, NeilBrown <neilb@xxxxxxx> wrote:
>> [snip]
>>> Then start either the
>>> 'next' array at the beginning, or the 'current' array at the current point
>>> (write to sync_min).
>> I couldn't find documentation for sync_min/sync_max sysfs params at
>> least for repo cloned from
>> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-2.6.37.y.git
>> coolcold@coolcold:~/gits/linux-2.6.37.y$ grep -qi sync_min
>> Documentation/md.txt || echo failed find docs
>> failed find docs
>>
>> As I could understand from sources - resync_min & resync_max are
>> expressed in sectors (512bytes?)  and are set to 0 & total sectors on
>> device accordingly. resync_max value should be divisible by array
>> chunk size (in sectors) . After setting this values, one can trugger
>> "check" / "repair" into sync_action.
>>
>> My basic idea is to use this method to clear pending sectors from
>> SMART checks and looks like this gonna work, am i right?
>>
>>> Then wait for however long you want, abort the check (write 'idle' to
>>> 'sync_action') and find out where it got up to (read sync_min) and record
>>> that for next time.
>>>
>>> NeilBrown
>>>
>>
>>
>> --
>> Best regards,
>> [COOLCOLD-RIPN]
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>
>
>
> --
> Roberto Spadim
> Spadim Technology / SPAEmpresarial
>



-- 
Best regards,
[COOLCOLD-RIPN]
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux