From: Ira Weiny <ira.weiny@xxxxxxxxx> This code has been tested with a newer qemu which allows for more events to be returned at a time as well an additional QMP event and interrupt injection. Those patches will follow once they have been cleaned up. The series is now in 3 parts: 1) Base functionality including interrupts 2) Tracing specific events (Dynamic Capacity Event Record is defered) 3) cxl-test infrastructure for basic tests Changes from V2 Rebased on pending 6.3 changes CXL security patches from Dave J. Moving tracing to cxl core from Dan Feed back from Dan, Steven, Jonathan, and Dave. The series looks very different now with a lot of the patches squashed per Dan's feedback. - Link to v2: https://lore.kernel.org/r/20221201002719.2596558-1-ira.weiny@xxxxxxxxx Changes from V1 Address comments, from Jonathan, Dave, and Alison Main comment was to allow for a full payload size number of event records to be processed on each Get event cyle. Pick up tags Changes from RFC v2 Integrated Davidlohr's irq patch, allocate up to 16 vectors, and base my irq support on modifications to that patch. Smita Check event status before reading each log. Jonathan Process more than 1 record at a time Remove reserved fields Steven Prefix trace points with 'cxl_' Davidlohr PUll in his patch Changes from RFC v1 Add event irqs General simplification of the code. Resolve field alignment questions Update to rev 3.0 for comments and structures Add reserved fields and output them Davidlohr Bueso (1): cxl/mem: Wire up event interrupts Ira Weiny (7): cxl/mem: Read, trace, and clear events on driver load cxl/mem: Trace General Media Event Record cxl/mem: Trace DRAM Event Record cxl/mem: Trace Memory Module Event Record cxl/test: Add generic mock events cxl/test: Add specific events cxl/test: Simulate event log overflow drivers/acpi/pci_root.c | 3 + drivers/cxl/core/mbox.c | 233 ++++++++++++++++ drivers/cxl/core/trace.h | 479 ++++++++++++++++++++++++++++++++ drivers/cxl/cxl.h | 12 + drivers/cxl/cxlmem.h | 180 ++++++++++++ drivers/cxl/cxlpci.h | 6 + drivers/cxl/pci.c | 130 +++++++++ include/linux/pci.h | 1 + tools/testing/cxl/test/Kbuild | 4 +- tools/testing/cxl/test/events.c | 314 +++++++++++++++++++++ tools/testing/cxl/test/events.h | 34 +++ tools/testing/cxl/test/mem.c | 33 ++- tools/testing/cxl/test/mock.h | 12 + 13 files changed, 1429 insertions(+), 12 deletions(-) create mode 100644 tools/testing/cxl/test/events.c create mode 100644 tools/testing/cxl/test/events.h base-commit: acb704099642bc822ef2aed223a0b8db1f7ea76e -- 2.37.2