On Fri, Oct 23, 2026 at 10:04:28AM +0530, Badal Nilawar wrote:Add the xe_error_cper tracepoint and emit each assembled CPER record through it. Besides the raw record, the event carries the device name, platform ID, FRU ID, severity and the Intel error section header, so tools can pick up the records from the trace buffer....+ * Example trace output:: + * + * xe_error_cper: dev=0000:03:00.0 severity=2 + * platform_id=9046afe5-9041-5124-8614-92550d9e9da6 + * fru_id=91befe38-2f61-3d7b-0000-000000000000 + * intel_err_hdr_raw='intel_hdr_raw'
The specs uses intel_err_hdr_raw in the example trace output, so I kept the same naming here for consistency.
Thanks,
Badal
+ * 01 02 00 18 00 00 00 01 00 00 00 00 64 77 51 14 ... + * cper_len=1772 + * cper_raw= + * 43 50 45 52 00 01 ff ff ff ff 01 00 02 00 00 00 ......+ TP_printk("dev=%s severity=%d platform_id=%pUl fru_id=%pUl intel_err_hdr_raw=%s cper_len=%u cper_raw=%s",Ditto. Raag+ __get_str(dev), __entry->sev, + __entry->platform_id, __entry->fru_id, + __print_hex(__entry->ihdr_raw, + sizeof(struct xe_cper_intel_hdr)), + __entry->cper_len, + __print_hex(__get_dynamic_array(cper), + __entry->cper_len))