@@ -72,20 +72,18 @@ static int feat_get(struct nvme_transport_handle *hdl, const __u8 fid,
7272
7373 err = nvme_get_features (hdl , 0 , fid , sel , cdw11 , uidx , buf , len ,
7474 & result );
75+ if (err ) {
76+ nvme_show_err (err , "Get %s" , feat );
77+ return err ;
78+ }
7579
7680 nvme_show_init ();
7781
78- if (!err ) {
79- nvme_feature_show (fid , sel , result );
80- if (NVME_CHECK (sel , GET_FEATURES_SEL , SUPPORTED ))
81- nvme_show_select_result (fid , result );
82- else
83- nvme_feature_show_fields (fid , result , buf );
84- } else if (err > 0 ) {
85- nvme_show_status (err );
86- } else {
87- nvme_show_error ("Get %s: %s" , feat , nvme_strerror (errno ));
88- }
82+ nvme_feature_show (fid , sel , result );
83+ if (NVME_CHECK (sel , GET_FEATURES_SEL , SUPPORTED ))
84+ nvme_show_select_result (fid , result );
85+ else
86+ nvme_feature_show_fields (fid , result , buf );
8987
9088 nvme_show_finish ();
9189
@@ -102,17 +100,16 @@ static int power_mgmt_set(struct nvme_transport_handle *hdl, const __u8 fid,
102100 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , 0 , 0 , NULL , 0 ,
103101 & result );
104102
103+ if (err ) {
104+ nvme_show_err (err , "Set %s" , power_mgmt_feat );
105+ return err ;
106+ }
107+
105108 nvme_show_init ();
106109
107- if (err > 0 ) {
108- nvme_show_status (err );
109- } else if (err < 0 ) {
110- nvme_show_perror ("Set %s" , power_mgmt_feat );
111- } else {
112- nvme_show_result ("Set %s: 0x%04x (%s)" , power_mgmt_feat , cdw11 ,
113- sv ? "Save" : "Not save" );
114- nvme_feature_show_fields (fid , cdw11 , NULL );
115- }
110+ nvme_show_result ("Set %s: 0x%04x (%s)" , power_mgmt_feat , cdw11 ,
111+ sv ? "Save" : "Not save" );
112+ nvme_feature_show_fields (fid , cdw11 , NULL );
116113
117114 nvme_show_finish ();
118115
@@ -194,18 +191,16 @@ static int perfc_set(struct nvme_transport_handle *hdl, __u8 fid, __u32 cdw11,
194191
195192 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , 0 , 0 , & data ,
196193 sizeof (data ), & result );
194+ if (err ) {
195+ nvme_show_err (err , "Set %s" , perfc_feat );
196+ return err ;
197+ }
197198
198199 nvme_show_init ();
199200
200- if (err > 0 ) {
201- nvme_show_status (err );
202- } else if (err < 0 ) {
203- nvme_show_perror ("Set %s" , perfc_feat );
204- } else {
205- nvme_show_result ("Set %s: 0x%04x (%s)" , perfc_feat , cdw11 ,
206- sv ? "Save" : "Not save" );
207- nvme_feature_show_fields (fid , cdw11 , NULL );
208- }
201+ nvme_show_result ("Set %s: 0x%04x (%s)" , perfc_feat , cdw11 ,
202+ sv ? "Save" : "Not save" );
203+ nvme_feature_show_fields (fid , cdw11 , NULL );
209204
210205 nvme_show_finish ();
211206
@@ -266,18 +261,16 @@ static int hctm_set(struct nvme_transport_handle *hdl, const __u8 fid,
266261
267262 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , 0 , 0 , NULL , 0 ,
268263 & result );
264+ if (err ) {
265+ nvme_show_err (err , "Set %s" , hctm_feat );
266+ return err ;
267+ }
269268
270269 nvme_show_init ();
271270
272- if (err > 0 ) {
273- nvme_show_status (err );
274- } else if (err < 0 ) {
275- nvme_show_perror ("Set %s" , hctm_feat );
276- } else {
277- nvme_show_result ("Set %s: 0x%04x (%s)" , hctm_feat , cdw11 ,
278- sv ? "Save" : "Not save" );
279- nvme_feature_show_fields (fid , cdw11 , NULL );
280- }
271+ nvme_show_result ("Set %s: 0x%04x (%s)" , hctm_feat , cdw11 ,
272+ sv ? "Save" : "Not save" );
273+ nvme_feature_show_fields (fid , cdw11 , NULL );
281274
282275 nvme_show_finish ();
283276
@@ -330,17 +323,16 @@ static int timestamp_set(struct nvme_transport_handle *hdl, const __u8 fid,
330323
331324 err = nvme_set_features (hdl , 0 , fid , sv , 0 , 0 , 0 , 0 , 0 , & ts , sizeof (ts ),
332325 & result );
326+ if (err ) {
327+ nvme_show_err (err , "Set %s" , timestamp_feat );
328+ return err ;
329+ }
333330
334331 nvme_show_init ();
335332
336- if (err > 0 ) {
337- nvme_show_status (err );
338- } else if (err < 0 ) {
339- nvme_show_perror ("Set %s" , timestamp_feat );
340- } else {
341- nvme_show_result ("Set %s: (%s)" , timestamp_feat , sv ? "Save" : "Not save" );
342- nvme_feature_show_fields (fid , 0 , (unsigned char * )& ts );
343- }
333+ nvme_show_result ("Set %s: (%s)" , timestamp_feat ,
334+ sv ? "Save" : "Not save" );
335+ nvme_feature_show_fields (fid , 0 , (unsigned char * )& ts );
344336
345337 nvme_show_finish ();
346338
@@ -409,20 +401,19 @@ static int temp_thresh_set(struct nvme_transport_handle *hdl, const __u8 fid,
409401 nvme_init_set_features_temp_thresh (& cmd , sv , cfg -> tmpth , cfg -> tmpsel ,
410402 cfg -> thsel , cfg -> tmpthh );
411403 err = nvme_submit_admin_passthru (hdl , & cmd );
404+ if (err ) {
405+ nvme_show_err (err , "Set %s" , temp_thresh_feat );
406+ return err ;
407+ }
412408
413409 nvme_show_init ();
414410
415- if (err > 0 ) {
416- nvme_show_status (err );
417- } else if (err < 0 ) {
418- nvme_show_perror ("Set %s" , temp_thresh_feat );
419- } else {
420- nvme_show_result ("Set %s: (%s)" , temp_thresh_feat , sv ? "Save" : "Not save" );
421- nvme_feature_show_fields (fid , NVME_SET (cfg -> tmpth , FEAT_TT_TMPTH ) |
422- NVME_SET (cfg -> tmpsel , FEAT_TT_TMPSEL ) |
423- NVME_SET (cfg -> thsel , FEAT_TT_THSEL ) |
424- NVME_SET (cfg -> tmpthh , FEAT_TT_TMPTHH ), NULL );
425- }
411+ nvme_show_result ("Set %s: (%s)" , temp_thresh_feat ,
412+ sv ? "Save" : "Not save" );
413+ nvme_feature_show_fields (fid , NVME_SET (cfg -> tmpth , FEAT_TT_TMPTH ) |
414+ NVME_SET (cfg -> tmpsel , FEAT_TT_TMPSEL ) |
415+ NVME_SET (cfg -> thsel , FEAT_TT_THSEL ) |
416+ NVME_SET (cfg -> tmpthh , FEAT_TT_TMPTHH ), NULL );
426417
427418 nvme_show_finish ();
428419
@@ -496,20 +487,21 @@ static int arbitration_set(struct nvme_transport_handle *hdl, const __u8 fid,
496487 nvme_init_set_features_arbitration (& cmd , sv , cfg -> ab , cfg -> lpw ,
497488 cfg -> mpw , cfg -> hpw );
498489 err = nvme_submit_admin_passthru (hdl , & cmd );
490+ if (err ) {
491+ nvme_show_err (err , "Set %s" , arbitration_feat );
492+ return err ;
493+ }
499494
500495 nvme_show_init ();
501496
502- if (err > 0 ) {
503- nvme_show_status (err );
504- } else if (err < 0 ) {
505- nvme_show_perror ("Set %s" , arbitration_feat );
506- } else {
507- nvme_show_result ("Set %s: (%s)" , arbitration_feat , sv ? "Save" : "Not save" );
508- nvme_feature_show_fields (fid , NVME_SET (cfg -> ab , FEAT_ARBITRATION_BURST ) |
509- NVME_SET (cfg -> lpw , FEAT_ARBITRATION_LPW ) |
510- NVME_SET (cfg -> mpw , FEAT_ARBITRATION_MPW ) |
511- NVME_SET (cfg -> hpw , FEAT_ARBITRATION_HPW ), NULL );
512- }
497+ nvme_show_result ("Set %s: (%s)" , arbitration_feat ,
498+ sv ? "Save" : "Not save" );
499+ nvme_feature_show_fields (fid ,
500+ NVME_SET (cfg -> ab , FEAT_ARBITRATION_BURST ) |
501+ NVME_SET (cfg -> lpw , FEAT_ARBITRATION_LPW ) |
502+ NVME_SET (cfg -> mpw , FEAT_ARBITRATION_MPW ) |
503+ NVME_SET (cfg -> hpw , FEAT_ARBITRATION_HPW ),
504+ NULL );
513505
514506 nvme_show_finish ();
515507
@@ -555,18 +547,16 @@ static int volatile_wc_set(struct nvme_transport_handle *hdl, const __u8 fid,
555547
556548 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , 0 , 0 , NULL , 0 ,
557549 & result );
550+ if (err ) {
551+ nvme_show_err (err , "Set %s" , volatile_wc_feat );
552+ return err ;
553+ }
558554
559555 nvme_show_init ();
560556
561- if (err > 0 ) {
562- nvme_show_status (err );
563- } else if (err < 0 ) {
564- nvme_show_perror ("Set %s" , volatile_wc_feat );
565- } else {
566- nvme_show_result ("Set %s: 0x%04x (%s)" , volatile_wc_feat , cdw11 ,
567- sv ? "Save" : "Not save" );
568- nvme_feature_show_fields (fid , cdw11 , NULL );
569- }
557+ nvme_show_result ("Set %s: 0x%04x (%s)" , volatile_wc_feat , cdw11 ,
558+ sv ? "Save" : "Not save" );
559+ nvme_feature_show_fields (fid , cdw11 , NULL );
570560
571561 nvme_show_finish ();
572562
@@ -614,18 +604,16 @@ static int power_limit_set(struct nvme_transport_handle *hdl, const __u8 fid,
614604
615605 err = nvme_set_features (hdl , 0 , fid , sv , 0 , 0 , cdw13 , uidx , 0 , NULL , 0 ,
616606 & result );
607+ if (err ) {
608+ nvme_show_err (err , "Set %s" , power_limit_feat );
609+ return err ;
610+ }
617611
618612 nvme_show_init ();
619613
620- if (err > 0 ) {
621- nvme_show_status (err );
622- } else if (err < 0 ) {
623- nvme_show_perror ("Set %s" , power_limit_feat );
624- } else {
625- nvme_show_result ("Set %s: 0x%04x (%s)" , power_limit_feat , cdw13 ,
626- sv ? "Save" : "Not save" );
627- nvme_feature_show_fields (fid , cdw13 , NULL );
628- }
614+ nvme_show_result ("Set %s: 0x%04x (%s)" , power_limit_feat , cdw13 ,
615+ sv ? "Save" : "Not save" );
616+ nvme_feature_show_fields (fid , cdw13 , NULL );
629617
630618 nvme_show_finish ();
631619
@@ -686,18 +674,16 @@ static int power_thresh_set(struct nvme_transport_handle *hdl, const __u8 fid,
686674
687675 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , uidx , 0 , NULL , 0 ,
688676 & result );
677+ if (err ) {
678+ nvme_show_err (err , "Set %s" , power_thresh_feat );
679+ return err ;
680+ }
689681
690682 nvme_show_init ();
691683
692- if (err > 0 ) {
693- nvme_show_status (err );
694- } else if (err < 0 ) {
695- nvme_show_perror ("Set %s" , power_thresh_feat );
696- } else {
697- nvme_show_result ("Set %s: 0x%04x (%s)" , power_thresh_feat ,
698- cdw11 , sv ? "Save" : "Not save" );
699- nvme_feature_show_fields (fid , cdw11 , NULL );
700- }
684+ nvme_show_result ("Set %s: 0x%04x (%s)" , power_thresh_feat ,
685+ cdw11 , sv ? "Save" : "Not save" );
686+ nvme_feature_show_fields (fid , cdw11 , NULL );
701687
702688 nvme_show_finish ();
703689
@@ -766,18 +752,16 @@ static int power_meas_set(struct nvme_transport_handle *hdl, const __u8 fid,
766752
767753 err = nvme_set_features (hdl , 0 , fid , sv , cdw11 , 0 , 0 , uidx , 0 , NULL , 0 ,
768754 & result );
755+ if (err ) {
756+ nvme_show_err (err , "Set %s" , power_meas_feat );
757+ return err ;
758+ }
769759
770760 nvme_show_init ();
771761
772- if (err > 0 ) {
773- nvme_show_status (err );
774- } else if (err < 0 ) {
775- nvme_show_perror ("Set %s" , power_meas_feat );
776- } else {
777- nvme_show_result ("Set %s: 0x%04x (%s)" , power_meas_feat , cdw11 ,
778- sv ? "Save" : "Not save" );
779- nvme_feature_show_fields (fid , cdw11 , NULL );
780- }
762+ nvme_show_result ("Set %s: 0x%04x (%s)" , power_meas_feat , cdw11 ,
763+ sv ? "Save" : "Not save" );
764+ nvme_feature_show_fields (fid , cdw11 , NULL );
781765
782766 nvme_show_finish ();
783767
0 commit comments