Fix status line. --- diff/drivers/md/dm-mpath.c 2004-11-10 15:13:56.000000000 +0000 +++ source/drivers/md/dm-mpath.c 2004-11-10 15:14:02.000000000 +0000 @@ -1036,7 +1036,8 @@ * Info string has the following format: * num_multipath_feature_args [multipath_feature_args]* * num_handler_status_args [handler_status_args]* - * num_groups [A|D|E num_ps_status_args [ps_status_args]* + * num_groups init_group_number + * [A|D|E num_ps_status_args [ps_status_args]* * num_paths num_selector_args * [path_dev A|F fail_count [selector_args]* ]+ ]+ * @@ -1079,9 +1080,17 @@ DMEMIT("%u ", m->nr_priority_groups); + if (m->next_pg) + pg_num = m->next_pg->pg_num; + else if (m->current_pg) + pg_num = m->current_pg->pg_num; + else + pg_num = 1; + + DMEMIT("%u ", pg_num); + switch (type) { case STATUSTYPE_INFO: - list_for_each_entry(pg, &m->priority_groups, list) { if (pg->bypassed) state = 'D'; /* Disabled */ @@ -1090,6 +1099,8 @@ else state = 'E'; /* Enabled */ + DMEMIT("%c ", state); + if (pg->ps.type->status) sz += pg->ps.type->status(&pg->ps, NULL, type, result + sz, @@ -1097,8 +1108,7 @@ else DMEMIT("0 "); - DMEMIT("%c %u %u ", state, pg->nr_paths, - pg->ps.type->info_args); + DMEMIT("%u %u ", pg->nr_paths, pg->ps.type->info_args); list_for_each_entry(p, &pg->pgpaths, list) { format_dev_t(buffer, p->path.dev->bdev->bd_dev); @@ -1116,14 +1126,6 @@ break; case STATUSTYPE_TABLE: - if (m->next_pg) - pg_num = m->next_pg->pg_num; - else if (m->current_pg) - pg_num = m->current_pg->pg_num; - else - pg_num = 1; - - DMEMIT("%u ", pg_num); list_for_each_entry(pg, &m->priority_groups, list) { DMEMIT("%s ", pg->ps.type->name);