multipath: recheck all priorities when a path comes back up
authorBenjamin Marzinski <bmarzins@redhat.com>
Mon, 25 Apr 2011 03:48:00 +0000 (22:48 -0500)
committerChristophe Varoqui <christophe.varoqui@opensvc.com>
Mon, 25 Apr 2011 11:43:52 +0000 (13:43 +0200)
commit6f45c7be88430d0384925e364a434bc832c8687b
tree7bb76738f501caa349700e6ce73d32ba2c42b51a
parent0896abe6fe3118df08ef02c9d10be453062a440a
multipath: recheck all priorities when a path comes back up

For group_by_prio paths, when a path goes down, its possible that the
priorities of the paths will be readjusted, and the multipath device will be
reloaded with a different path layout. However, downed paths don't get their
priority checked, so when the path comes back up and the original priorities
are restored, multipathd may not notice that the path layout needs to be
recalculated. This patch makes multipathd recalculate the the priorities of all
the paths when a path is restored, and reloads the map if any of them have
changed.  Also, when a path is restored, multipathd checks twice in
check_path if the pathgroup needs switching.  This should only happen once.

Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
multipathd/main.c