--- multipath/main.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) Index: multipath-tools-130222/multipath/main.c =================================================================== --- multipath-tools-130222.orig/multipath/main.c +++ multipath-tools-130222/multipath/main.c @@ -135,7 +135,7 @@ usage (char * progname) } static int -update_paths (struct multipath * mpp) +update_paths (struct multipath * mpp, int quick) { int i, j; struct pathgroup * pgp; @@ -149,6 +149,10 @@ update_paths (struct multipath * mpp) continue; vector_foreach_slot (pgp->paths, pp, j) { + if (quick) { + pp->mpp = mpp; + continue; + } if (!strlen(pp->dev)) { if (devt2devname(pp->dev, FILE_NAME_SIZE, pp->dev_t)) { @@ -213,8 +217,7 @@ get_dm_mpvec (vector curmp, vector pathv * If not in "fast list mode", we need to fetch information * about them */ - if (conf->cmd != CMD_LIST_SHORT) - update_paths(mpp); + update_paths(mpp, (conf->cmd == CMD_LIST_SHORT)); if (conf->cmd == CMD_LIST_LONG) mpp->bestpg = select_path_group(mpp);