[PATCH v4 00/17] Collection of DOE material

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

 



Collection of DOE material, v4:

Migrate to synchronous API, create mailboxes in PCI core instead of
in drivers, relax restrictions on request/response size.

This should probably go in via the cxl tree because Dave Jiang is
basing his cxl work for the next merge window on it.

The first 6 patches are fixes, so could be applied immediately.

Thanks!


Changes v3 -> v4:

* [PATCH v4 01/17] cxl/pci: Fix CDAT retrieval on big endian
  * In pci_doe_discovery(), add request_pl_le / response_pl_le variables
    to avoid typecasts in pci_doe_task initializer (Jonathan)
  * In cxl_cdat_read_table(), use __le32 instead of u32 for "*data"
    variable (Jonathan)
  * Use sizeof(__le32) instead of sizeof(u32) (Jonathan)

* [PATCH v4 03/17] cxl/pci: Handle truncated CDAT entries
  * Check for sizeof(*entry) instead of sizeof(struct cdat_entry_header)
    for clarity (Jonathan)

* [PATCH v4 12/17] PCI/DOE: Create mailboxes on device enumeration
  * Amend commit message with additional justification for the commit
    (Alexey)

* [PATCH v4 16/17] cxl/pci: cxl/pci: Simplify CDAT retrieval error path
  * Newly added patch in v4 on popular request (Jonathan, Dave)

* [PATCH v4 17/17] cxl/pci: Rightsize CDAT response allocation
  * Amend commit message with spec reference to the Table Access
    Response Header (Ira)
  * In cxl_cdat_get_length(), check for sizeof(response) instead of
    2 * sizeof(u32) for clarity

Link to v3:

https://lore.kernel.org/linux-pci/cover.1676043318.git.lukas@xxxxxxxxx/


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

Lukas Wunner (16):
  cxl/pci: Fix CDAT retrieval on big endian
  cxl/pci: Handle truncated CDAT header
  cxl/pci: Handle truncated CDAT entries
  cxl/pci: Handle excessive CDAT length
  PCI/DOE: Silence WARN splat with CONFIG_DEBUG_OBJECTS=y
  PCI/DOE: Fix memory leak with CONFIG_DEBUG_OBJECTS=y
  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 -
 drivers/cxl/core/pci.c  | 140 +++++++---------
 drivers/cxl/cxlmem.h    |   3 -
 drivers/cxl/cxlpci.h    |  14 ++
 drivers/cxl/pci.c       |  49 ------
 drivers/pci/doe.c       | 342 ++++++++++++++++++++++++++++++----------
 drivers/pci/pci.h       |  11 ++
 drivers/pci/probe.c     |   1 +
 drivers/pci/remove.c    |   1 +
 include/linux/pci-doe.h |  62 +-------
 include/linux/pci.h     |   3 +
 11 files changed, 350 insertions(+), 277 deletions(-)

-- 
2.39.1




[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