@@ -6048,6 +6048,110 @@ static void stdout_relatives(nvme_root_t r, const char *name)
60486048 nvme_resources_free (& res );
60496049}
60506050
6051+ static void stdout_log (const char * devname , struct nvme_get_log_args * args )
6052+ {
6053+ switch (args -> lid ) {
6054+ case NVME_LOG_LID_SUPPORTED_LOG_PAGES :
6055+ break ;
6056+ case NVME_LOG_LID_ERROR :
6057+ stdout_error_log ((struct nvme_error_log_page * )args -> log ,
6058+ args -> len / sizeof (struct nvme_error_log_page ), devname );
6059+ break ;
6060+ case NVME_LOG_LID_SMART :
6061+ stdout_smart_log ((struct nvme_smart_log * )args -> log , args -> nsid , devname );
6062+ break ;
6063+ case NVME_LOG_LID_FW_SLOT :
6064+ stdout_fw_log ((struct nvme_firmware_slot * )args -> log , devname );
6065+ break ;
6066+ case NVME_LOG_LID_CHANGED_NS :
6067+ stdout_changed_ns_list_log ((struct nvme_ns_list * )args -> log , devname , false);
6068+ break ;
6069+ case NVME_LOG_LID_CMD_EFFECTS :
6070+ break ;
6071+ case NVME_LOG_LID_DEVICE_SELF_TEST :
6072+ stdout_self_test_log ((struct nvme_self_test_log * )args -> log ,
6073+ args -> len / sizeof (struct nvme_self_test_log ), 0 , devname );
6074+ break ;
6075+ case NVME_LOG_LID_TELEMETRY_HOST :
6076+ break ;
6077+ case NVME_LOG_LID_TELEMETRY_CTRL :
6078+ break ;
6079+ case NVME_LOG_LID_ENDURANCE_GROUP :
6080+ stdout_endurance_log ((struct nvme_endurance_group_log * )args -> log , args -> lsi ,
6081+ devname );
6082+ break ;
6083+ case NVME_LOG_LID_PREDICTABLE_LAT_NVMSET :
6084+ stdout_predictable_latency_per_nvmset (
6085+ (struct nvme_nvmset_predictable_lat_log * )args -> log , args -> lsi , devname );
6086+ break ;
6087+ case NVME_LOG_LID_PREDICTABLE_LAT_AGG :
6088+ stdout_predictable_latency_event_agg_log (
6089+ (struct nvme_aggregate_predictable_lat_event * )args -> log ,
6090+ args -> len > sizeof (__u64 ) ? (args -> len - sizeof (__u64 )) / sizeof (__le16 ) : 0 ,
6091+ args -> len , devname );
6092+ break ;
6093+ case NVME_LOG_LID_ANA :
6094+ break ;
6095+ case NVME_LOG_LID_PERSISTENT_EVENT :
6096+ break ;
6097+ case NVME_LOG_LID_LBA_STATUS :
6098+ break ;
6099+ case NVME_LOG_LID_ENDURANCE_GRP_EVT :
6100+ break ;
6101+ case NVME_LOG_LID_MEDIA_UNIT_STATUS :
6102+ break ;
6103+ case NVME_LOG_LID_SUPPORTED_CAP_CONFIG_LIST :
6104+ break ;
6105+ case NVME_LOG_LID_FID_SUPPORTED_EFFECTS :
6106+ break ;
6107+ case NVME_LOG_LID_MI_CMD_SUPPORTED_EFFECTS :
6108+ break ;
6109+ case NVME_LOG_LID_CMD_AND_FEAT_LOCKDOWN :
6110+ break ;
6111+ case NVME_LOG_LID_BOOT_PARTITION :
6112+ break ;
6113+ case NVME_LOG_LID_ROTATIONAL_MEDIA_INFO :
6114+ break ;
6115+ case NVME_LOG_LID_DISPERSED_NS_PARTICIPATING_NSS :
6116+ break ;
6117+ case NVME_LOG_LID_MGMT_ADDR_LIST :
6118+ break ;
6119+ case NVME_LOG_LID_PHY_RX_EOM :
6120+ break ;
6121+ case NVME_LOG_LID_REACHABILITY_GROUPS :
6122+ break ;
6123+ case NVME_LOG_LID_REACHABILITY_ASSOCIATIONS :
6124+ break ;
6125+ case NVME_LOG_LID_CHANGED_ALLOC_NS_LIST :
6126+ stdout_changed_ns_list_log ((struct nvme_ns_list * )args -> log , devname , true);
6127+ break ;
6128+ case NVME_LOG_LID_FDP_CONFIGS :
6129+ break ;
6130+ case NVME_LOG_LID_FDP_RUH_USAGE :
6131+ break ;
6132+ case NVME_LOG_LID_FDP_STATS :
6133+ break ;
6134+ case NVME_LOG_LID_FDP_EVENTS :
6135+ break ;
6136+ case NVME_LOG_LID_DISCOVER :
6137+ break ;
6138+ case NVME_LOG_LID_HOST_DISCOVER :
6139+ break ;
6140+ case NVME_LOG_LID_AVE_DISCOVER :
6141+ break ;
6142+ case NVME_LOG_LID_PULL_MODEL_DDC_REQ :
6143+ break ;
6144+ case NVME_LOG_LID_RESERVATION :
6145+ break ;
6146+ case NVME_LOG_LID_SANITIZE :
6147+ break ;
6148+ case NVME_LOG_LID_ZNS_CHANGED_ZONES :
6149+ break ;
6150+ default :
6151+ break ;
6152+ }
6153+ }
6154+
60516155static struct print_ops stdout_print_ops = {
60526156 /* libnvme types.h print functions */
60536157 .ana_log = stdout_ana_log ,
@@ -6124,6 +6228,7 @@ static struct print_ops stdout_print_ops = {
61246228 .host_discovery_log = stdout_host_discovery_log ,
61256229 .ave_discovery_log = stdout_ave_discovery_log ,
61266230 .pull_model_ddc_req_log = stdout_pull_model_ddc_req_log ,
6231+ .log = stdout_log ,
61276232
61286233 /* libnvme tree print functions */
61296234 .list_item = stdout_list_item ,
0 commit comments