Re: [PATCH] MD: generate an event when array sync is complete

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

 



On Thu, 14 Jul 2011 15:59:25 -0500 Jonathan Brassow <jbrassow@xxxxxxxxxx>
wrote:

> Neil,
> 
> I'm not sure this is the best place in the code to put this (even though
> I've tested that it works well).  I welcome your corrections.
> 
>  brassow
> 
> This patch causes MD to generate an event (for device-mapper) once array
> synchronization is complete.  This is expected behavior for device-mapper.
> 
> RFC-by: Jonathan Brassow <jbrassow@xxxxxxxxxx>
> 
> Index: linux-2.6/drivers/md/md.c
> ===================================================================
> --- linux-2.6.orig/drivers/md/md.c
> +++ linux-2.6/drivers/md/md.c
> @@ -7328,6 +7328,9 @@ void md_check_recovery(mddev_t *mddev)
>  	unlock:
>  		if (!mddev->sync_thread) {
>  			clear_bit(MD_RECOVERY_RUNNING, &mddev->recovery);
> +			if (mddev->event_work.func && !mddev->recovery &&
> +			    (mddev->recovery_cp == MaxSector))
> +				queue_work(md_misc_wq, &mddev->event_work);
>  			if (test_and_clear_bit(MD_RECOVERY_RECOVER,
>  					       &mddev->recovery))
>  				if (mddev->sysfs_action)
> 
> 

Hi Jon,
 I think reap_sync_thread would be a better place to put this.
Do you really need all the extra tests though?  Would it not be OK to just
notify dmeventd if the resync has stopped, and it can figure out what
actually happened and whether anything needs to be done about it?

I'm happy either way - just thought I would mention it.
So resend with the code in reap_sync_thread and I'll apply.

Thanks,
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