Re: [PATCH] md: make recovery started by do_md_run() visible via sync_action

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

 



On Wed, 30 Dec 2009 12:37:14 +1100
Neil Brown <neilb@xxxxxxx> wrote:

> On Mon, 21 Dec 2009 18:18:36 -0700
> Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
> 
> > By default md_do_sync() will perform recovery if no other actions are
> > specified.  However, action_show() relies on MD_RECOVERY_RECOVER to be
> > set otherwise it returns 'idle'.  So, add a missing set
> > MD_RECOVERY_RECOVER when starting recovery.
> > 
> > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
> > ---
> > Hi Neil,
> > 
> > One more to finish off recovery checkpoint support.  Without this mdmon
> > never notices that the array was rebuilding and never marks the
> > completion.  I did not see any urgency to workaround this in the mdadm
> > patchset, but let me know if you think a "kernel version > 2.6.33-rcX"
> > check is warranted.
> 
> Thanks Dan.
> This is "obviously correct" and I have queued it.
> However...
> I wonder if we want that code in do_md_run at all.
> It claims to be there because if we leave the recovery to
> md_check_recovery, then it will remove and re-add the spares,
> and this will lose the recovery_offset information.
> 
> However presumably the same problem applies to recovery_offset
> information that we set manually.  Won't the call to
> remove_and_add_spares() lose that information too?
> 
> I think we need to make sure that remove_and_add_spares
> doesn't lose information that we want to keep, and then
> remove this code from do_md_run.
> 
> So my first question is:  did the current code really work for you?
> It looks like it would zero recovery_offset in remove_and_add_spares ??

I figured it out myself.
Since commit dfc7064500061677720fa26352963c772d3ebe6b (2.6.26)
->hot_remove_disk will refuse to remove devices that are not failed, unless
recovery is impossible.
So since then, this code in do_md_run is not needed.
I'll remove it.

NeilBrown
--
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