On Tue, Sep 08, 2015 at 02:29:21PM -0700, Jonathan (Zhixiong) Zhang wrote:
/*
- Raw Events Report
- This event is generated when hardware detected a hardware
- error event, which may be of non-standard section as defined
- in UEFI spec appendix "Common Platform Error Record", or may
- be of sections for which TRACE_EVENT is not defined.
- */
+TRACE_EVENT(raw_event,
- TP_PROTO(const uuid_le *sec_type,
const uuid_le *fru_id,
const char *fru_text,
u8 sev,
const u8 *err,
const u32 len),
This is not a raw event - this is an event which has a section type, FRU ID, text, etc, etc.
A raw event is one which takes exactly two arguments: bytes and count. What it does is, it dumps the bytes of length count in a block or other amicably formatted output, most likely hex, similar to hexdump or other tools; *without* any attempt to interpret it whatsoever.
Its *consumers* do the interpretation. So that that raw_event tracepoint can be used as a fallback in all cases where the error information is of unknown structure to the kernel.
Btw, @count should be sanity-checked before calling the tracepoint with insane values.