Also trigger event on reinstate.
--- diff/drivers/md/dm-mpath.c	2004-10-29 15:39:32.000000000 +0100
+++ source/drivers/md/dm-mpath.c	2004-10-29 15:39:38.000000000 +0100
@@ -640,7 +640,6 @@
 	path->is_active = 0;
 	path->fail_count++;
 	path->pg->ps.type->fail_path(&path->pg->ps, path);
-	schedule_work(&m->trigger_event);
 
 	spin_lock(&m->lock);
 	m->nr_valid_paths--;
@@ -649,6 +648,7 @@
 		m->current_path = NULL;
 
 	spin_unlock(&m->lock);
+	schedule_work(&m->trigger_event);
 
 out:
 	spin_unlock_irqrestore(&path->queued_lock, flags);
@@ -686,6 +686,8 @@
 	m->current_path = NULL;
 	spin_unlock(&m->lock);
 
+	schedule_work(&m->trigger_event);
+
 out:
 	spin_unlock_irqrestore(&path->queued_lock, flags);
 
