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 [off-list ref]
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)