[GIT PULL] Compute Express Link (CXL) for 6.4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Hi Linus, please pull from:

  git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl tags/cxl-for-6.4

...to receive the CXL update for this cycle. This has appeared in -next
for the past week or so with only a minor conflict report with the PCI
tree for changes to '.clang-format'. DOE support is promoted from
drivers/cxl/ to drivers/pci/ with Bjorn's blessing, and the CXL core
continues to mature its media management capabilities with support for
listing and injecting media errors. Some late fixes that missed
v6.3-final are also included.


The following changes since commit 09a9639e56c01c7a00d6c0ca63f4c7c41abe075d:

  Linux 6.3-rc6 (2023-04-09 11:15:57 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl tags/cxl-for-6.4

for you to fetch changes up to fd35fdcbf75b5f31dba6c284886b676bb2145fe6:

  cxl/test: Add mock test for set_timestamp (2023-04-24 11:31:02 -0700)

cxl for v6.4

- Refactor the DOE infrastructure (Data Object Exchange PCI-config-cycle
  mailbox) to be a facility of the PCI core rather than the CXL core.
  This is foundational for upcoming support for PCI device-attestation and
  PCIe / CXL link encryption.

- Add support for retrieving and injecting poison for CXL memory
  expanders. This enabling uses trace-events to convey CXL media error
  records to user tooling. It includes translation of device-local
  addresses (DPA) to system physical addresses (SPA) and their
  corresponding CXL region.

- Fixes for decoder enumeration that missed v6.3-final

- Miscellaneous fixups

Alison Schofield (18):
      cxl/mbox: Restrict poison cmds to debugfs cxl_raw_allow_all
      cxl/mbox: Initialize the poison state
      cxl/mbox: Add GET_POISON_LIST mailbox command
      cxl/trace: Add TRACE support for CXL media-error records
      cxl/memdev: Add trigger_poison_list sysfs attribute
      cxl/region: Provide region info to the cxl_poison trace event
      cxl/trace: Add an HPA to cxl_poison trace events
      tools/testing/cxl: Mock support for Get Poison List
      cxl/memdev: Add support for the Inject Poison mailbox command
      cxl/memdev: Add support for the Clear Poison mailbox command
      cxl/memdev: Warn of poison inject or clear to a mapped region
      cxl/memdev: Trace inject and clear poison as cxl_poison events
      cxl/mem: Add debugfs attributes for poison inject and clear
      tools/testing/cxl: Mock the Inject Poison mailbox command
      tools/testing/cxl: Mock the Clear Poison mailbox command
      tools/testing/cxl: Use injected poison for get poison list
      tools/testing/cxl: Add a sysfs attr to test poison inject limits
      tools/testing/cxl: Require CONFIG_DEBUG_FS

Dan Williams (9):
      cxl/hdm: Fail upon detecting 0-sized decoders
      cxl/hdm: Use 4-byte reads to retrieve HDM decoder base+limit
      cxl/core: Drop unused io-64-nonatomic-lo-hi.h
      cxl/port: Scan single-target ports for decoders
      cxl/hdm: Add more HDM decoder debug messages at startup
      cxl/port: Fix port to pci device assumptions in read_cdat_data()
      cxl/mbox: Deprecate poison commands
      Merge branch 'for-6.4/cxl-poison' into for-6.4/cxl
      Merge branch 'for-6.3/cxl-autodetect-fixes' into for-6.4/cxl

Dave Jiang (1):
      cxl/pci: Simplify CDAT retrieval error path

Davidlohr Bueso (2):
      cxl/mbox: Update CMD_RC_TABLE
      cxl/test: Add mock test for set_timestamp

Lukas Wunner (10):
      PCI/DOE: Provide synchronous API and use it internally
      cxl/pci: Use synchronous API for DOE
      PCI/DOE: Make asynchronous API private
      PCI/DOE: Deduplicate mailbox flushing
      PCI/DOE: Allow mailbox creation without devres management
      PCI/DOE: Create mailboxes on device enumeration
      cxl/pci: Use CDAT DOE mailbox created by PCI core
      PCI/DOE: Make mailbox creation API private
      PCI/DOE: Relax restrictions on request and response size
      cxl/pci: Rightsize CDAT response allocation

 .clang-format                           |   1 -
 Documentation/ABI/testing/debugfs-cxl   |  35 ++++
 Documentation/ABI/testing/sysfs-bus-cxl |  14 ++
 drivers/cxl/core/core.h                 |  11 ++
 drivers/cxl/core/hdm.c                  |  52 +++--
 drivers/cxl/core/mbox.c                 | 151 ++++++++++++++-
 drivers/cxl/core/memdev.c               | 227 ++++++++++++++++++++++
 drivers/cxl/core/pci.c                  | 137 +++++--------
 drivers/cxl/core/port.c                 |   1 -
 drivers/cxl/core/region.c               | 124 ++++++++++++
 drivers/cxl/core/trace.c                |  94 +++++++++
 drivers/cxl/core/trace.h                | 103 ++++++++++
 drivers/cxl/cxlmem.h                    | 111 ++++++++++-
 drivers/cxl/mem.c                       |  71 +++++++
 drivers/cxl/pci.c                       |  53 +-----
 drivers/cxl/port.c                      |  18 +-
 drivers/pci/doe.c                       | 328 ++++++++++++++++++++++++--------
 drivers/pci/pci.h                       |  11 ++
 drivers/pci/probe.c                     |   1 +
 drivers/pci/remove.c                    |   1 +
 include/linux/pci-doe.h                 |  66 +------
 include/linux/pci.h                     |   3 +
 include/uapi/linux/cxl_mem.h            |  35 +++-
 tools/testing/cxl/config_check.c        |   1 +
 tools/testing/cxl/test/mem.c            | 247 ++++++++++++++++++++++++
 25 files changed, 1583 insertions(+), 313 deletions(-)
 create mode 100644 Documentation/ABI/testing/debugfs-cxl

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux