On Fri, Nov 26, 2021 at 10:20:22AM +0000, Jonathan Cameron wrote:
[...]
Pulled the patches, I now have a tree that compiles. I don't need QEmu patches for now - I have an alternative set-up, I will keep you posted, thanks a lot for your massive help.
There is a known interrupt race issue on the DOE that might bite you with real hardware if you see BUSY getting set and cleared before READY also set. It'll cause a bonus interrupt and the handling is wrong. Discussion was in latest set of DOE patches along with suggested fix.
Using your kernel SPDM code for testing, found a tiny bug, so far so good, very useful.
Side note: the virt CPU HP changes made it into ACPI 6.5, we should work on the upstream. IORT changes are also in the works, I will keep you all posted.
Good stuff. We'll look at forward porting the original patch series as a starting point for vcpu work.
I would like to ask two things:
- IORT: with new spec published, I believe Shameer should be able to bring the RMR work to completion. We can have a quick chat about this. - Virt CPU hotplug: we should split the work - ie who is preparing and posting kernel patches ?
Please let me know if we can sync this month.
Thanks, Lorenzo
Jonathan
Lorenzo
Thanks,
Jonathan
Ira Weiny (1): cxl/cdat: Parse out DSMAS data from CDAT table
Jonathan Cameron (9): PCI: Add vendor ID for the PCI SIG PCI/DOE: Add Data Object Exchange Aux Driver cxl/pci: Add DOE Auxiliary Devices cxl/mem: Add CDAT table reading from DOE lib/asn1_encoder: Add a function to encode many byte integer values. spdm: Introduce a library for DMTF SPDM PCI/CMA: Initial support for Component Measurement and Authentication ECN cxl/pci: Add really basic CMA authentication support. cxl: Fixes for wrong device in devm_ calls.
drivers/cxl/Kconfig | 2 + drivers/cxl/cdat.h | 81 +++ drivers/cxl/core/memdev.c | 157 +++++ drivers/cxl/cxl.h | 10 + drivers/cxl/cxlmem.h | 50 ++ drivers/cxl/pci.c | 231 ++++++- drivers/pci/Kconfig | 19 + drivers/pci/Makefile | 5 + drivers/pci/cma.c | 105 +++ drivers/pci/doe.c | 701 +++++++++++++++++++ include/linux/asn1_encoder.h | 3 + include/linux/pci-cma.h | 19 + include/linux/pci-doe.h | 63 ++ include/linux/pci_ids.h | 1 + include/linux/spdm.h | 104 +++ include/uapi/linux/pci_regs.h | 29 +- lib/Kconfig | 3 + lib/Makefile | 2 + lib/asn1_encoder.c | 54 ++ lib/spdm.c | 1196 +++++++++++++++++++++++++++++++++ 20 files changed, 2833 insertions(+), 2 deletions(-) create mode 100644 drivers/cxl/cdat.h create mode 100644 drivers/pci/cma.c create mode 100644 drivers/pci/doe.c create mode 100644 include/linux/pci-cma.h create mode 100644 include/linux/pci-doe.h create mode 100644 include/linux/spdm.h create mode 100644 lib/spdm.c