Lines Matching +full:te +full:- +full:source

1 // SPDX-License-Identifier: GPL-2.0
56 __string(host, dev_name(dev->parent))
64 __entry->status = status;
65 __entry->first_error = fe;
70 memcpy(__entry->header_log, hl, CXL_HEADERLOG_SIZE);
74 show_uc_errs(__entry->status),
75 show_uc_errs(__entry->first_error)
83 __string(memdev, dev_name(&cxlmd->dev))
84 __string(host, dev_name(cxlmd->dev.parent))
93 __entry->serial = cxlmd->cxlds->serial;
94 __entry->status = status;
95 __entry->first_error = fe;
100 memcpy(__entry->header_log, hl, CXL_HEADERLOG_SIZE);
103 __get_str(memdev), __get_str(host), __entry->serial,
104 show_uc_errs(__entry->status),
105 show_uc_errs(__entry->first_error)
132 __string(host, dev_name(dev->parent))
138 __entry->status = status;
142 show_ce_errs(__entry->status)
150 __string(memdev, dev_name(&cxlmd->dev))
151 __string(host, dev_name(cxlmd->dev.parent))
158 __entry->serial = cxlmd->cxlds->serial;
159 __entry->status = status;
162 __get_str(memdev), __get_str(host), __entry->serial,
163 show_ce_errs(__entry->status)
182 __string(memdev, dev_name(&cxlmd->dev))
183 __string(host, dev_name(cxlmd->dev.parent))
194 __entry->serial = cxlmd->cxlds->serial;
195 __entry->log = log;
196 __entry->count = le16_to_cpu(payload->overflow_err_count);
197 __entry->first_ts = le64_to_cpu(payload->first_overflow_timestamp);
198 __entry->last_ts = le64_to_cpu(payload->last_overflow_timestamp);
202 __get_str(memdev), __get_str(host), __entry->serial,
203 cxl_event_log_type_str(__entry->log), __entry->count,
204 __entry->first_ts, __entry->last_ts)
210 * CXL 3.0 section 8.2.9.2.1; Table 8-42
239 __string(memdev, dev_name(&cxlmd->dev)) \
240 __string(host, dev_name(cxlmd->dev.parent)) \
255 __entry->log = (l); \
256 __entry->serial = (cxlmd)->cxlds->serial; \
257 __entry->hdr_length = (hdr).length; \
258 __entry->hdr_flags = get_unaligned_le24((hdr).flags); \
259 __entry->hdr_handle = le16_to_cpu((hdr).handle); \
260 __entry->hdr_related_handle = le16_to_cpu((hdr).related_handle); \
261 __entry->hdr_timestamp = le64_to_cpu((hdr).timestamp); \
262 __entry->hdr_maint_op_class = (hdr).maint_op_class; \
263 __entry->hdr_maint_op_sub_class = (hdr).maint_op_sub_class
269 __get_str(memdev), __get_str(host), __entry->serial, \
270 cxl_event_log_type_str(__entry->log), \
271 __entry->hdr_timestamp, &__entry->hdr_uuid, __entry->hdr_length,\
272 show_hdr_flags(__entry->hdr_flags), __entry->hdr_handle, \
273 __entry->hdr_related_handle, __entry->hdr_maint_op_class, \
274 __entry->hdr_maint_op_sub_class, \
290 CXL_EVT_TP_fast_assign(cxlmd, log, gen_rec->hdr);
291 memcpy(&__entry->hdr_uuid, uuid, sizeof(uuid_t));
292 memcpy(__entry->data, gen_rec->data, CXL_EVENT_RECORD_DATA_LENGTH);
296 __print_hex(__entry->data, CXL_EVENT_RECORD_DATA_LENGTH))
303 * CXL rev 3.0 Section 8.2.9.2.1.1; Table 8-43
306 * CXL rev 3.0 section 8.2.9.2.1.2; Table 8-44
320 * CXL 3.1 section 8.2.9.2.1; Table 8-44
341 * General Media Event Record - GMER
342 * CXL rev 3.1 Section 8.2.9.2.1.1; Table 8-45
364 { CXL_GMER_MEM_EVT_TYPE_TE_STATE_VIOLATION, "TE State Violation" }, \
467 __string(region_name, cxlr ? dev_name(&cxlr->dev) : "")
471 CXL_EVT_TP_fast_assign(cxlmd, log, rec->media_hdr.hdr);
472 __entry->hdr_uuid = CXL_EVENT_GEN_MEDIA_UUID;
475 __entry->dpa = le64_to_cpu(rec->media_hdr.phys_addr);
476 __entry->dpa_flags = __entry->dpa & CXL_DPA_FLAGS_MASK;
478 __entry->dpa &= CXL_DPA_MASK;
479 __entry->descriptor = rec->media_hdr.descriptor;
480 __entry->type = rec->media_hdr.type;
481 __entry->sub_type = rec->sub_type;
482 __entry->transaction_type = rec->media_hdr.transaction_type;
483 __entry->channel = rec->media_hdr.channel;
484 __entry->rank = rec->media_hdr.rank;
485 __entry->device = get_unaligned_le24(rec->device);
486 memcpy(__entry->comp_id, &rec->component_id,
488 __entry->validity_flags = get_unaligned_le16(&rec->media_hdr.validity_flags);
489 __entry->hpa = hpa;
490 __entry->hpa_alias0 = hpa_alias0;
493 uuid_copy(&__entry->region_uuid, &cxlr->params.uuid);
496 uuid_copy(&__entry->region_uuid, &uuid_null);
498 __entry->cme_threshold_ev_flags = rec->cme_threshold_ev_flags;
499 __entry->cme_count = get_unaligned_le24(rec->cme_count);
510 __entry->dpa, show_dpa_flags(__entry->dpa_flags),
511 show_event_desc_flags(__entry->descriptor),
512 show_gmer_mem_event_type(__entry->type),
513 show_mem_event_sub_type(__entry->sub_type),
514 show_trans_type(__entry->transaction_type),
515 __entry->channel, __entry->rank, __entry->device,
516 show_valid_flags(__entry->validity_flags),
517 __print_hex(__entry->comp_id, CXL_EVENT_GEN_MED_COMP_ID_SIZE),
518 show_comp_id_pldm_flags(__entry->comp_id[0]),
519 show_pldm_entity_id(__entry->validity_flags, CXL_GMER_VALID_COMPONENT,
520 CXL_GMER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id),
521 show_pldm_resource_id(__entry->validity_flags, CXL_GMER_VALID_COMPONENT,
522 CXL_GMER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id),
523 __entry->hpa, __entry->hpa_alias0, __get_str(region_name), &__entry->region_uuid,
524 show_cme_threshold_ev_flags(__entry->cme_threshold_ev_flags), __entry->cme_count
529 * DRAM Event Record - DER
531 * CXL rev 3.1 section 8.2.9.2.1.2; Table 8-46
549 { CXL_DER_MEM_EVT_TYPE_TE_STATE_VIOLATION, "TE State Violation" }, \
613 __string(region_name, cxlr ? dev_name(&cxlr->dev) : "")
617 CXL_EVT_TP_fast_assign(cxlmd, log, rec->media_hdr.hdr);
618 __entry->hdr_uuid = CXL_EVENT_DRAM_UUID;
621 __entry->dpa = le64_to_cpu(rec->media_hdr.phys_addr);
622 __entry->dpa_flags = __entry->dpa & CXL_DPA_FLAGS_MASK;
623 __entry->dpa &= CXL_DPA_MASK;
624 __entry->descriptor = rec->media_hdr.descriptor;
625 __entry->type = rec->media_hdr.type;
626 __entry->sub_type = rec->sub_type;
627 __entry->transaction_type = rec->media_hdr.transaction_type;
628 __entry->validity_flags = get_unaligned_le16(rec->media_hdr.validity_flags);
629 __entry->channel = rec->media_hdr.channel;
630 __entry->rank = rec->media_hdr.rank;
631 __entry->nibble_mask = get_unaligned_le24(rec->nibble_mask);
632 __entry->bank_group = rec->bank_group;
633 __entry->bank = rec->bank;
634 __entry->row = get_unaligned_le24(rec->row);
635 __entry->column = get_unaligned_le16(rec->column);
636 memcpy(__entry->cor_mask, &rec->correction_mask,
638 __entry->hpa = hpa;
639 __entry->hpa_alias0 = hpa_alias0;
642 uuid_copy(&__entry->region_uuid, &cxlr->params.uuid);
645 uuid_copy(&__entry->region_uuid, &uuid_null);
647 memcpy(__entry->comp_id, &rec->component_id,
649 __entry->sub_channel = rec->sub_channel;
650 __entry->cme_threshold_ev_flags = rec->cme_threshold_ev_flags;
651 __entry->cvme_count = get_unaligned_le24(rec->cvme_count);
662 __entry->dpa, show_dpa_flags(__entry->dpa_flags),
663 show_event_desc_flags(__entry->descriptor),
664 show_dram_mem_event_type(__entry->type),
665 show_mem_event_sub_type(__entry->sub_type),
666 show_trans_type(__entry->transaction_type),
667 __entry->channel, __entry->rank, __entry->nibble_mask,
668 __entry->bank_group, __entry->bank,
669 __entry->row, __entry->column,
670 __print_hex(__entry->cor_mask, CXL_EVENT_DER_CORRECTION_MASK_SIZE),
671 show_dram_valid_flags(__entry->validity_flags),
672 __print_hex(__entry->comp_id, CXL_EVENT_GEN_MED_COMP_ID_SIZE),
673 show_comp_id_pldm_flags(__entry->comp_id[0]),
674 show_pldm_entity_id(__entry->validity_flags, CXL_DER_VALID_COMPONENT,
675 CXL_DER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id),
676 show_pldm_resource_id(__entry->validity_flags, CXL_DER_VALID_COMPONENT,
677 CXL_DER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id),
678 __entry->hpa, __entry->hpa_alias0, __get_str(region_name), &__entry->region_uuid,
679 __entry->sub_channel, show_cme_threshold_ev_flags(__entry->cme_threshold_ev_flags),
680 __entry->cvme_count
685 * Memory Module Event Record - MMER
687 * CXL res 3.1 section 8.2.9.2.1.3; Table 8-47
711 * Device Health Information - DHI
713 * CXL res 3.1 section 8.2.9.9.3.1; Table 8-133
825 CXL_EVT_TP_fast_assign(cxlmd, log, rec->hdr);
826 __entry->hdr_uuid = CXL_EVENT_MEM_MODULE_UUID;
829 __entry->event_type = rec->event_type;
830 __entry->event_sub_type = rec->event_sub_type;
833 __entry->health_status = rec->info.health_status;
834 __entry->media_status = rec->info.media_status;
835 __entry->life_used = rec->info.life_used;
836 __entry->dirty_shutdown_cnt = get_unaligned_le32(rec->info.dirty_shutdown_cnt);
837 __entry->cor_vol_err_cnt = get_unaligned_le32(rec->info.cor_vol_err_cnt);
838 __entry->cor_per_err_cnt = get_unaligned_le32(rec->info.cor_per_err_cnt);
839 __entry->device_temp = get_unaligned_le16(rec->info.device_temp);
840 __entry->add_status = rec->info.add_status;
841 __entry->validity_flags = get_unaligned_le16(rec->validity_flags);
842 memcpy(__entry->comp_id, &rec->component_id,
853 show_dev_evt_type(__entry->event_type),
854 show_dev_event_sub_type(__entry->event_sub_type),
855 show_health_status_flags(__entry->health_status),
856 show_media_status(__entry->media_status),
857 show_two_bit_status(CXL_DHI_AS_LIFE_USED(__entry->add_status)),
858 show_two_bit_status(CXL_DHI_AS_DEV_TEMP(__entry->add_status)),
859 show_one_bit_status(CXL_DHI_AS_COR_VOL_ERR_CNT(__entry->add_status)),
860 show_one_bit_status(CXL_DHI_AS_COR_PER_ERR_CNT(__entry->add_status)),
861 __entry->life_used, __entry->device_temp,
862 __entry->dirty_shutdown_cnt, __entry->cor_vol_err_cnt,
863 __entry->cor_per_err_cnt,
864 show_mem_module_valid_flags(__entry->validity_flags),
865 __print_hex(__entry->comp_id, CXL_EVENT_GEN_MED_COMP_ID_SIZE),
866 show_comp_id_pldm_flags(__entry->comp_id[0]),
867 show_pldm_entity_id(__entry->validity_flags, CXL_MMER_VALID_COMPONENT,
868 CXL_MMER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id),
869 show_pldm_resource_id(__entry->validity_flags, CXL_MMER_VALID_COMPONENT,
870 CXL_MMER_VALID_COMPONENT_ID_FORMAT, __entry->comp_id)
880 #define __show_poison_source(source) \ argument
881 __print_symbolic(source, \
888 #define show_poison_source(source) \ argument
889 (((source > CXL_POISON_SOURCE_INJECTED) && \
890 (source != CXL_POISON_SOURCE_VENDOR)) ? "Reserved" \
891 : __show_poison_source(source))
900 (le64_to_cpu(record->address))
906 (le32_to_cpu(record->length) * CXL_POISON_LEN_MULT)
919 __string(memdev, dev_name(&cxlmd->dev))
920 __string(host, dev_name(cxlmd->dev.parent))
923 __string(region, cxlr ? dev_name(&cxlr->dev) : "")
930 __field(u8, source)
937 __entry->serial = cxlmd->cxlds->serial;
938 __entry->overflow_ts = cxl_poison_overflow(flags, overflow_ts);
939 __entry->dpa = cxl_poison_record_dpa(record);
940 __entry->dpa_length = cxl_poison_record_dpa_length(record);
941 __entry->source = cxl_poison_record_source(record);
942 __entry->trace_type = trace_type;
943 __entry->flags = flags;
946 memcpy(__entry->uuid, &cxlr->params.uuid, 16);
947 __entry->hpa = cxl_dpa_to_hpa(cxlr, cxlmd,
948 __entry->dpa);
949 if (__entry->hpa != ULLONG_MAX && cxlr->params.cache_size)
950 __entry->hpa_alias0 = __entry->hpa +
951 cxlr->params.cache_size;
953 __entry->hpa_alias0 = ULLONG_MAX;
956 memset(__entry->uuid, 0, 16);
957 __entry->hpa = ULLONG_MAX;
958 __entry->hpa_alias0 = ULLONG_MAX;
964 "dpa_length=0x%x source=%s flags=%s overflow_time=%llu",
967 __entry->serial,
968 show_poison_trace_type(__entry->trace_type),
970 __entry->uuid,
971 __entry->hpa,
972 __entry->hpa_alias0,
973 __entry->dpa,
974 __entry->dpa_length,
975 show_poison_source(__entry->source),
976 show_poison_flags(__entry->flags),
977 __entry->overflow_ts