Detect when a RAID is going through initialization process after creation to display the progress in get_status.
Signed-off-by: Gabriel Krisman Bertazi <kris...@linux.vnet.ibm.com> --- iprconfig.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/iprconfig.c b/iprconfig.c index 3189af0..9d0942d 100644 --- a/iprconfig.c +++ b/iprconfig.c @@ -12689,6 +12689,7 @@ static void get_status(struct ipr_dev *dev, char *buf, int percent, int path_sta int percent_cmplt = 0; int format_in_progress = 0; int resync_in_progress = 0; + int initialization_in_progress = 0; struct ipr_res_redundancy_info info; if (scsi_dev_data && scsi_dev_data->type == IPR_TYPE_ADAPTER && dev == &ioa->ioa) { @@ -12714,6 +12715,8 @@ static void get_status(struct ipr_dev *dev, char *buf, int percent, int path_sta continue; if (status_record->command_code == IPR_RESYNC_ARRAY_PROTECTION) resync_in_progress = 1; + if (status_record->command_code == IPR_START_ARRAY_PROTECTION) + initialization_in_progress = 1; percent_cmplt = status_record->percent_complete; } } @@ -12836,6 +12839,11 @@ static void get_status(struct ipr_dev *dev, char *buf, int percent, int path_sta sprintf(buf, "Checking"); else sprintf(buf, "%d%% Checked", percent_cmplt); + } else if (initialization_in_progress) { + if ((!percent || (percent_cmplt == 0))) + sprintf(buf, "Initializing"); + else + sprintf(buf, "%d%% Initializing", percent_cmplt); } else if (res_state.prot_suspended) sprintf(buf, "Degraded"); else if (res_state.degraded_oper || res_state.service_req) -- 2.1.0 ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 _______________________________________________ Iprdd-devel mailing list Iprdd-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/iprdd-devel