diff mbox series

[ndctl,v2] ndctl, list: add alarm_enable_<field> to list

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

Commit Message

QI Fuli Aug. 8, 2018, 2:43 a.m. UTC
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(+)

Comments

Verma, Vishal L Aug. 8, 2018, 6:31 p.m. UTC | #1
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 mbox series

Patch

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: