Message ID | 20180808024335.12793-1-qi.fuli@jp.fujitsu.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [ndctl,v2] ndctl, list: add alarm_enable_<field> to list | expand |
On Wed, 2018-08-08 at 11:43 +0900, QI Fuli wrote: > This patch adds alarm_enable_<field> to list, so that users could > check > if the "ndctl inject-smart --<field>-alarm=on/off" works well or not. > > Signed-off-by: QI Fuli <qi.fuli@jp.fujitsu.com> > --- > v1 -> v2: > remove the renaming for list items. Thanks, looks good and applied. > > ndctl/util/json-smart.c | 27 +++++++++++++++++++++++++++ > 1 file changed, 27 insertions(+) > > diff --git a/ndctl/util/json-smart.c b/ndctl/util/json-smart.c > index 6a1f294..e25483d 100644 > --- a/ndctl/util/json-smart.c > +++ b/ndctl/util/json-smart.c > @@ -39,34 +39,61 @@ static void smart_threshold_to_json(struct > ndctl_dimm *dimm, > unsigned int temp; > double t; > > + jobj = json_object_new_boolean(true); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_media_temperat > ure", jobj); > temp = > ndctl_cmd_smart_threshold_get_temperature(cmd); > t = ndctl_decode_smart_temperature(temp); > jobj = json_object_new_double(t); > if (jobj) > json_object_object_add(jhealth, > "temperature_threshold", > jobj); > + } else { > + jobj = json_object_new_boolean(false); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_media_temperat > ure", jobj); > } > > if (alarm_control & ND_SMART_CTEMP_TRIP) { > unsigned int temp; > double t; > > + jobj = json_object_new_boolean(true); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_ctrl_temperatu > re", jobj); > temp = > ndctl_cmd_smart_threshold_get_ctrl_temperature(cmd); > t = ndctl_decode_smart_temperature(temp); > jobj = json_object_new_double(t); > if (jobj) > json_object_object_add(jhealth, > "controller_temperature_threshold", > jobj); > + } else { > + jobj = json_object_new_boolean(false); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_ctrl_temperatu > re", jobj); > } > > if (alarm_control & ND_SMART_SPARE_TRIP) { > unsigned int spares; > > + jobj = json_object_new_boolean(true); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_spares", > jobj); > spares = ndctl_cmd_smart_threshold_get_spares(cmd); > jobj = json_object_new_int(spares); > if (jobj) > json_object_object_add(jhealth, > "spares_threshold", jobj); > + } else { > + jobj = json_object_new_boolean(false); > + if (jobj) > + json_object_object_add(jhealth, > + "alarm_enable_spares", > jobj); > } > > out:
diff --git a/ndctl/util/json-smart.c b/ndctl/util/json-smart.c index 6a1f294..e25483d 100644 --- a/ndctl/util/json-smart.c +++ b/ndctl/util/json-smart.c @@ -39,34 +39,61 @@ static void smart_threshold_to_json(struct ndctl_dimm *dimm, unsigned int temp; double t; + jobj = json_object_new_boolean(true); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_media_temperature", jobj); temp = ndctl_cmd_smart_threshold_get_temperature(cmd); t = ndctl_decode_smart_temperature(temp); jobj = json_object_new_double(t); if (jobj) json_object_object_add(jhealth, "temperature_threshold", jobj); + } else { + jobj = json_object_new_boolean(false); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_media_temperature", jobj); } if (alarm_control & ND_SMART_CTEMP_TRIP) { unsigned int temp; double t; + jobj = json_object_new_boolean(true); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_ctrl_temperature", jobj); temp = ndctl_cmd_smart_threshold_get_ctrl_temperature(cmd); t = ndctl_decode_smart_temperature(temp); jobj = json_object_new_double(t); if (jobj) json_object_object_add(jhealth, "controller_temperature_threshold", jobj); + } else { + jobj = json_object_new_boolean(false); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_ctrl_temperature", jobj); } if (alarm_control & ND_SMART_SPARE_TRIP) { unsigned int spares; + jobj = json_object_new_boolean(true); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_spares", jobj); spares = ndctl_cmd_smart_threshold_get_spares(cmd); jobj = json_object_new_int(spares); if (jobj) json_object_object_add(jhealth, "spares_threshold", jobj); + } else { + jobj = json_object_new_boolean(false); + if (jobj) + json_object_object_add(jhealth, + "alarm_enable_spares", jobj); } out:
This patch adds alarm_enable_<field> to list, so that users could check if the "ndctl inject-smart --<field>-alarm=on/off" works well or not. Signed-off-by: QI Fuli <qi.fuli@jp.fujitsu.com> --- v1 -> v2: remove the renaming for list items. ndctl/util/json-smart.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+)