dm mpath: move trigger_event to system workqueue
[pandora-kernel.git] / drivers / md / dm-mpath.c
index 345a260..095f77b 100644 (file)
@@ -889,7 +889,7 @@ static int fail_path(struct pgpath *pgpath)
        dm_path_uevent(DM_UEVENT_PATH_FAILED, m->ti,
                      pgpath->path.dev->name, m->nr_valid_paths);
 
-       queue_work(kmultipathd, &m->trigger_event);
+       schedule_work(&m->trigger_event);
        queue_work(kmultipathd, &pgpath->deactivate_path);
 
 out:
@@ -932,7 +932,7 @@ static int reinstate_path(struct pgpath *pgpath)
        dm_path_uevent(DM_UEVENT_PATH_REINSTATED, m->ti,
                      pgpath->path.dev->name, m->nr_valid_paths);
 
-       queue_work(kmultipathd, &m->trigger_event);
+       schedule_work(&m->trigger_event);
 
 out:
        spin_unlock_irqrestore(&m->lock, flags);
@@ -976,7 +976,7 @@ static void bypass_pg(struct multipath *m, struct priority_group *pg,
 
        spin_unlock_irqrestore(&m->lock, flags);
 
-       queue_work(kmultipathd, &m->trigger_event);
+       schedule_work(&m->trigger_event);
 }
 
 /*
@@ -1006,7 +1006,7 @@ static int switch_pg_num(struct multipath *m, const char *pgstr)
        }
        spin_unlock_irqrestore(&m->lock, flags);
 
-       queue_work(kmultipathd, &m->trigger_event);
+       schedule_work(&m->trigger_event);
        return 0;
 }