Skip to content

Commit c030820

Browse files
committed
ocp: TCG Configuration Log field added ocp v2.6
Add Number of Namespace Provisioned Locking Objects Extended(TCGL-23) remove reserved area prints (Shall be cleared to zero) reserved area field name modified by byte address Signed-off-by: Steven Seungcheol Lee <sc108.lee@samsung.com>
1 parent 98b34e4 commit c030820

File tree

3 files changed

+38
-50
lines changed

3 files changed

+38
-50
lines changed

plugins/ocp/ocp-nvme.h

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#if !defined(OCP_NVME) || defined(CMD_HEADER_MULTI_READ)
1212
#define OCP_NVME
1313

14-
#define OCP_PLUGIN_VERSION "2.9.2"
14+
#define OCP_PLUGIN_VERSION "2.9.3"
1515
#include "cmd.h"
1616

1717
PLUGIN(NAME("ocp", "OCP cloud SSD extensions", OCP_PLUGIN_VERSION),
@@ -196,7 +196,7 @@ struct __packed ocp_device_capabilities_log_page {
196196
/*
197197
* struct tcg_configuration_log - TCG Configuration Log Page Structure
198198
* @state: state
199-
* @rsvd1: Reserved1
199+
* @rsvd1: Reserved
200200
* @locking_sp_act_count: Locking SP Activation Count
201201
* @type_rev_count: Tper Revert Count
202202
* @locking_sp_rev_count: Locking SP Revert Count.
@@ -208,13 +208,14 @@ struct __packed ocp_device_capabilities_log_page {
208208
* @no_of_write_lock_locking_obj: Number of Write Locked Locking Objects
209209
* @no_of_read_unlock_locking_obj: Number of Read Unlocked Locking Objects
210210
* @no_of_read_unlock_locking_obj: Number of Write Unlocked Locking Objects
211-
* @rsvd2: Reserved2
211+
* @rsvd15: Reserved
212212
* @sid_auth_try_count: SID Authentication Try Count
213213
* @sid_auth_try_limit: SID Authentication Try Limit
214214
* @pro_tcg_rc: Programmatic TCG Reset Count
215215
* @pro_rlc: Programmatic Reset Lock Count
216216
* @tcg_ec: TCG Error Count
217-
* @rsvd3: Reserved3
217+
* @no_of_ns_prov_locking_obj_ext: Number of Namespace Provisioned Locking Objects Extended
218+
* @rsvd38: Reserved
218219
* @log_page_version: Log Page Version
219220
*/
220221
struct __packed tcg_configuration_log {
@@ -231,13 +232,14 @@ struct __packed tcg_configuration_log {
231232
__u8 no_of_write_lock_locking_obj;
232233
__u8 no_of_read_unlock_locking_obj;
233234
__u8 no_of_write_unlock_locking_obj;
234-
__u8 rsvd2;
235+
__u8 rsvd15;
235236
__le32 sid_auth_try_count;
236237
__le32 sid_auth_try_limit;
237238
__le32 pro_tcg_rc;
238239
__le32 pro_rlc;
239240
__le32 tcg_ec;
240-
__u8 rsvd3[458];
241+
__le16 no_of_ns_prov_locking_obj_ext;
242+
__u8 rsvd38[456];
241243
__le16 log_page_version;
242244
__u8 log_page_guid[GUID_LEN];
243245

plugins/ocp/ocp-print-json.c

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -787,16 +787,11 @@ static void json_c7_log(struct nvme_dev *dev, struct tcg_configuration_log *log_
787787
struct json_object *root;
788788
char guid_buf[GUID_LEN];
789789
char *guid = guid_buf;
790-
char res_arr[458];
791-
char *res = res_arr;
790+
__u16 log_page_version = le16_to_cpu(log_data->log_page_version);
792791

793792
root = json_create_object();
794793

795794
json_object_add_value_int(root, "State", log_data->state);
796-
memset((__u8 *)res, 0, 3);
797-
for (j = 0; j < 3; j++)
798-
res += sprintf(res, "%d", log_data->rsvd1[j]);
799-
json_object_add_value_string(root, "Reserved1", res_arr);
800795
json_object_add_value_int(root, "Locking SP Activation Count",
801796
log_data->locking_sp_act_count);
802797
json_object_add_value_int(root, "Tper Revert Count",
@@ -817,7 +812,6 @@ static void json_c7_log(struct nvme_dev *dev, struct tcg_configuration_log *log_
817812
log_data->no_of_read_unlock_locking_obj);
818813
json_object_add_value_int(root, "Number of Write Unlocked Locking Objects",
819814
log_data->no_of_write_unlock_locking_obj);
820-
json_object_add_value_int(root, "Reserved2", log_data->rsvd2);
821815

822816
json_object_add_value_int(root, "SID Authentication Try Count",
823817
le32_to_cpu(log_data->sid_auth_try_count));
@@ -829,13 +823,12 @@ static void json_c7_log(struct nvme_dev *dev, struct tcg_configuration_log *log_
829823
le32_to_cpu(log_data->pro_rlc));
830824
json_object_add_value_int(root, "TCG Error Count", le32_to_cpu(log_data->tcg_ec));
831825

832-
memset((__u8 *)res, 0, 458);
833-
for (j = 0; j < 458; j++)
834-
res += sprintf(res, "%d", log_data->rsvd3[j]);
835-
json_object_add_value_string(root, "Reserved3", res_arr);
826+
if (log_page_version > 1)
827+
json_object_add_value_int(root,
828+
"Number of Namespace Provisioned Locking Objects Extended",
829+
log_data->no_of_ns_prov_locking_obj_ext);
836830

837-
json_object_add_value_int(root, "Log Page Version",
838-
le16_to_cpu(log_data->log_page_version));
831+
json_object_add_value_int(root, "Log Page Version", log_page_version);
839832

840833
memset((void *)guid, 0, GUID_LEN);
841834
for (j = GUID_LEN - 1; j >= 0; j--)

plugins/ocp/ocp-print-stdout.c

Lines changed: 24 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -646,59 +646,52 @@ static void stdout_c9_log(struct telemetry_str_log_format *log_data, __u8 *log_d
646646
static void stdout_c7_log(struct nvme_dev *dev, struct tcg_configuration_log *log_data)
647647
{
648648
int j;
649+
__u16 log_page_version = le16_to_cpu(log_data->log_page_version);
649650

650651
printf("TCG Configuration C7 Log Page Data-\n");
651652

652-
printf(" State : 0x%x\n",
653+
printf(" State : 0x%x\n",
653654
log_data->state);
654-
printf(" Reserved1 : 0x");
655-
for (j = 0; j < 3; j++)
656-
printf("%d", log_data->rsvd1[j]);
657-
printf("\n");
658-
printf(" Locking SP Activation Count : 0x%x\n",
655+
printf(" Locking SP Activation Count : 0x%x\n",
659656
log_data->locking_sp_act_count);
660-
printf(" Tper Revert Count : 0x%x\n",
657+
printf(" Tper Revert Count : 0x%x\n",
661658
log_data->type_rev_count);
662-
printf(" Locking SP Revert Count : 0x%x\n",
659+
printf(" Locking SP Revert Count : 0x%x\n",
663660
log_data->locking_sp_rev_count);
664-
printf(" Number of Locking Objects : 0x%x\n",
661+
printf(" Number of Locking Objects : 0x%x\n",
665662
log_data->no_of_locking_obj);
666-
printf(" Number of Single User Mode Locking Objects : 0x%x\n",
663+
printf(" Number of Single User Mode Locking Objects : 0x%x\n",
667664
log_data->no_of_single_um_locking_obj);
668-
printf(" Number of Range Provisioned Locking Objects : 0x%x\n",
665+
printf(" Number of Range Provisioned Locking Objects : 0x%x\n",
669666
log_data->no_of_range_prov_locking_obj);
670-
printf(" Number of Namespace Provisioned Locking Objects : 0x%x\n",
667+
printf(" Number of Namespace Provisioned Locking Objects : 0x%x\n",
671668
log_data->no_of_ns_prov_locking_obj);
672-
printf(" Number of Read Locked Locking Objects : 0x%x\n",
669+
printf(" Number of Read Locked Locking Objects : 0x%x\n",
673670
log_data->no_of_read_lock_locking_obj);
674-
printf(" Number of Write Locked Locking Objects : 0x%x\n",
671+
printf(" Number of Write Locked Locking Objects : 0x%x\n",
675672
log_data->no_of_write_lock_locking_obj);
676-
printf(" Number of Read Unlocked Locking Objects : 0x%x\n",
673+
printf(" Number of Read Unlocked Locking Objects : 0x%x\n",
677674
log_data->no_of_read_unlock_locking_obj);
678-
printf(" Number of Write Unlocked Locking Objects : 0x%x\n",
675+
printf(" Number of Write Unlocked Locking Objects : 0x%x\n",
679676
log_data->no_of_write_unlock_locking_obj);
680-
printf(" Reserved2 : 0x%x\n",
681-
log_data->rsvd2);
682-
683-
printf(" SID Authentication Try Count : 0x%x\n",
677+
printf(" SID Authentication Try Count : 0x%x\n",
684678
le32_to_cpu(log_data->sid_auth_try_count));
685-
printf(" SID Authentication Try Limit : 0x%x\n",
679+
printf(" SID Authentication Try Limit : 0x%x\n",
686680
le32_to_cpu(log_data->sid_auth_try_limit));
687-
printf(" Programmatic TCG Reset Count : 0x%x\n",
681+
printf(" Programmatic TCG Reset Count : 0x%x\n",
688682
le32_to_cpu(log_data->pro_tcg_rc));
689-
printf(" Programmatic Reset Lock Count : 0x%x\n",
683+
printf(" Programmatic Reset Lock Count : 0x%x\n",
690684
le32_to_cpu(log_data->pro_rlc));
691-
printf(" TCG Error Count : 0x%x\n",
685+
printf(" TCG Error Count : 0x%x\n",
692686
le32_to_cpu(log_data->tcg_ec));
693687

694-
printf(" Reserved3 : 0x");
695-
for (j = 0; j < 458; j++)
696-
printf("%d", log_data->rsvd3[j]);
697-
printf("\n");
688+
if (log_page_version > 1)
689+
printf(" Number of Namespace Provisioned Locking Objects Extended : 0x%x\n",
690+
le16_to_cpu(log_data->no_of_ns_prov_locking_obj_ext));
698691

699-
printf(" Log Page Version : 0x%x\n",
700-
le16_to_cpu(log_data->log_page_version));
701-
printf(" Log page GUID : 0x");
692+
printf(" Log Page Version : 0x%x\n",
693+
log_page_version);
694+
printf(" Log page GUID : 0x");
702695
for (j = GUID_LEN - 1; j >= 0; j--)
703696
printf("%02x", log_data->log_page_guid[j]);
704697
printf("\n");

0 commit comments

Comments
 (0)